17 pknum=._; grp=
'a'; score=._; output;
18 pknum=.A; grp=
'b'; score=7; output;
19 pknum=.Z; grp=
'c'; score=.B; output;
20 pknum=1; grp=
'd'; score=.; output;
24data work.orig work.deleted work.changed;
27 if pknum=._ then output work.deleted;
28 else if pknum=.A then
do;
32 else if pknum=.Z then
do;
38 pknum=.C; grp=
'e'; score=1; output;
39 pknum=8; grp=
'f'; score=.Q; output;
43%mp_storediffs(libby.spm,work.orig,PKNUM GRP
53 desc=Checking diffs were stored
for special missing values,
54 outds=work.test_results
59delete from libby.spm where pknum=._;
60delete from libby.spm where pknum=.A;
61delete from libby.spm where pknum=.Z;
63proc append base=libby.spm data=work.changed;
65proc append base=libby.spm data=work.appended;
69%mp_assertscope(SNAPSHOT)
70%mp_stripdiffs(libby.spm
76%mp_assertscope(COMPARE)
79 desc=Checking no failure when reverting special missing values,
80 outds=work.test_results
86 pknum=._; grp='a'; score=._; delflag='No'; output;
87 pknum=.A; grp='b'; score=7; delflag='No'; output;
88 pknum=.Z; grp='c'; score=.B; delflag='No'; output;
89 pknum=1; grp='d'; score=.; delflag='No'; output;
90 pknum=.C; grp='e'; score=1; delflag='Yes'; output;
91 pknum=8; grp='f'; score=.Q; delflag='Yes'; output;
94 set work.sd_stage(rename=(_____DELETE__THIS__RECORD_____=delflag));
98proc compare base=work.sd_expected compare=work.sd_actual;
103 call symputx('cmpfail',band(&sysinfo,64+128+4096+32768),'l');
107 desc=Checking restored values match the original for special missings,
108 outds=work.test_results