触发器程序写成功,特此发贴(副源吗)
发表于:2007-05-26来源:作者:点击数:
标签:
经过各位大哥的指导,触发器程序总算完成,谢谢! 触发器程序:MPPF10 MPPF10是要监控的表 PENGLEI是把数据取出来后放的表 ADDPFTRGFILE(JJDTAL1/MPPF10)TRGTIME(*BEFORE)TRGEVENT(*INSERT)PGM(PAYPG MLIB/MPPF10) *---------------------------------------
经过各位大哥的指导,触发器程序总算完成,谢谢!
触发器程序:MPPF10
MPPF10是要监控的表
PENGLEI 是把数据取出来后放的表
ADDPFTRG FILE(JJDTAL1/MPPF10) TRGTIME(*BEFORE) TRGEVENT(*INSERT) PGM(PAYPG
MLIB/MPPF10)
*------------------------------------------------------
FMPPF10 IF E K DISK
F* INFSR(@FERF00)
F* 参数表
FPENGLEI UF A E K DISK
F
F
*------------------------------------------------------
D Buffer DS 32767
D FileName 1 10
D LibraryName 11 20
D MemberName 21 30
D TrgEvent 31 31
D TrgTime 32 32
D CommitLckLvl 33 33
D Filler1 34 36
D
CCSID 37 40B 0
D Filler2 41 48
D OldOff 49 52B 0
D OldLen 53 56B 0
D OldNullOffset 57 60B 0
D OldNullLength 61 64B 0
D NewOff 65 68B 0
D NewLen 69 72B 0
D NewNullOffset 73 76B 0
D Resv3 81 96
D other *
DExtDs E Ds ExtName(MPPF10)
D Leng DS
D Len 1 4B 0
DT S T
C
*----------------------------------------------------------------
C *entry Plist
C Buffer Parm Buffer
C LENG Parm LENG
C* 判断
C Eval ExtDs = %subst(Buffer:Newoff+1:NewLen)
C* 得到新加的记录值
C
C Eval MP10PYAMTA=MP10PYAMT
C Eval MP10PRACCA=MP10PRACC
C Eval MP10PRNAMA=MP10PRNAM
C Eval MP10PEACCA=MP10PEACC
C Eval MP10PENAMA=MP10PENAM
*
C WRITE PL
C
C EXSR @EXIT
C*------------------------------------------------------------------*
* @EXIT 退出程序 *
C*------------------------------------------------------------------*
C @EXIT BEGSR
C SETON
LR
C RETURN
C ENDSR
C
duron_1g 回复于:2005-07-13 09:07:23
|
这里特此感谢Eagle_wolf 大哥在我写程序的时候给我提供了很大的帮助,衷心感谢
|
qingzhou 回复于:2005-07-13 09:44:49
|
AS/400版区相对来说还是比较和谐的版区,大家都比较热心,踊跃发言,互相探讨。既帮助了别人,又提高了自己。
感谢楼主的无私、同时也感谢Eagle_wolf的热心。能看到一些问题通过大家的交流得到解决,虽没有全部都能解决,但我们还是由衷得感到高兴。
请楼主把:
[code:1:6a2dcb211f]MPPF10是要监控的表
PENGLEI 是把数据取出来后放的表[/code:1:6a2dcb211f]
PF结构补充完整,便于日后参考。
设为精华鼓励~~~ :em02:
|
duron_1g 回复于:2005-07-13 12:46:15
|
PF:PENGLEI
*************** Beginning of data **********************************
A R PL
A
12P2 A MP10PYAMTA 12P 2 COLHDG(' 付款金额 ')
A
32A A MP10PRACCA 32A COLHDG(' 付款人帐号 ')
A
60O A MP10PRNAMA 62O COLHDG(' 付款人名称 ')
A
32A A MP10PEACCA 32A COLHDG(' 收款人帐号 ')
A
60O A MP10PENAMA 62O COLHDG(' 收款人名称 ')
A
A
A K MP10PRACCA
A K MP10PEACCA
PF:MPPF10
*************** Beginning of data **********************************
A R MPR10
A
12P2 A MP10PYAMT 12P 2 COLHDG(' 付款金额 ')
A
32A A MP10PRACC 32A COLHDG(' 付款人帐号 ')
A
60O A MP10PRNAM 62O COLHDG(' 付款人名称 ')
A
32A A MP10PEACC 32A COLHDG(' 收款人帐号 ')
A
60O A MP10PENAM 62O COLHDG(' 收款人名称 ')
A
A
A K MP10PRACC
|
ibmas400 回复于:2005-07-13 13:01:24
|
好帖、准备本地测试。
|
fairyboy 回复于:2005-07-14 08:38:59
|
小第比较笨,不知道楼主写这个程序的目的,或是这个程序主要是做什么功能时需要,能帮忙解释一下下不
|
duron_1g 回复于:2005-07-14 11:52:36
|
就是当一个表的数据有变化的时候比如说插入一条纪录,我把里面有用的数据取出来放到另外的一个表里!相当与实时监控吧!
|
fairyboy 回复于:2005-07-14 13:05:37
|
哦,明白了,谢谢了
|
kempzhang 回复于:2005-07-14 15:15:57
|
謝謝lz,up
|
胖老头 回复于:2005-07-15 08:40:24
|
支持一下!
|
majorz 回复于:2005-07-15 08:44:06
|
lz,
謝謝啊
|
sa_hata 回复于:2005-08-23 08:47:59
|
受教,感谢LZ, up......................
|
nhxingliang 回复于:2005-08-23 09:58:06
|
学习中!!!!!!!!
|
原文转自:http://www.ltesting.net
|