触发不触发

2020-08-24 02:05发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我在不同的表上做了很多更新后触发...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我在不同的表上做了很多更新后触发器,这些触发器将通过执行存储过程将表的PK写入日志表。 触发器可以在一张桌子以外的所有桌子上正常工作。 该表没有关闭触发器。

经过一些测试,我发现如果我仅与Data Architect中的表建立字典连接,则表触发器可以正常工作,但是,如果在打开Data Architect之前打开应用程序,则触发器将失败。

我在整个代码中搜索sp_DisableTriggers,但没有一个。 我做了一些测试,发现如果我先在Data Architect中打开表,然后将Data Architect打开,然后再打开我的应用程序,则触发器可以正常工作。 因此,我们的应用程序对表进行了某些操作,导致触发器中断。 这是一家多程序员商店,我不是制作此表的原始程序员,但我仔细检查了代码,并使用数据字典连接而不是自由表来打开它。

我尽全力做到这一点,您所能提供的任何帮助将不胜感激。

谢谢

吉姆·弗拉格

3条回答
浮生未央
2020-08-24 02:34

仅供参考,

我们正在使用v12。 经过一些测试和反复试验后,我发现了问题所在。 在"远程连接"上,您打开了一个空闲表(没有添加字典连接),并使其在服务器上打开了该表的触发器,并退出了对该表的所有后续连接,直到该空闲连接关闭为止。 在我们的应用程序中,我们正在为某些表打开一个免费连接,以处理专门的删除操作,这些操作不会在要删除的表上启动任何触发器/功能/过程。 我更正了代码,以确保它使用字典连接,但是我们可能在不同的地方吞吐了使用不带连接的简单TAdsTable的代码。 我们发现,如果最初打开与所有具有触发器的表的字典连接,并使连接保持打开状态,则可以解决自由连接不允许触发器触发的问题。 即使有人在其他地方打开了表的免费连接,如果触发器触发了,那也很好。

谢谢

Jim Flagg

一周热门 更多>