点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我有一个程序使用SUBMIT语句:
通过选择屏幕和返回提交zprogram。
在zprogram中,有一个对共享存储区(attach_for_write)的写操作,它将从调用程序中读取由zprogram写入的共享存储区(attach_for_read)。
该程序在Dev,QA环境中运行良好,因为只有1个应用服务器。 但是在生产环境中,我们有多个应用服务器。
现在,我在生产中遇到了CX_SHM_NO_ACTIVE_VERSION异常,从我读到的内容来看,这是因为找不到活动的共享内存,并且可能是因为有多个应用程序服务器。 是当我们调用SUBMIT(而不是后台作业)时,被调用程序可以在与调用程序不同的应用服务器中运行吗?
如果是,是否可以确保被调用程序在同一应用程序服务器上运行? 我发现了这个线程, 并建议将RFC调用到相同的应用服务器目标。 如果可行,我计划从表USR41中获取用户登录到的当前应用服务器,并创建一个RFC FM,在FM内它将提交zprogram。
问题是因为我的开发,质量检查环境只有1个应用服务器,因此我没有环境可以测试此行为。 我需要确保此操作无需经过全面测试即可。
谢谢。
嗨,
将以下语句用于共享内存
将[值]导出到数据库INDX(ST)ID'ZMEM'。
从数据库INDX(ST)ID'ZMEM'中导入[VALUE]。
它适用于不同的应用程序服务器。
关于分派到多个应用程序服务器的一句话:如果发生滚动,上下文可能会重新分配给另一台服务器。 仅在"提交工作",屏幕显示和其他一些情况下才推出上下文。"提交"不执行推出,但选择屏幕的显示可以完成。 我不认为有办法强制保留在同一应用程序服务器上(如果计划中的服务器意外停止服务器该怎么办?),但谁知道呢。
,您可以共享代码如何从共享内存中移动和检索数据吗?
共享内存!? 不,内存意味着它与服务器有关。
您提出的语句确实适用于数据库。
一周热门 更多>