My FAQ,最新最全的IT技术FAQ
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 未整理篇 | 技术讨论
  当前位置: > 操作系统 > IBM Server
如何解除一个RPG触发器和一个PF的关联??
作者:未知 时间:2005-09-13 15:42 出处:ChinaUnix.net 责编:My FAQ
              摘要:如何解除一个RPG触发器和一个PF的关联??

只知道有ADDPFTRG,不知道该怎么解除呢

 michael9406 回复于:2003-10-29 19:09:13
maybe rmvpftrg  command. you can use  rmv* to display ...

 xuguopeng 回复于:2003-10-29 19:48:12
老大果然厉害,正是RMVPFTRG

 stephenxie2003 回复于:2003-10-30 10:48:25
请问:
这个命令执行之后,将会对PF有什么作用?
因为没有用过这个命令,请教!
 

 xuguopeng 回复于:2003-10-30 10:50:23
当然是解除PF和一个触发器之间的关联了

 stephenxie2003 回复于:2003-10-30 11:05:46
我说的是ADDPFTRG命令!
关联建立之后,将有何作用呢?

 xuguopeng 回复于:2003-10-30 11:12:22
看你的触发器怎么写的了,基本就是监视PF的改动,触发一系列的动作了

 stephenxie2003 回复于:2003-10-30 11:21:51
那么和PF的日志功能差不错?
它们有何区别?

 xuguopeng 回复于:2003-10-30 12:00:00
触发器还可以在PF改动之前或之后,调用别的程序。也可以针对改动了哪一列而做相应的动作

 ppoint 回复于:2003-10-30 13:16:04
加上触发器之后,发现它不会与调用它的作业所在的事物处理控制之下。例如事物处理结果ROLLBACK,但触发器事件却始终成功,不会ROLLBACK。
诸位有什么好办法解决此问题?

 xuguopeng 回复于:2003-10-30 13:57:07
不知道这个是不是你想要的:
Application program           Trigger program                         Behavior
COMMIT=YES                   COMMIT=YES                    The originating change performed by the application and the changes made by the trigger are rolled back together.

COMMIT=YES                   COMMIT=NO                   The change that activated the trigger is rolled back. The changes made by
the trigger are not rolled back.

COMMIT=NO               COMMIT=YES                    After an unhandled exception, the changes made by the trigger are rolled back automatically if the activation group ends. For OPM triggers, an explicit rollback operation should be issued. The originating change is rolled back only in case of a BEFORE trigger.

COMMIT=NO               COMMIT=YES             In the case of an AFTER trigger, all changes are not rolled back. In  the case of a BEFORE trigger, only the originating change is rolled back.

 ppoint 回复于:2003-10-30 14:27:08
可否告知COMMIT参数是在哪个命令设置的呢??本人愚笨没找着。。

 xuguopeng 回复于:2003-10-30 16:22:28
我的理解是这样的,如果应用里面有COMMIT或者ROLLBACK,那触发器默认是和应用共享COMMIT和ROLLBACK的,如果要分别控制的话,
PGM
MONMSG MSGID(CPF0000)
STRCMCTL  CMTSCOPE(*ACTGRP)
ENDPGM
然后在RPG里面用COMMIT就行了

 ppoint 回复于:2003-10-31 13:15:02
好象不行诶 

 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 myfaq.com.cn All rights reserved. www.myfaq.com.cn 版权所有