10%macro mddl_dc_difftable(libds=WORK.DIFFTABLE);
14 load_ref
char(36) label=
'unique load reference',
15 processed_dttm num format=E8601DT26.6 label=
'Processed at timestamp',
16 libref
char(8) label=
'Library Reference (8 chars)',
17 dsn
char(32) label=
'Dataset Name (32 chars)',
18 key_hash
char(32) label=
19 'MD5 Hash of primary key values (pipe seperated)',
20 move_type
char(1) label=
'Either (A)ppended, (D)eleted or (M)odified',
21 is_pk num label=
'Is Primary Key Field? (1/0)',
23 'Did value change? (1/0/-1). Always -1 for appends and deletes.',
24 tgtvar_type
char(1) label=
'Either (C)haracter or (N)umeric',
25 tgtvar_nm
char(32) label=
'Target variable name (32 chars)',
26 oldval_num num format=best32. label=
'Old (numeric) value',
27 newval_num num format=best32. label=
'New (numeric) value',
28 oldval_char
char(32765) label=
'Old (character) value',
29 newval_char
char(32765) label=
'New (character) value'
33 %let libds=%upcase(&libds);
34 %
if %index(&libds,.)=0 %then %let lib=WORK;
35 %
else %let lib=%scan(&libds,1,.);
37 proc datasets lib=&lib noprint;
38 modify %scan(&libds,-1,.);
40 pk_mpe_audit=(load_ref libref dsn key_hash tgtvar_nm)
44%mend mddl_dc_difftable;