- Timestamp:
- Feb 3, 2009, 5:36:00 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ccr/trunk/p/GPLIMMU.m
r354 r355 28 28 D EXTRACT(IPXML,DFN,OUTXML) ;EXTRACT THE VARIABLES 29 29 N C0CZI,C0CZIC ; COUNT OF IMMUNIZATIONS 30 S C0CZIC=@C0CZV@(0) ; TOTAL FROM VARIABLE ARRAY 31 F C0CZI=1:1:C0CZIC D ;FOR EACH IMMUNIZATION 32 . S C0CZVI=$NA(@C0CZV@(C0CZI)) ;THIS IMMUNIZATION 33 . D MAP^GPLXPATH(IPXML,C0CZVI,"C0CZT") ;MAP THE VARIABLES TO XML 34 . I C0CZI=1 D ; FIRST ONE 35 . . D CP^GPLXPATH("C0CZT",OUTXML) ;JUST COPY RESULTS 36 . E D ;NOT THE FIRST 37 . . D INSINNER^GPLXPATH(OUTXML,"C0CZT") 30 S C0CZIC=$G(@C0CZV@(0)) ; TOTAL FROM VARIABLE ARRAY 31 I C0CZIC>0 D ;IMMUNIZATIONS FOUND 32 . F C0CZI=1:1:C0CZIC D ;FOR EACH IMMUNIZATION 33 . . S C0CZVI=$NA(@C0CZV@(C0CZI)) ;THIS IMMUNIZATION 34 . . D MAP^GPLXPATH(IPXML,C0CZVI,"C0CZT") ;MAP THE VARIABLES TO XML 35 . . I C0CZI=1 D ; FIRST ONE 36 . . . D CP^GPLXPATH("C0CZT",OUTXML) ;JUST COPY RESULTS 37 . . E D ;NOT THE FIRST 38 . . . D INSINNER^GPLXPATH(OUTXML,"C0CZT") 39 E S @OUTXML@(0)=0 ; SIGNAL NO IMMUNIZATIONS 38 40 Q 39 41 ; … … 69 71 . F S C0CIMD=$O(@IMMA@(C0CIM,C0CIMD)) Q:C0CIMD="" D ; FOR EACH DATE 70 72 . . S C0CIEN=$O(@IMMA@(C0CIM,C0CIMD,"")) ;IEN OF IMMUNE RECORD 71 . . D GETN^C0CRNF("C0CI",9000010.11,C0CIEN) ; GET THE FILEMAN RECORD TO PULLIENS73 . . D GETN^C0CRNF("C0CI",9000010.11,C0CIEN) ; GET THE FILEMAN RECORD FOR IENS 72 74 . . W C0CIEN,"_",C0CIMD 73 75 . . S C0CT=$$FMDTOUTC^CCRUTIL(9999999-C0CIMD,"DT") ; FORMAT DATE/TIME … … 79 81 . . S @VMAP@("IMMUNESOURCEACTORID")="ACTORPROVIDER_"_C0CIP 80 82 . . S C0CIIEN=$$ZVALUEI^C0CRNF("IMMUNIZATION","C0CI") ;IEN OF IMMUNIZATION 81 . . ; FOR LOOKING UP THE CODE (TBD GPL) 82 . . S C0CIN=$$ZVALUE^C0CRNF("IMMUNIZATION","C0CI") ;NAME OF IMMUNIZATION 83 . . ; GET IT FROM THE CODE FILE CHANGE THIS (TBD GPL) 84 . . S @VMAP@("IMMUNEPRODUCTNAMETEXT")=C0CIN ;NAME 85 . . S @VMAP@("IMMUNEPRODUCTCODE")="" ;FIX THIS 86 . . S @VMAP@("IMMUNEPRODUCTCODESYSTEM")="" ;FIX THIS 87 Q 88 . S VMAP=$NA(@TVMAP@(J)) 89 . K @VMAP 90 . I DEBUG W "VMAP= ",VMAP,! 91 . S PTMP=RPCRSLT(J) ; PULL OUT PROBLEM FROM RPC RETURN ARRAY 92 . S @VMAP@("PROBLEMOBJECTID")="PROBLEM"_J ; UNIQUE OBJID FOR PROBLEM 93 . S @VMAP@("PROBLEMIEN")=$P(PTMP,U,1) 94 . S @VMAP@("PROBLEMSTATUS")=$S($P(PTMP,U,2)="A":"Active",1:"") 95 . S @VMAP@("PROBLEMDESCRIPTION")=$P(PTMP,U,3) 96 . S @VMAP@("PROBLEMCODINGVERSION")="" 97 . S @VMAP@("PROBLEMCODEVALUE")=$P(PTMP,U,4) 98 . S @VMAP@("PROBLEMDATEOFONSET")=$$FMDTOUTC^CCRUTIL($P(PTMP,U,5),"DT") 99 . S @VMAP@("PROBLEMDATEMOD")=$$FMDTOUTC^CCRUTIL($P(PTMP,U,6),"DT") 100 . S @VMAP@("PROBLEMSC")=$P(PTMP,U,7) 101 . S @VMAP@("PROBLEMSE")=$P(PTMP,U,8) 102 . S @VMAP@("PROBLEMCONDITION")=$P(PTMP,U,9) 103 . S @VMAP@("PROBLEMLOC")=$P(PTMP,U,10) 104 . S @VMAP@("PROBLEMLOCTYPE")=$P(PTMP,U,11) 105 . S @VMAP@("PROBLEMPROVIDER")=$P(PTMP,U,12) 106 . S X=@VMAP@("PROBLEMPROVIDER") ; FORMAT Y;NAME Y IS IEN OF PROVIDER 107 . S @VMAP@("PROBLEMSOURCEACTORID")="ACTORPROVIDER_"_$P(X,";",1) 108 . S @VMAP@("PROBLEMSERVICE")=$P(PTMP,U,13) 109 . S @VMAP@("PROBLEMHASCMT")=$P(PTMP,U,14) 110 . S @VMAP@("PROBLEMDTREC")=$$FMDTOUTC^CCRUTIL($P(PTMP,U,15),"DT") 111 . S @VMAP@("PROBLEMINACT")=$$FMDTOUTC^CCRUTIL($P(PTMP,U,16),"DT") 112 . S ARYTMP=$NA(@TARYTMP@(J)) 113 . ; W "ARYTMP= ",ARYTMP,! 114 . K @ARYTMP 115 . D MAP^GPLXPATH(IPXML,VMAP,ARYTMP) ; 116 . I J=1 D ; FIRST ONE IS JUST A COPY 117 . . ; W "FIRST ONE",! 118 . . D CP^GPLXPATH(ARYTMP,OUTXML) 119 . . ; W "OUTXML ",OUTXML,! 120 . I J>1 D ; AFTER THE FIRST, INSERT INNER XML 121 . . D INSINNER^GPLXPATH(OUTXML,ARYTMP) 122 ; ZWR ^TMP("GPLCCR",$J,"PROBVALS",*) 123 ; ZWR ^TMP("GPLCCR",$J,"PROBARYTMP",*) ; SHOW THE RESULTS 124 ; ZWR @OUTXML 125 ; $$HTML^DILF( 126 ; GENERATE THE NARITIVE HTML FOR THE CCD 127 I CCD D ; IF THIS IS FOR A CCD 128 . N HTMP,HOUT,HTMLO,GPLPROBI,ZX 129 . F GPLPROBI=1:1:RPCRSLT(0) D ; FOR EACH PROBLEM 130 . . S VMAP=$NA(@TVMAP@(GPLPROBI)) 131 . . I DEBUG W "VMAP =",VMAP,! 132 . . D QUERY^GPLXPATH(TGLOBAL,"//ContinuityOfCareRecord/Body/PROBLEMS-HTML","HTMP") ; GET THE HTML FROM THE TEMPLATE 133 . . D UNMARK^GPLXPATH("HTMP") ; REMOVE <PROBLEMS-HTML> MARKUP 134 . . ; D PARY^GPLXPATH("HTMP") ; PRINT IT 135 . . D MAP^GPLXPATH("HTMP",VMAP,"HOUT") ; MAP THE VARIABLES 136 . . ; D PARY^GPLXPATH("HOUT") ; PRINT IT AGAIN 137 . . I GPLPROBI=1 D ; FIRST ONE IS JUST A COPY 138 . . . D CP^GPLXPATH("HOUT","HTMLO") 139 . . I GPLPROBI>1 D ; AFTER THE FIRST, INSERT INNER HTML 140 . . . I DEBUG W "DOING INNER",! 141 . . . N HTMLBLD,HTMLTMP 142 . . . D QUEUE^GPLXPATH("HTMLBLD","HTMLO",1,HTMLO(0)-1) 143 . . . D QUEUE^GPLXPATH("HTMLBLD","HOUT",2,HOUT(0)-1) 144 . . . D QUEUE^GPLXPATH("HTMLBLD","HTMLO",HTMLO(0),HTMLO(0)) 145 . . . D BUILD^GPLXPATH("HTMLBLD","HTMLTMP") 146 . . . D CP^GPLXPATH("HTMLTMP","HTMLO") 147 . . . ; D INSINNER^GPLXPATH("HOUT","HTMLO","//") 148 . I DEBUG D PARY^GPLXPATH("HTMLO") 149 . D INSB4^GPLXPATH(OUTXML,"HTMLO") ; INSERT AT TOP OF SECTION 150 N PROBSTMP,I 151 D MISSING^GPLXPATH(ARYTMP,"PROBSTMP") ; SEARCH XML FOR MISSING VARS 152 I PROBSTMP(0)>0 D ; IF THERE ARE MISSING VARS - 83 . . I $G(DUZ("AG"))="I" D ; RUNNING IN RPMS 84 . . . D GETN^C0CRNF("C0CZIM",9999999.14,C0CIIEN) ;GET IMMUNE RECORD 85 . . . S C0CIN=$$ZVALUE^C0CRNF("NAME","C0CZIM") ; USE NAME IN IMMUNE RECORD 86 . . . ; FOR LOOKING UP THE CODE 87 . . . ; GET IT FROM THE CODE FILE 88 . . . S C0CICD=$$ZVALUE^C0CRNF("HL7-CVX CODE","C0CZIM") ;CVX CODE 89 . . . S @VMAP@("IMMUNEPRODUCTNAMETEXT")=C0CIN ;NAME 90 . . . S @VMAP@("IMMUNEPRODUCTCODE")=C0CICD ; CVX CODE 91 . . . I C0CICD'="" S @VMAP@("IMMUNEPRODUCTCODESYSTEM")="CDC Vaccine Code" ; 92 . . . E S @VMAP@("IMMUNEPRODUCTCODESYSTEM")="" ;NULL 93 . . E D ; NOT IN RPMS 94 . . . S C0CIN=$$ZVALUE^C0CRNF("IMMUNIZATION","C0CI") ;NAME OF IMMUNIZATION 95 . . . S @VMAP@("IMMUNEPRODUCTNAMETEXT")=C0CIN ;NAME 96 . . . S @VMAP@("IMMUNEPRODUCTCODE")="" ; CVX CODE 97 . . . S @VMAP@("IMMUNEPRODUCTCODESYSTEM")="" ;NO CODE 98 N IMMUTMP,I 99 D MISSING^GPLXPATH(ARYTMP,"IMMUTMP") ; SEARCH XML FOR MISSING VARS 100 I IMMUTMP(0)>0 D ; IF THERE ARE MISSING VARS - 153 101 . ; STRINGS MARKED AS @@X@@ 154 . W !," PROBLEMSMissing list: ",!155 . F I=1:1: PROBSTMP(0) W PROBSTMP(I),!102 . W !,"IMMUNE Missing list: ",! 103 . F I=1:1:IMMUTMP(0) W IMMUTMP(I),! 156 104 Q 157 105 ;
Note:
See TracChangeset
for help on using the changeset viewer.