Following is a response from Senior SPA Specialist, Rajendra Dangol:
Here are the variables used in table 6.4 and logic in CsPro:
if (Q1422(1)=1 or Q1422(3)=1) or (Q210=1 & (Q906(3)=1 or Q906(4)=1)) then col605=1; xtab(t605,rwt); endif; {iron}
if (Q1422(2)=1 or Q1422(3)=1) or (Q210=1 & (Q906(2)=1 or Q906(4)=1)) then col605=2; xtab(t605,rwt); endif; {folic acid}
if (Q1422(3)=1 or (Q210=1 & Q906(4)=1)) then col605=3; xtab(t605,rwt); endif; {combined iron and folic acid}
if col605 in 1:3 then col605=4; xtab(t605,rwt); endif; {if at least one of the above 3 is true: Column 4 of table 6.4}
Here are the variables used in table 6.6 and logic in CSPro
haveanc=(Q102(5)=1 & Q1401 in 1:31);
if haveanc then
cntanc=0;
if Q1410=1 or Q1412=1 then col604a=1; col1=1; xtab(t604A,rwt); xtab(t604B,rwt); cntanc=cntanc+1; endif; {guideline}
if PROVANCT1 then col604a=2; col2=1; xtab(t604A,rwt); xtab(t604B,rwt); cntanc=cntanc+1; endif; {ever training}
if (Q1421A(1)=1 & Q1421B(1)=1) or (Q1421A(2)=1 & Q1421B(2)=1 & Q1421A(3)=1 & Q1421B(3)=1) then
col604a=3; col3=1; xtab(t604A,rwt); xtab(t604B,rwt); cntanc=cntanc+1; endif; {BP}
if HEMOGLOB then col604a=4; col4=1; xtab(t604A,rwt); xtab(t604B,rwt); cntanc=cntanc+1; endif; {Hemoglobin}
if Q837B(1)=1 or Q1406(2)=1 or Q1420(4)=1 then col604a=5; col5=1; xtab(t604A,rwt); xtab(t604B,rwt); cntanc=cntanc+1; endif; {Urine protien}
if ( (Q1422(1)=1 or Q1422(3)=1) or (Q210=1 & (Q906(3)=1 or Q906(4)=1)) or
(Q1422(2)=1 or Q1422(3)=1) or (Q210=1 & (Q906(2)=1 or Q906(4)=1)) or
(Q1422(3)=1 or (Q210=1 & Q906(4)=1)) ) then col604a=6; col6=1;
xtab(t604A,rwt); xtab(t604B,rwt); cntanc=cntanc+1; endif; {combined iron + folic acid}
if cntanc = 6 then col604a=8; xtab(t604A,rwt); xtab(t604B,rwt); endif; {all six items}
endif;