如何使用SyncSort将数据转换为无符号压缩格式



我需要将数字数据(在输入时存储为字符)转换为压缩有符号或压缩无符号格式。我可以使用"PD"格式转换为压缩/签名,但我很难获得未签名的压缩数据。

例如,我需要一个类似14723的ZD号码转换为:

042

173

使用PD,我得到了这个(这很好):

0173

042C

有什么建议吗?我们在这家商店没有COBOL,而是依靠SyncSort来处理这些数据转换。我在SyncSort中没有看到"PK"选项,但我以前错过过一些东西!

因此,您不需要压缩小数,因为它总是在低位半字节中有一个符号(即使F表示无符号)。您需要二进制-十进制(BCD)。

//STEP0100 EXEC PGM=SORT 
//SYSOUT   DD SYSOUT=* 
//SORTOUT  DD SYSOUT=* 
//SYSIN    DD * 
  OPTION COPY 
  INREC IFTHEN=(WHEN=INIT,OVERLAY=(1,5,ZD,MUL,+10,TO=PD,LENGTH=4)),
        IFTHEN=(WHEN=INIT,BUILD=(1,3)) 
//SORTIN   DD * 
14723 

会给你,在垂直十六进制:

042
173

要使用现有BCD,请查看字段类型PD0

相关内容

  • 没有找到相关文章

最新更新