2020-08-19 10:16发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我编写了一个程序,可以简单地从ftp文件中剥离时间戳。
我确定文件名,并使用'SXPG_COMMAND_EXECUTE'来调用自定义命令ZMV,该自定义命令将调用OS mv命令来重命名文件。 我已经在测试环境中对此进行了测试,但是当我进入生产环境时,该程序会运行,但会返回801,并且不会重命名文件。 Google在这一方面并不是很有帮助。 有人知道我的问题是什么吗?
Hi
什么是操作系统命令-您正在此FM中执行。
此FM-应该返回一个表(协议表)。 在调试中检查该表中的条目
调用功能'SXPG_COMMAND_EXECUTE' 出口 COMMANDNAME =您的命令 OPERATINGSYSTEM =您的操作系统 TARGETSYSTEM = SY-HOST STDOUT ='X' STDERR ='X' TERMINATIONWAIT ='X' 跟踪='X' ADDITIONAL_PARAMETERS =您的参数 输入 状态=您的状态 桌子 EXEC_PROTOCOL = IT_CMD_OUTPUT"返回表(ur gt_log)<===检查此表
检查此IT_CMD_OUTPUT表并更新它说的日志。
问候
Venkat
您说" sy-subrc = 801",那怎么可能? 在CALL FUNCTION ...之后,可能会通过EXCEPTIONS定义sy-subrc的可能值,并且可能未将801分配给这些异常之一(通常为1到通常不超过20)。
您说" 没有帮助",但您应该首先查看SAP注释。
sy-subrc如果您写此命令时找不到该命令,则将为2(因为在此,异常command_not_found 是将值2分配给sy-subrc):
调用函数'SXPG_COMMAND_EXECUTE' ... 例外情况 no_permission = 1 command_not_found = 2 ...
解决方案:检查Venkat和Matthew的建议。
因此,事实证明,在我们的开发和测试系统中,ZMV(mv)命令是使用OPSYSTEM创建的 = UNIX
但是,在我们的Prod系统中,这是使用OPSYSTEM ='AIX'创建的。
感谢所有帮助!
感谢您的反馈。
为以后的访客弄清情况:
由于不清楚的信息,我不会就此问题做进一步介绍。 根据多年的经验,我的猜测是授权问题。
OP-请Basis检查目录的权限。
运行时得到RC = 2 通过调试器。 批量运行时,我得到了801。 上面的问题是"检查调试表中的条目是什么"-但是单步执行程序时我没有得到801。
这是我的日志:
最多设置5个标签!
Hi
什么是操作系统命令-您正在此FM中执行。
此FM-应该返回一个表(协议表)。 在调试中检查该表中的条目
检查此IT_CMD_OUTPUT表并更新它说的日志。
问候
Venkat
您说" sy-subrc = 801",那怎么可能? 在CALL FUNCTION ...之后,可能会通过EXCEPTIONS定义sy-subrc的可能值,并且可能未将801分配给这些异常之一(通常为1到通常不超过20)。
您说" 没有帮助",但您应该首先查看SAP注释。
sy-subrc如果您写此命令时找不到该命令,则将为2(因为在此,异常command_not_found 是将值2分配给sy-subrc):
解决方案:检查Venkat和Matthew的建议。
因此,事实证明,在我们的开发和测试系统中,ZMV(mv)命令是使用OPSYSTEM创建的 = UNIX
但是,在我们的Prod系统中,这是使用OPSYSTEM ='AIX'创建的。
感谢所有帮助!
感谢您的反馈。
为以后的访客弄清情况:
由于不清楚的信息,我不会就此问题做进一步介绍。 根据多年的经验,我的猜测是授权问题。
OP-请Basis检查目录的权限。
运行时得到RC = 2 通过调试器。 批量运行时,我得到了801。 上面的问题是"检查调试表中的条目是什么"-但是单步执行程序时我没有得到801。
这是我的日志:
一周热门 更多>