PXCAPOV1 ;ISL/dee & LEA/Chylton - Validates data from the PCE Device Interface into PCE's PXK format for POV ;6/20/96
;;1.0;PCE PATIENT CARE ENCOUNTER;;Aug 12, 1996
Q
; Variables
; PXCADIAG Copy of a Diagnosis node of the PXCA array
; PXCAPRV Pointer to the provider (200)
; PXCANUMB Count of the number if POVs
; PXCAINDX Count of the number of Diagnosis for one provider
;
PART1 ;
S PXCAITEM=$P(PXCADIAG,"^",8),PXCAITM2=$L(PXCAITEM)
I PXCAITM2<2!(PXCAITM2>80) S PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,8)="Provider's DIAGNOSIS term must be 2-80 Characters^"_PXCAITEM
E D
. S PXCAPNAR=+$$PROVNARR^PXAPI(PXCAITEM,9000010.07,$G(PXCACLEX))
. I PXCAPNAR'>0 S PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,8)="Could not get pointer to Provider's DIAGNOSIS term^"_$P(PXCADIAG,"^",8)
. E S $P(PXCADIAG,"^",8)=PXCAPNAR
S PXCAITEM=$P(PXCADIAG,"^",9),PXCAITM2=$L(PXCAITEM)
I PXCAITM2>0 D
. I PXCAITM2<2!(PXCAITM2>80) S PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,9)="Provider's DIAGNOSIS grouper must be 2-80 Characters^"_PXCAITEM
. E D
.. S PXCANARC=+$$PROVNARR^PXAPI(PXCAITEM,9000010.07)
.. I PXCANARC'>0 S PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,9)="Could not get pointer to Provider's DIAGNOSIS grouper^"_$P(PXCADIAG,"^",9)
.. E S $P(PXCADIAG,"^",9)=PXCANARC
;
Q
;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPXCAPOV1 1325 printed Sep 15, 2024@21:51:46 Page 2
PXCAPOV1 ;ISL/dee & LEA/Chylton - Validates data from the PCE Device Interface into PCE's PXK format for POV ;6/20/96
+1 ;;1.0;PCE PATIENT CARE ENCOUNTER;;Aug 12, 1996
+2 QUIT
+3 ; Variables
+4 ; PXCADIAG Copy of a Diagnosis node of the PXCA array
+5 ; PXCAPRV Pointer to the provider (200)
+6 ; PXCANUMB Count of the number if POVs
+7 ; PXCAINDX Count of the number of Diagnosis for one provider
+8 ;
PART1 ;
+1 SET PXCAITEM=$PIECE(PXCADIAG,"^",8)
SET PXCAITM2=$LENGTH(PXCAITEM)
+2 IF PXCAITM2<2!(PXCAITM2>80)
SET PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,8)="Provider's DIAGNOSIS term must be 2-80 Characters^"_PXCAITEM
+3 IF '$TEST
Begin DoDot:1
+4 SET PXCAPNAR=+$$PROVNARR^PXAPI(PXCAITEM,9000010.07,$GET(PXCACLEX))
+5 IF PXCAPNAR'>0
SET PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,8)="Could not get pointer to Provider's DIAGNOSIS term^"_$PIECE(PXCADIAG,"^",8)
+6 IF '$TEST
SET $PIECE(PXCADIAG,"^",8)=PXCAPNAR
End DoDot:1
+7 SET PXCAITEM=$PIECE(PXCADIAG,"^",9)
SET PXCAITM2=$LENGTH(PXCAITEM)
+8 IF PXCAITM2>0
Begin DoDot:1
+9 IF PXCAITM2<2!(PXCAITM2>80)
SET PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,9)="Provider's DIAGNOSIS grouper must be 2-80 Characters^"_PXCAITEM
+10 IF '$TEST
Begin DoDot:2
+11 SET PXCANARC=+$$PROVNARR^PXAPI(PXCAITEM,9000010.07)
+12 IF PXCANARC'>0
SET PXCA("ERROR","DIAGNOSIS",PXCAPRV,PXCAINDX,9)="Could not get pointer to Provider's DIAGNOSIS grouper^"_$PIECE(PXCADIAG,"^",9)
+13 IF '$TEST
SET $PIECE(PXCADIAG,"^",9)=PXCANARC
End DoDot:2
End DoDot:1
+14 ;
+15 QUIT
+16 ;