如何使用QCMDEXC从Python发送iSeries命令



我正试图使用Python中的QCMDEXC向iSeries(AS/400)发送命令。我知道我可以连接到iSeries,因为我可以显示来自QGPL:的成员

src.execute('select * from qgpl/bwusrprf')
for row in src:
    print (row)

我已经尝试了"CALL QCMDEXC"(如下所示)命令的所有语法组合,但没有成功。这可能吗?这是发布QCMDEXC的正确方法吗?

Python代码:

src.execute(call qcmdexc('dspusrprf usrprf(*all) output(*outfile) outfile(qgpl/audusrprf)', 0000000061.00000)

======================================================================================错误消息:

src.execute(call qcmdexc('dspusrprf usrprf(*all) output(*outfile) outfile(qgpl/audusrprf)', 0000000061.00000)
                           ^
SyntaxError: invalid syntax

您可能需要在整个命令周围加引号,如下所示:

src.execute("call qcmdexc parm('dspusrprf usrprf(*all) output(*outfile) outfile(qgpl/audusrprf)', 0000000061.00000)")

或者最好将其声明为字符串:

parm = "dspusrprf usrprf(*all) output(*outfile) outfile(qgpl/audusrprf)"
cmd = "call qcmdexc parm('{0:s}', {1:016.5f})".format(parm, len(parm))
src.execute(cmd)

相关内容

  • 没有找到相关文章

最新更新