ITPUB??ì3
ITPUB论坛 » ERP二次开发 » oracle trigger after insert 如何實現 急啊。


标题: [原创] oracle trigger after insert 如何實現 急啊。
离线 naissan
初级会员



精华贴数 0
个人空间 0
技术积分 54 (26004)
社区积分 0 (1488028)
注册日期 2007-7-30
论坛徽章:0
      
      

发表于 2008-5-8 21:15 
oracle trigger after insert 如何實現 急啊。

現在公司有一個需求在po modul
黨ou A 產生pr之后 在auto create po 時,指定ou B為採購ou
但需要在auto create po之后 產生一個trigger ,改變po_lines_all 這個表中的兩個field ,price 和一個彈性欄位  但是這兩個彈性欄位的值需要用到
新生成的po_headers_all 裏面的幾個值,如何實現

也就是如何在after insert這個表之後再改動這個表裏面的幾個field


只看该作者    顶部
离线 louis_xu
来无踪去留影


来自 深圳
精华贴数 0
个人空间 0
技术积分 1822 (875)
社区积分 316 (1767)
注册日期 2008-1-18
论坛徽章:8
生肖徽章2007版:蛇生肖徽章2007版:蛇生肖徽章2007版:蛇   
      

发表于 2008-5-9 09:49 
可不可以分成两部分做?


__________________
拼命赚钱买彩票!
只看该作者    顶部
离线 liangxichen
中级会员



精华贴数 0
个人空间 0
技术积分 547 (3462)
社区积分 114 (3104)
注册日期 2003-9-29
论坛徽章:3
ITPUB元老授权会员ITPUB新首页上线纪念徽章   
      

发表于 2008-5-20 07:09 
修改一个.pll文件,名称忘记了。之前做过这个东西。


只看该作者    顶部
离线 louis_xu
来无踪去留影


来自 深圳
精华贴数 0
个人空间 0
技术积分 1822 (875)
社区积分 316 (1767)
注册日期 2008-1-18
论坛徽章:8
生肖徽章2007版:蛇生肖徽章2007版:蛇生肖徽章2007版:蛇   
      

发表于 2008-5-20 10:01 
用TRIGGER:POST_INSERT或者POST_DATABASE_COMMIT不行吗?


__________________
拼命赚钱买彩票!
只看该作者    顶部
离线 Harry_shan
跟着ORACLE走


精华贴数 11
个人空间 0
技术积分 20908 (42)
社区积分 8635 (174)
注册日期 2003-2-28
论坛徽章:68
现任管理团队成员2008北京奥运纪念徽章:蹦床2008北京奥运纪念徽章:帆船2008北京奥运纪念徽章:跆拳道2008北京奥运纪念徽章:马术2008北京奥运纪念徽章:击剑
2008北京奥运纪念徽章:沙滩排球2008北京奥运纪念徽章:皮划艇静水2008北京奥运纪念徽章:花样游泳2008北京奥运纪念徽章:举重2008北京奥运纪念徽章:赛艇2008北京奥运纪念徽章:跳水

发表于 2008-5-21 14:12 
写在TABLE的TRIGGER中,可以吗?


__________________
只看该作者    顶部
在线/呼叫 arsenefang
OracleEBS打雜工



来自 上海
精华贴数 1
个人空间 0
技术积分 1479 (1117)
社区积分 3 (19852)
注册日期 2004-6-8
论坛徽章:2
授权会员2008年新春纪念徽章    
      

发表于 2008-5-23 15:14 
印象中,在TABLE Trigger(AFTER INSERT)執行時,不可以自己觸發又修改自己的資料,這樣會有衝突。所以樓主的思路得改個方向,

如果 PO_HEADER_ALL 先被 INSERT 資料,倒是可以在 PO_LINES_ALL DB Trigger(BEFORE INSERT)時,將所需欄位( :NEW.PRICE OR :NEW.ATTRIBUTE1~15)改為PO_HEADER_ALL上的值,來進行新增作業。

簡單說,就是在PO_LINES_ALL INSERT時就改以所需的資料填入。偷龍轉鳳


只看该作者    顶部
离线 sys122
初级会员



精华贴数 0
个人空间 0
技术积分 70 (21440)
社区积分 0 (1143578)
注册日期 2006-10-16
论坛徽章:0
      
      

发表于 2008-6-11 08:54 
调用concurrent program 来实现

提供一种方式:通过在After insert trigger 中调用concurrent program 来实现,可以避免在trigger中直接修改基表而造成的冲突。
具体步骤请参见附件!




sys122 上传了这个附件:
2008-6-11 08:54
  下载次数: 19
After insert trigger.doc (88.5 KB)
 
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问