| 1 | ORERR(ORTYP,ORMSG,ORVAR) ; RJS/SLC-ISC - Order Entry Error Logger ;11/12/97  08:09 | 
|---|
| 2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;;Dec 17, 1997 | 
|---|
| 3 | ; | 
|---|
| 4 | D EN(ORTYP,.ORMSG,.ORVAR) | 
|---|
| 5 | Q | 
|---|
| 6 | ; | 
|---|
| 7 | EN(ORTYP,ORMSG,ORVAR) ; | 
|---|
| 8 | ; | 
|---|
| 9 | N ORARRY,ORD0,ORD1,ORD2,OREF,ORVNAM | 
|---|
| 10 | ; | 
|---|
| 11 | S ORARRY=$S($L($G(ORMSG)):ORMSG,1:"ORMSG") | 
|---|
| 12 | ; | 
|---|
| 13 | I '$O(@ORARRY@(0)) S ORARRY="ORARRY",ORARRY(1)="Null HL7 Data Array Found" | 
|---|
| 14 | ; | 
|---|
| 15 | S ORD0=$O(^ORYX("ORERR","@"),-1)+1,^ORYX("ORERR",ORD0,0)="",OREF="^ORYX(""ORERR"","_ORD0_")" | 
|---|
| 16 | S @OREF@(0)=$$NOW_U_$G(ION)_U_$G(DUZ)_U_$G(ORTYP,$ZE)_U_$G(ZTSK) | 
|---|
| 17 | S $P(^ORYX("ORERR",0),U,3)=ORD0,$P(^ORYX("ORERR",0),U,4)=$P(^ORYX("ORERR",0),U,4)+1 | 
|---|
| 18 | ; | 
|---|
| 19 | D ADD(" "),ADD("HL7 Array: "),ADD(" ") | 
|---|
| 20 | S ORD1="" F  S ORD1=$O(@ORARRY@(ORD1)) Q:'ORD1  D | 
|---|
| 21 | .N ORPC,ORLEN | 
|---|
| 22 | .S ORLEN=$L($G(@ORARRY@(ORD1))) | 
|---|
| 23 | .F ORPC=0:1 Q:((ORPC*200)>ORLEN)  D | 
|---|
| 24 | ..D ADD($S(ORPC:"     ",1:$J(ORD1,3)_": ")_$E(@ORARRY@(ORD1),(ORPC*200+1),(ORPC+1*200))) | 
|---|
| 25 | .S ORD2="" F  S ORD2=$O(@ORARRY@(ORD1,ORD2)) Q:'ORD2  D | 
|---|
| 26 | ..N ORPC,ORLEN | 
|---|
| 27 | ..S ORLEN=$L($G(@ORARRY@(ORD1,ORD2))) | 
|---|
| 28 | ..F ORPC=0:1 Q:((ORPC*200)>ORLEN)  D | 
|---|
| 29 | ...D ADD($S(ORPC:"         ",1:$J(ORD1,3)_","_$J(ORD2,3)_": ")_$E(@ORARRY@(ORD1),(ORPC*200+1),(ORPC+1*200))) | 
|---|
| 30 | ; | 
|---|
| 31 | D ADD(" "),ADD("Local Variables: "),ADD(" ") | 
|---|
| 32 | ; | 
|---|
| 33 | I $D(ORVAR) S ORVNAM="" F  S ORVNAM=$O(ORVAR(ORVNAM)) Q:'$L(ORVNAM)  I $D(@ORVNAM) D | 
|---|
| 34 | .I ($D(@ORVNAM)#2) F ORPC=0:1 Q:((ORPC*100)>$L(@ORVNAM))  D | 
|---|
| 35 | ..N ORSP S ORSP="            " | 
|---|
| 36 | ..D ADD($S(ORPC:ORSP,1:$E(ORSP,$L(ORVNAM),12)_ORVNAM_": ")_$E(@ORVNAM,(ORPC*100+1),(ORPC+1*100))) | 
|---|
| 37 | .S ORVARY=ORVNAM F  S ORVARY=$Q(@ORVARY) Q:'$L(ORVARY)  Q:'($P(ORVARY,"(",1)=ORVNAM)  D | 
|---|
| 38 | ..F ORPC=0:1 Q:((ORPC*100)>$L(@ORVARY))  D | 
|---|
| 39 | ...N ORSP S ORSP="            " | 
|---|
| 40 | ...D ADD($S(ORPC:ORSP,1:$E(ORSP,$L(ORVARY),12)_ORVARY_": ")_$E(@ORVARY,(ORPC*100+1),(ORPC+1*100))) | 
|---|
| 41 | ; | 
|---|
| 42 | S @OREF@(1,0)=U_U_$O(@OREF@(1,""),-1)_U_$O(@OREF@(1,""),-1)_U_$$TODAY_U | 
|---|
| 43 | ; | 
|---|
| 44 | Q | 
|---|
| 45 | ; | 
|---|
| 46 | NOW() N X,Y,%DT S X="N",%DT="T" D ^%DT Q Y | 
|---|
| 47 | ; | 
|---|
| 48 | TODAY() N X,Y,%DT S X="T",%DT="" D ^%DT Q Y | 
|---|
| 49 | ; | 
|---|
| 50 | ADD(X) S @OREF@(1,($O(@OREF@(1,""),-1)+1),0)=X Q | 
|---|
| 51 | ; | 
|---|