基于我们公司的Life Asia系统没有记录某些重要信息的交易轨迹 ,比如客户资料中的电话什么时间由谁从原值修改为新值。为了达到这个目的,同时不想手工一个字段一个字段的比较原值/新值,开发了一个逻辑文件自动比较的生成器,传递 Logical File名字和WORKUNIT,就能自动生成XXXXDIF的程序(XXXX表示逻辑文件名).XXXXDIF有两个参数,第一个参数为OLD-XXXX-PARAMS,第二个参数为NEW-XXXX-PARAMS,这个程序逐个比较XXXX文件的字段(DTVF)的原值/新值,如果不一致就记录在修改轨迹表中.
比如 P2465 中
1000 节,如果WSSP-FLAG为M,就存储CLTS-PARAMS TO WSAA-OLD-CLTS-PARAMS.
4000节,如果WSSP-FLAG 为M并且程序要提交,存储修改后的CLTS-PARAMS TO WSAA-NEW-CLTS-PARAMS.
然后 CALL ‘CLTSDIF’ USING WSAA-OLD-CLTS-PARAMS WSAA-NEW-CLTS-PARAMS就能得到CLTS逻辑文件所有的修改字段了,省略手工比较。