【问题标题】:Generate a report using DFSORT使用 DFSORT 生成报告
【发布时间】:2017-11-17 02:01:00
【问题描述】:

我有一个任务是编写一个调用 ICETOOL/DFSORT 来生成报告的 JCL 作业。该报告将 VSAM KSDS 作为输入并生成银行分行列表。

BRANCHES KSDS 中的每条记录的格式为

• 代表 6 位十进制分支排序码的 4 字节二进制无符号整数(例如 420101)

• 1 字节 EBCDIC 标志: ◦ EBCDIC 'A' 表示该分行归 ZeusBank 所有,其所有账户都保存在 ACCOUNTS KSDS 中

◦ EBCDIC 'B' 表示该分行不归 ZeusBank 所有,因此我们不会在 ACCOUNTS KSDS 中保存其帐户信息

• 32 字节 EBCDIC 字符分支名称(例如“ZEUSBANK FOOFORD BAR STREET”或“OTHERBANK QUUXHAM BAZ ROAD”),右侧填充空白。

报告应该是这样的

我对 JCL 很陌生,所以如果问题很简单,请原谅。谢谢。

【问题讨论】:

  • 报告是否按 1 字节标志排序?您只需要一次标题还是应该在一组记录之后重复?
  • 这个链接应该对你有帮助,如果你需要更多帮助,请告诉我:ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/…
  • 是的,我只想要一次,我遇到了标题的事情,但是有一个错误阻止我做任何事情 [ibb.co/kNy0tR].我该如何解决这个问题?
  • 错误是什么?我看不到链接。
  • 我的报告看起来像这样 [pastebin.com/gQS9ZEBr].我得到了错误,@ 987654326@。我该如何解决?谢谢。

标签: mainframe zos jcl dfsort


【解决方案1】:

你可以试试这个:

//STEPSORT EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SORTIN DD DSN=DATASETNAME
//SORTOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(5,1,CH,A)
OUTFIL HEADER2=(1:C'LIST OF WHATEVER BANK',4/,
1:C'SORTCODE',10:C'FLAG',15:C'BRANCH',/,
1:C'--------',10:C'----',15:C'------'),
BUILD=(1:1,4,BI,TO=ZD,LENGTH=6,10:5,1,15:6,32)
/*

【讨论】:

  • 谢谢伙计。但是它说DEFINE - INSUFFICIENT AUTHORITY STMT NO. MESSAGE - 5 IGD308I DATA SET ALLOCATION REQUEST FAILED - RACF FUNCTION: RACDEF FOR DATA SET: SHECICS.ZEUSBANK.BRANCHES WITH RETURN CODE 08 REASON CODE 00
  • 我可以在聊天中问一些问题吗?
  • 当我添加DISP=SHR 时,我收到了错误IEFC621I EXPECTED CONTINUATION NOT RECEIVED。你知道怎么解决吗?
  • 我现在没空,2小时后回来。我需要看看你的工作。
  • 完成了,这是我的错在逗号后面留了一个空格。谢谢。如何对sortcode 数字(即第一列)进行排序。
猜你喜欢
  • 2017-12-21
  • 1970-01-01
  • 1970-01-01
  • 2011-03-02
  • 1970-01-01
  • 1970-01-01
  • 2014-05-15
  • 1970-01-01
  • 2023-03-21
相关资源
最近更新 更多