我想使用下面的示例代码来解释我的场景,
需要使用 JOINKEYS 通过 acct# 连接两个文件,但在 file1 中,acct# 存在于位置:33,但在 file2 中,acct# 存在于位置:1 或 2 取决于位置:1 处的字符“C”。换句话说,如果 char 'C' 存在于位置:1,那么我们需要从位置:2 考虑 acct#,否则从位置:1 考虑 acct#。我想一步完成所有这些事情。
希望我把我的要求说清楚。感谢您的解决方案。
//STEP010 EXEC PGM=SORT,
// REGION=4096K
//SYSPRINT DD SYSOUT=*
//SYSLIST DD SYSOUT=*
//SYSTOTAL DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//*
//SORTIN DD DUMMY
//*
//SORTJNF1 DD *
1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|3785253347100
2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|3785253368600
8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|3725826154600
9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|3725817782600
1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|3785253347122
/*
//*
//SORTJNF2 DD *
C3785253347100
C3785253368600
3725826154600
3725817782600
//SORTOUT DD SYSOUT=*
//JNF2CNTL DD *
INCLUDE COND=(1,1,CH,EQ,C'C'),
INREC BUILD=(1,13)
/*
//*
//SYSIN DD *
JOINKEYS FILES=F1,FIELDS=(33,13,A)
JOINKEYS FILES=F2,FIELDS=(01,13,A)
JOIN UNPAIRED,F1
REFORMAT FIELDS=(F1:01,45,F2:01,13),FILL=C'$'
SORT FIELDS=COPY
/*