- PXCACPT ;ISL/dee & LEA/Chylton,SCK - Validates & Translates data from the PCE Device Interface into PCE's PXK format for CPTs ;5/24/04 3:51pm
- ;;1.0;PCE PATIENT CARE ENCOUNTER;**27,33,73,121,124,194,199**;Aug 12, 1996;Build 51
- Q
- ; Variables
- ; PXCAPROC Copy of a Procedure node of the PXCA array
- ; PXCAPRV Pointer to the provider (200)
- ; PXCANUMB Count of the number of CPTs and treatments
- ; PXCAINDX Count of the number of procedures for one provider
- ; PXCAPNAR Pointer to the provider narrative (9999999.27)
- ; PXCATRT Pointer to the Treatment file (9999999.17)
- ;
- PROC(PXCA,PXCABULD,PXCAERRS,PXCAEVAL) ;
- I '$D(PXCA("PROCEDURE")),'PXCAEVAL,$P($G(^PX(815,1,"DI")),"^",1),'$D(^AUPNVCPT("AD",+PXCAVSIT)) S PXCA("WARNING","PROCEDURE",0,0,0)="PROCEDURE data missing" Q
- N PXCAINDX,PXCAITEM,PXCALEN,PXCANARC,PXCANUMB,PXCAPNAR,PXCAPROC,PXCAPRV,PXDXDATE
- S PXDXDATE=$$CSDATE^PXDXUTL(PXCAVSIT) ; Date to use in $$ICDDATA^ICDXCODE calls
- S PXCAPRV="",PXCANUMB=1
- F S PXCAPRV=$O(PXCA("PROCEDURE",PXCAPRV)) Q:PXCAPRV']"" D
- . I PXCAPRV>0 D
- .. I '$$ACTIVPRV^PXAPI(PXCAPRV,PXCADT) S PXCA("ERROR","PROCEDURE",PXCAPRV,0,0)="Provider is not active or valid^"_PXCAPRV
- . I '$T&PXCABULD!PXCAERRS D ANOTHPRV^PXCAPRV(PXCAPRV)
- . S PXCAINDX=0
- . F S PXCAINDX=$O(PXCA("PROCEDURE",PXCAPRV,PXCAINDX)) Q:PXCAINDX']"" D
- .. N PXCATRT
- .. S PXCANUMB=PXCANUMB+1
- .. S PXCAPROC=$G(PXCA("PROCEDURE",PXCAPRV,PXCAINDX))
- .. I PXCAPROC="" S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,0)="PROCEDURE data missing" Q
- .. S PXCAITEM=$P(PXCAPROC,U,1)
- .. I PXCAITEM]"" D
- ... S D=$$CPT^ICPTCOD(+PXCAITEM)
- ... I D<0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,1)="CPT code not in File 81^"_PXCAITEM
- ... E I '(+$$CPTSCREN^PXBUTL(PXCAITEM,+PXCADT)) S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,1)="CPT code is INACTIVE^"_PXCAITEM
- .. E D
- ... S PXCATRT=$O(^AUTTTRT("B",+$P(PXCAPROC,"^",6),""))
- ... S:PXCATRT="" PXCATRT=$O(^AUTTTRT("B","OTHER",""))
- ... I 'PXCATRT S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,6)="Could not get pointer to treatment term^"_$P(PXCAPROC,"^",6)
- .. S PXCAITEM=$P(PXCAPROC,U,2)
- .. I PXCAITEM="" S PXCAITEM=1,$P(PXCAPROC,U,2)=PXCAITEM
- .. I PXCAITEM'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,2)="CPT Quantity must be > 0^"_PXCAITEM
- .. S PXCAITEM=$P(PXCAPROC,U,3)
- .. I '(PXCAITEM=""!(PXCAITEM="P")!(PXCAITEM="S")) S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,3)="Specification code must be P|S^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,5)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,5)="Associated Primary Diagnosis ICD Code not in File 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,1)="Associated Primary Diagnosis ICD code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,8)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,8)="Associated Diagnosis 2 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,8)="Associated Diagnosis 2 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,9)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,9)="Associated Diagnosis 3 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,9)="Associated Diagnosis 3 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,10)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,10)="Associated Diagnosis 4 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,10)="Associated Diagnosis 4 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,11)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,11)="Associated Diagnosis 5 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,11)="Associated Diagnosis 5 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,12)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,12)="Associated Diagnosis 6 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,12)="Associated Diagnosis 6 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,13)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,13)="Associated Diagnosis 7 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,13)="Associated Diagnosis 7 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=+$P(PXCAPROC,U,14)
- .. I PXCAITEM D
- ... S D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- ... I $P(D,U,1)'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,14)="Associated Diagnosis 8 ICD Code not in file 80^"_PXCAITEM
- ... E I $P(D,U,10)'=1 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,14)="Associated Diagnosis 8 ICD Code is INACTIVE^"_PXCAITEM
- .. S PXCAITEM=$P(PXCAPROC,U,6),PXCALEN=$L(PXCAITEM)
- .. I PXCALEN<2!(PXCALEN>80) S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,6)="Provider's PROCEDURE term must be 2-80 Characters^"_PXCAITEM
- .. E D
- ... S PXCAPNAR=+$$PROVNARR^PXAPI(PXCAITEM,$S($P(PXCAPROC,"^",1)="":9000010.15,1:9000010.18))
- ... I PXCAPNAR'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,6)="Could not get pointer to Provider's PROCEDURE term^"_$P(PXCAPROC,"^",6) Q:'PXCAERRS
- ... S $P(PXCAPROC,"^",6)=PXCAPNAR
- .. S PXCAITEM=$P(PXCAPROC,U,7),PXCALEN=$L(PXCAITEM)
- .. I PXCALEN>0 D
- ... I PXCALEN<2!(PXCALEN>80) S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,7)="Provider's PROCEDURE grouper must be 2-80 Characters^"_PXCAITEM
- ... E D
- .... S PXCANARC=+$$PROVNARR^PXAPI(PXCAITEM,$S($P(PXCAPROC,"^",1)="":9000010.15,1:9000010.18))
- .... I PXCANARC'>0 S PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,7)="Could not get pointer to Provider's PROCEDURE grouper^"_PXCAITEM
- .... E S $P(PXCAPROC,"^",7)=PXCANARC
- .. I PXCABULD&'$D(PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX))!PXCAERRS D
- ... I $P(PXCAPROC,"^",1)]"" D
- .... D CPT^PXCACPT1(.PXCA,PXCAPROC,PXCANUMB,PXCAPRV,PXCAINDX,PXCAERRS)
- ... E D TRT^PXCATRT(PXCAPROC,PXCANUMB,PXCAPRV,PXCAINDX,PXCAERRS,PXCATRT)
- Q
- ;
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPXCACPT 6674 printed Jan 18, 2025@03:28:26 Page 2
- PXCACPT ;ISL/dee & LEA/Chylton,SCK - Validates & Translates data from the PCE Device Interface into PCE's PXK format for CPTs ;5/24/04 3:51pm
- +1 ;;1.0;PCE PATIENT CARE ENCOUNTER;**27,33,73,121,124,194,199**;Aug 12, 1996;Build 51
- +2 QUIT
- +3 ; Variables
- +4 ; PXCAPROC Copy of a Procedure node of the PXCA array
- +5 ; PXCAPRV Pointer to the provider (200)
- +6 ; PXCANUMB Count of the number of CPTs and treatments
- +7 ; PXCAINDX Count of the number of procedures for one provider
- +8 ; PXCAPNAR Pointer to the provider narrative (9999999.27)
- +9 ; PXCATRT Pointer to the Treatment file (9999999.17)
- +10 ;
- PROC(PXCA,PXCABULD,PXCAERRS,PXCAEVAL) ;
- +1 IF '$DATA(PXCA("PROCEDURE"))
- IF 'PXCAEVAL
- IF $PIECE($GET(^PX(815,1,"DI")),"^",1)
- IF '$DATA(^AUPNVCPT("AD",+PXCAVSIT))
- SET PXCA("WARNING","PROCEDURE",0,0,0)="PROCEDURE data missing"
- QUIT
- +2 NEW PXCAINDX,PXCAITEM,PXCALEN,PXCANARC,PXCANUMB,PXCAPNAR,PXCAPROC,PXCAPRV,PXDXDATE
- +3 ; Date to use in $$ICDDATA^ICDXCODE calls
- SET PXDXDATE=$$CSDATE^PXDXUTL(PXCAVSIT)
- +4 SET PXCAPRV=""
- SET PXCANUMB=1
- +5 FOR
- SET PXCAPRV=$ORDER(PXCA("PROCEDURE",PXCAPRV))
- if PXCAPRV']""
- QUIT
- Begin DoDot:1
- +6 IF PXCAPRV>0
- Begin DoDot:2
- +7 IF '$$ACTIVPRV^PXAPI(PXCAPRV,PXCADT)
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,0,0)="Provider is not active or valid^"_PXCAPRV
- End DoDot:2
- +8 IF '$TEST&PXCABULD!PXCAERRS
- DO ANOTHPRV^PXCAPRV(PXCAPRV)
- +9 SET PXCAINDX=0
- +10 FOR
- SET PXCAINDX=$ORDER(PXCA("PROCEDURE",PXCAPRV,PXCAINDX))
- if PXCAINDX']""
- QUIT
- Begin DoDot:2
- +11 NEW PXCATRT
- +12 SET PXCANUMB=PXCANUMB+1
- +13 SET PXCAPROC=$GET(PXCA("PROCEDURE",PXCAPRV,PXCAINDX))
- +14 IF PXCAPROC=""
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,0)="PROCEDURE data missing"
- QUIT
- +15 SET PXCAITEM=$PIECE(PXCAPROC,U,1)
- +16 IF PXCAITEM]""
- Begin DoDot:3
- +17 SET D=$$CPT^ICPTCOD(+PXCAITEM)
- +18 IF D<0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,1)="CPT code not in File 81^"_PXCAITEM
- +19 IF '$TEST
- IF '(+$$CPTSCREN^PXBUTL(PXCAITEM,+PXCADT))
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,1)="CPT code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +20 IF '$TEST
- Begin DoDot:3
- +21 SET PXCATRT=$ORDER(^AUTTTRT("B",+$PIECE(PXCAPROC,"^",6),""))
- +22 if PXCATRT=""
- SET PXCATRT=$ORDER(^AUTTTRT("B","OTHER",""))
- +23 IF 'PXCATRT
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,6)="Could not get pointer to treatment term^"_$PIECE(PXCAPROC,"^",6)
- End DoDot:3
- +24 SET PXCAITEM=$PIECE(PXCAPROC,U,2)
- +25 IF PXCAITEM=""
- SET PXCAITEM=1
- SET $PIECE(PXCAPROC,U,2)=PXCAITEM
- +26 IF PXCAITEM'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,2)="CPT Quantity must be > 0^"_PXCAITEM
- +27 SET PXCAITEM=$PIECE(PXCAPROC,U,3)
- +28 IF '(PXCAITEM=""!(PXCAITEM="P")!(PXCAITEM="S"))
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,3)="Specification code must be P|S^"_PXCAITEM
- +29 SET PXCAITEM=+$PIECE(PXCAPROC,U,5)
- +30 IF PXCAITEM
- Begin DoDot:3
- +31 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +32 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,5)="Associated Primary Diagnosis ICD Code not in File 80^"_PXCAITEM
- +33 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,1)="Associated Primary Diagnosis ICD code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +34 SET PXCAITEM=+$PIECE(PXCAPROC,U,8)
- +35 IF PXCAITEM
- Begin DoDot:3
- +36 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +37 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,8)="Associated Diagnosis 2 ICD Code not in file 80^"_PXCAITEM
- +38 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,8)="Associated Diagnosis 2 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +39 SET PXCAITEM=+$PIECE(PXCAPROC,U,9)
- +40 IF PXCAITEM
- Begin DoDot:3
- +41 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +42 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,9)="Associated Diagnosis 3 ICD Code not in file 80^"_PXCAITEM
- +43 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,9)="Associated Diagnosis 3 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +44 SET PXCAITEM=+$PIECE(PXCAPROC,U,10)
- +45 IF PXCAITEM
- Begin DoDot:3
- +46 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +47 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,10)="Associated Diagnosis 4 ICD Code not in file 80^"_PXCAITEM
- +48 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,10)="Associated Diagnosis 4 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +49 SET PXCAITEM=+$PIECE(PXCAPROC,U,11)
- +50 IF PXCAITEM
- Begin DoDot:3
- +51 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +52 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,11)="Associated Diagnosis 5 ICD Code not in file 80^"_PXCAITEM
- +53 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,11)="Associated Diagnosis 5 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +54 SET PXCAITEM=+$PIECE(PXCAPROC,U,12)
- +55 IF PXCAITEM
- Begin DoDot:3
- +56 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +57 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,12)="Associated Diagnosis 6 ICD Code not in file 80^"_PXCAITEM
- +58 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,12)="Associated Diagnosis 6 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +59 SET PXCAITEM=+$PIECE(PXCAPROC,U,13)
- +60 IF PXCAITEM
- Begin DoDot:3
- +61 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +62 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,13)="Associated Diagnosis 7 ICD Code not in file 80^"_PXCAITEM
- +63 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,13)="Associated Diagnosis 7 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +64 SET PXCAITEM=+$PIECE(PXCAPROC,U,14)
- +65 IF PXCAITEM
- Begin DoDot:3
- +66 SET D=$$ICDDATA^ICDXCODE("DIAG",PXCAITEM,PXDXDATE,"I")
- +67 IF $PIECE(D,U,1)'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,14)="Associated Diagnosis 8 ICD Code not in file 80^"_PXCAITEM
- +68 IF '$TEST
- IF $PIECE(D,U,10)'=1
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,14)="Associated Diagnosis 8 ICD Code is INACTIVE^"_PXCAITEM
- End DoDot:3
- +69 SET PXCAITEM=$PIECE(PXCAPROC,U,6)
- SET PXCALEN=$LENGTH(PXCAITEM)
- +70 IF PXCALEN<2!(PXCALEN>80)
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,6)="Provider's PROCEDURE term must be 2-80 Characters^"_PXCAITEM
- +71 IF '$TEST
- Begin DoDot:3
- +72 SET PXCAPNAR=+$$PROVNARR^PXAPI(PXCAITEM,$SELECT($PIECE(PXCAPROC,"^",1)="":9000010.15,1:9000010.18))
- +73 IF PXCAPNAR'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,6)="Could not get pointer to Provider's PROCEDURE term^"_$PIECE(PXCAPROC,"^",6)
- if 'PXCAERRS
- QUIT
- +74 SET $PIECE(PXCAPROC,"^",6)=PXCAPNAR
- End DoDot:3
- +75 SET PXCAITEM=$PIECE(PXCAPROC,U,7)
- SET PXCALEN=$LENGTH(PXCAITEM)
- +76 IF PXCALEN>0
- Begin DoDot:3
- +77 IF PXCALEN<2!(PXCALEN>80)
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,7)="Provider's PROCEDURE grouper must be 2-80 Characters^"_PXCAITEM
- +78 IF '$TEST
- Begin DoDot:4
- +79 SET PXCANARC=+$$PROVNARR^PXAPI(PXCAITEM,$SELECT($PIECE(PXCAPROC,"^",1)="":9000010.15,1:9000010.18))
- +80 IF PXCANARC'>0
- SET PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX,7)="Could not get pointer to Provider's PROCEDURE grouper^"_PXCAITEM
- +81 IF '$TEST
- SET $PIECE(PXCAPROC,"^",7)=PXCANARC
- End DoDot:4
- End DoDot:3
- +82 IF PXCABULD&'$DATA(PXCA("ERROR","PROCEDURE",PXCAPRV,PXCAINDX))!PXCAERRS
- Begin DoDot:3
- +83 IF $PIECE(PXCAPROC,"^",1)]""
- Begin DoDot:4
- +84 DO CPT^PXCACPT1(.PXCA,PXCAPROC,PXCANUMB,PXCAPRV,PXCAINDX,PXCAERRS)
- End DoDot:4
- +85 IF '$TEST
- DO TRT^PXCATRT(PXCAPROC,PXCANUMB,PXCAPRV,PXCAINDX,PXCAERRS,PXCATRT)
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +86 QUIT
- +87 ;