点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家您好,
我有一个ABAP程序,该程序可以检查失败的作业,并向用户发送电子邮件以提供作业详细信息。 rsconn01在同一程序中运行。 因此不需要单独的苏格兰时间安排。
它在dev中完美运行。 环境也一样。 发送电子邮件没有延迟。 但是,同一程序在发送高质量电子邮件方面存在延迟。 与系统时间相比,用户的su01设置没有时区差异。
我观察到的实际问题是程序第一次运行时,该条目仅位于SOST中。 在下一次ABAP运行中,旧条目将替换为新条目,并发送与SOST中的旧条目有关的电子邮件。 现在,新条目仅位于SOST中,直到完成下一次ABAP运行为止。
在SOST中显示"等待通信服务"。 请注意,rsconn01已安排好,没有时区问题。 除此之外,没有特定的延迟时间。 旧条目只是等待新条目进入SOST,直到它发送电子邮件为止。
ABAP程序可以在开发人员中完美运行。 没有任何延迟。 这个上有灯吗??
此致
Mihir
您好Mihir,
在使用任何用于生成输出消息的函数之后,提交rsconn1之前,请确保具有"提交工作并等待"语句。 在完成其他工作之前,RSCONN01似乎正在运行。
此致
筛粉机
Mihir,
如果我正确理解您的信息,则可以解决延迟电子邮件的问题,这仅仅是邮件保留在SOST中吗? 我不确定,一旦发送了消息,就应该将其从SOST中删除。
基本上,代码应以如下形式结束:
提交工作并等待。
以mode ='INT'提交rsconn01并返回。
如果您可以提供更多详细信息或代码,也许我可以帮忙,因为使用rsconn01已经有一段时间了。
此致
过滤器
这实际上不是ABAP问题。 我认为您的本地Basis管理员比ABAP论坛用户有更多帮助。
但是,由于我们处于这个论坛中,因此,如果我建议的话,我不会从同一程序启动RSCON001。 该程序仅应创建电子邮件,并应通过SAP中的常规流程发送该电子邮件(通常这是后台作业,在生产环境中经常运行)。 在DEV/QA中,可以在SOST中手动推出电子邮件以进行测试。 这看起来像一个更"干净"的解决方案,麻烦更少。
顺便检查一下是否可以手动发送来自质量检查的电子邮件。 也许这不是程序的问题。 然后绝对是基础。
很好的答案。 谢谢!
嗨,Mihir,
首先,我同意Kumund。 您正在使用的功能似乎已过时(有更好的OOP可用)。 但是,这与我使用的相同,我知道它可以在ECC 6.0中正常工作。 我确实看到一件事可能是罪魁祸首,您可以进行测试。 如果SY-SUBRC = 0,请在函数调用后立即移动"提交工作并等待"语句。这就是我在原始帖子中所说的。 您将在发出命令之前打开另一个数据库游标,并且可能与现在拥有该函数的功能无关。
--------------------------------------------------- -------------------------------
*发送电子邮件通知
通话功能'SO_NEW_DOCUMENT_SEND_API1'
导出
document_type ='RAW'
document_data = doc_chng
commit_work ='X'
表格
object_content = objcont
接收者= reclist []
例外情况
too_many_receivers = 1
document_not_sent = 2
operation_no_authorization = 4
其他= 99。
如果SY-SUBRC = 0。
提交工作并等待。
以mode ='INT'提交rsconn01并返回。
ENDIF。
--------------------------------------------------- ----------------------------
如果仍然无法解决以上问题,而没有更改上述建议,则尝试在"提交工作并等待"语句之后立即放置"以模式='INT'提交rsconn01并返回"。
如果此操作无法解决,请在不更改上述建议的情况下,从函数的" reclist"中删除括号,因为这不必要。
如果仍无法解决,请在不更改上述建议的情况下,从函数导出中删除commit work ='X'。
关于
过滤器
你好
关于电子邮件延迟的话题也很相似。 如果要按照计划B所示编写代码,建议您使用CL_BCS类发送邮件。 您可以使用位置清单来检查其使用方法功能。 在这种情况下,为避免取消交易,在调用SEND方法之前,将立即标志设置为X,如下所示。
数据:ylog TYPE REF TO cl_bcs。
尝试。
呼叫方法ylog-> set_send_immediately
导出
i_send_immediately = abap_true。
CATCH cx_send_req_bcs。
ENDTRY。
尝试一下,让我知道 如果问题解决了。 谢谢。
关于,
Kumud
嗨,
您可以检查需要触发您的SAPconnect发送作业吗? 邮件,这可能需要一些时间。
一周热门 更多>