SXPG_COMMAND_EXECUTE的当前工作目录?

时间:2014-09-09 11:11:45

标签: command-line sap abap

有没有办法为功能模块SXPG_COMMAND_EXECUTE执行的系统命令指定当前工作目录?

我没有看到任何允许我通过在事务SM69中定义命令或在IMPORTING中的SE37参数列表中执行此操作的参数。

默认情况下,这些命令在DIR_HOME中启动,可以通过事务AL11查看。我对此有什么控制权吗?

3 个答案:

答案 0 :(得分:1)

没有办法通过`SM69'不幸。我认为唯一的解决方案是创建一个脚本并调用它。

我打算建议在SM69命令中包装语句,这些命令定义为sh的调用,参数为-c 'cd <dir> && /path/to/command',但不幸的是,它不起作用。根据注释401095,不允许使用通配符。当我测试时,&&被翻译成单个&,导致命令失败。

答案 1 :(得分:0)

使用FM FILE_GET_NAME_USING_PATH访问此信息会很好(导出要查找其物理目录的脚本名称)。 接收路径可以在SXPG_COMMAND_EXECUTE中使用。

答案 2 :(得分:0)

因为我调用的外部命令实际上是.bat个文件,所以我通过将以下表达式放在每个文件的开头来解决这个问题。

cd /d %~dp0

This Stackoverflow问题实际上有很多帮助。