共享内存和提交程序问题

2020-08-22 19:58发布

         点击此处--->   EasySAP.com群内免费提供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个应用服务器,因此我没有环境可以测试此行为。 我需要确保此操作无需经过全面测试即可。

谢谢。

         点击此处--->   EasySAP.com群内免费提供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个应用服务器,因此我没有环境可以测试此行为。 我需要确保此操作无需经过全面测试即可。

谢谢。

付费偷看设置
发送
4条回答
骆驼绵羊
1楼-- · 2020-08-22 20:41

嗨,

将以下语句用于共享内存

将[值]导出到数据库INDX(ST)ID'ZMEM'。

从数据库INDX(ST)ID'ZMEM'中导入[VALUE]。

它适用于不同的应用程序服务器。

木偶小白
2楼-- · 2020-08-22 20:35

关于分派到多个应用程序服务器的一句话:如果发生滚动,上下文可能会重新分配给另一台服务器。 仅在"提交工作",屏幕显示和其他一些情况下才推出上下文。"提交"不执行推出,但选择屏幕的显示可以完成。 我不认为有办法强制保留在同一应用程序服务器上(如果计划中的服务器意外停止服务器该怎么办?),但谁知道呢。

绿领巾童鞋
3楼-- · 2020-08-22 20:44

,您可以共享代码如何从共享内存中移动和检索数据吗?

梦想连接
4楼-- · 2020-08-22 20:45

共享内存!? 不,内存意味着它与服务器有关。

您提出的语句确实适用于数据库。

一周热门 更多>