从DB2 Command获得REXX中的输出

时间:2018-08-29 11:16:24

标签: db2 mainframe zos rexx

我想使用Rexx捕获以下命令的输出:

dependencies:
  flutter:
    sdk: flutter
  http: "^0.11.3+17"
#  charts_flutter: "^0.4.0"
# map_view: ^0.0.14
# flutter_map: "^0.0.10"
  google_maps_flutter:
    git:
      url: git://github.com/flutter/plugins
      path: packages/google_maps_flutter

有没有办法获取上述命令输出的表的名称,这些表显示在变量或其他某种构造中,以便可以通过编程方式处理数据?

致谢

1 个答案:

答案 0 :(得分:6)

OUTTRAP函数应捕获DSN命令的输出。 OUTTRAP旨在 TRAP 大多数TSO命令的 OUT 。输出放置在您提供的变量(通常是词干变量)中。 (无法捕获某些TSO命令;这在 TSO / E REXX参考中的其他地方进行了讨论。)

按照上面提供的代码,我们可以将它们拼凑在一起:

ORC = OUTTRAP('O.')             /* preserve prior setting of OUTTRAP */
QUEUE "-DIS DATABASE(*) SPACENAM(*) RESTRICT(CHKP,COPY)"
QUEUE "END"                                             
ADDRESS TSO "DSN SYSTEM(DB2D)"
CALL OUTTRAP ORC                /* restore OUTTRAP setting */
DO #O = 1 TO O.0                /* The 0 entry by convention has the number of records */
  /* You can PARSE, analyze, or do whatever here */
  SAY "O."'#O "='"O.#O"'"         /* example */
END #O                          /* end the loop */

在TSO / E REXX中编写脚本时,OUTTRAP是一项非常强大的功能。