SROPCE0 ;BIR/ADM - PCE FILING STATUS REPORT ;03/17/05
;;3.0; Surgery ;**58,62,69,77,50,119,142**;24 Jun 93
W @IOF,!,?26,"Report of PCE Filing Status",!!,"This report displays the filing status of completed cases performed during the",!,"selected date range.",!
S (SRFLG,SRSOUT)=0,SRSPEC=""
ASK W ! K DIR S DIR("A",1)="Print PCE filing status of completed cases for",DIR("A",2)="",DIR("A",3)="1. O.R. Surgical Procedures",DIR("A",4)="2. Non-O.R. Procedures"
S DIR("A",5)="3. Both O.R. Surgical Procedures and Non-O.R. Procedures (All Specialties)",DIR("A",6)="",DIR("A")="Select Number (1, 2 or 3): ",DIR("B")="1"
S DIR(0)="NA^1:3:0" D ^DIR K DIR I $D(DTOUT)!$D(DUOUT) S SRSOUT=1 G END
S SRFLG=Y I SRFLG=1 D SPEC G:SRSOUT END
I SRFLG=2 D MSP G:SRSOUT END
DATE D DATE^SROUTL(.SDATE,.EDATE,.SRSOUT) G:SRSOUT END
FORM W ! K DIR S DIR("A")="Print the long form or the short form ? ",DIR("B")="SHORT",DIR(0)="SAM^L:LONG;S:SHORT" D ^DIR K DIR I $D(DTOUT)!$D(DUOUT) S SRSOUT=1 G END
S SRFORM=Y I Y="L" W !!,"This report is designed to use a 132 column format."
W ! K %ZIS,IOP,IO("Q"),POP S %ZIS("A")="Print the PCE Filing Status Report to which Printer ? ",%ZIS="Q" D ^%ZIS I POP S SRSOUT=1 G END
I $D(IO("Q")) K IO("Q") S ZTDESC="PCE FILING STATUS REPORT",(ZTSAVE("EDATE"),ZTSAVE("SRFORM"),ZTSAVE("SDATE"),ZTSAVE("SRSITE*"),ZTSAVE("SRSPEC*"),ZTSAVE("SRFLG"))="",ZTRTN="EN^SROPCE0" D ^%ZTLOAD S SRSOUT=1 G END
EN U IO S SRSOUT=0,(SRHDR,SRPAGE)=1,SRSDT=SDATE-.0001,SRSEDT=EDATE+.9999,Y=SDATE X ^DD("DD") S STARTDT=Y,Y=EDATE X ^DD("DD") S ENDATE=Y F I=1:1:6 S CNT(I)=0
S SRRPT="PCE FILING STATUS REPORT",SRTITLE="For Completed "_$S(SRFLG=1:"O.R. Surgical Procedures",SRFLG=2:"Non-O.R. Procedures",1:"O.R. Surgical and Non-O.R. Procedures"),SRFRTO="From: "_STARTDT_" To: "_ENDATE
S SRINST=SRSITE("SITE") D NOW^%DTC S Y=$E(%,1,12) X ^DD("DD") S SRPRINT="Report Printed: "_Y
I SRFORM="L" D ^SROPCE0A G END
D ^SROPCE0B
END W:$E(IOST)="P" @IOF I $D(ZTQUEUED) Q:$G(ZTSTOP) S ZTREQ="@" Q
I 'SRSOUT,$E(IOST)'="P" W !!,"Press RETURN to continue " R X:DTIME
D ^%ZISC K SRDIV,SRDX,SRFCPT,SRFICD,SRFRTO,SRINOUT,SRPARAM,SRPODX,SRQCPT,SRQICD,SRRPT,SRSCHED,SRSPS,SRSR,SRTN,SRUCPT,SRUICD D ^SRSKILL W @IOF
Q
SPEC W @IOF,! S DIR("?",1)="Enter YES if you would like the report printed for all Surgical Specialties",DIR("?")="or enter NO to select a specific specialty."
S DIR("A")="Do you want the report for all Surgical Specialties ? ",DIR("B")="YES",DIR(0)="YA" D ^DIR K DIR I $D(DTOUT)!$D(DUOUT) S SRSOUT=1 Q
I 'Y W ! K DIC S DIC=137.45,DIC(0)="QEAMZ",DIC("A")="Select Surgical Specialty: ",DIC("S")="I '$P(^(0),""^"",3)" D ^DIC K DIC S:Y<0 SRSOUT=1 Q:Y<0 S SRSPEC=+Y,SRSPECN=$P(Y(0),"^")
Q
MSP W @IOF,! S DIR("?",1)="Enter YES if you would like the report printed for all Medical Specialties",DIR("?")="or enter NO to select a specific specialty."
S DIR("A")="Do you want the report for all Medical Specialties ? ",DIR("B")="YES",DIR(0)="YA" D ^DIR K DIR I $D(DTOUT)!$D(DUOUT) S SRSOUT=1 Q
I 'Y W ! K DIC S DIC=723,DIC(0)="QEAMZ",DIC("A")="Select Medical Specialty: " D ^DIC K DIC S:Y<0 SRSOUT=1 Q:Y<0 S SRSPEC=+Y,SRSPECN=$P(Y(0),"^")
Q
CHK ; set up array of fields missing data
K SRX,DA,DIC,DIQ,DR,SRY S DIC="^SRF(",DA=SRTN,DIQ="SRY",DIQ(0)="I" D D EN^DIQ1
.I SRNON S DR="119;121;122;123;"_$S(SRSR'=0:"124;",1:"")_"125;"
.I 'SRNON S DR=".04;.14;"_$S(SRSR'=0:".164;",1:"")_".205;.232;"
.I $P(^SRO(133,SRSITE,0),"^",16) S DR=DR_".0155;"
.I SRSTATUS=5 S DR=DR_".011;"
D CLINIC
S SRZ=0 F S SRZ=$O(SRY(130,SRTN,SRZ)) Q:'SRZ I SRY(130,SRTN,SRZ,"I")="" D TR S X=$T(@SRP),SRFLD=$P(X,";;",2),SRX(SRZ)=$P(SRFLD,"^",2)
I '$P($G(^SRO(136,SRTN,0)),"^",2) S SRX(.02)="PRINCIPAL PROCEDURE CODE"
I '$P($G(^SRO(136,SRTN,0)),"^",3) S SRX(.03)="PRIN POSTOP DIAGNOSIS CODE"
OTH S SROTH=0,SROTH=$O(^SRO(136,SRTN,2,SROTH)) I SROTH="" S SRX(99998)="PRIN PROCEDURE CODE MISSING ASSOCIATED DIAGNOSIS CODE"
S SROTH=0 F S SROTH=$O(^SRO(136,SRTN,3,SROTH)) Q:'SROTH D
.I '$D(^SRO(136,SRTN,3,SROTH,2)) S SRX(99999)="OTHER PROCEDURE CPT MISSING ASSOCIATED DIAGNOSIS ICD CODE" Q
.S SRZ=0 S SRZ=$O(^SRO(136,SRTN,3,SROTH,2,SRZ)) I 'SRZ S SRX(99999)="OTHER PROCEDURE CPT MISSING ASSOCIATED DIAGNOSIS ICD CODE" Q
Q
CLINIC N SRCLINIC S SRCLINIC=$P(^SRF(SRTN,0),"^",21) D
.I SRNON S:SRCLINIC="" SRCLINIC=$P(^SRF(SRTN,"NON"),"^",2) Q
.S:SRCLINIC="" SRCLINIC=$P(^SRO(137.45,$P(^SRF(SRTN,0),"^",4),0),"^",5) I SRCLINIC="",$P(^SRF(SRTN,0),"^",2) S SRCLINIC=$P(^SRS($P(^SRF(SRTN,0),"^",2),0),"^")
I SRCLINIC,'$$CLINIC^SROUTL(SRCLINIC,SRTN) S SRCLINIC=""
S SRY(130,SRTN,.021,"I")=SRCLINIC
Q
TR S SRP=SRZ,SRP=$TR(SRP,"1234567890.","ABCDEFGHIJP")
Q
PJAA ;;.011^IN/OUT-PATIENT STATUS
PJAEE ;;.0155^CLASSIFICATION INFORMATION
PJBA ;;.021^ASSOCIATED CLINIC
PJD ;;.04^SURGERY SPECIALTY
PAFD ;;.164^ATTEND SURG
PBJE ;;.205^TIME PAT IN OR
PBCB ;;.232^TIME PAT OUT OR
AAI ;;119^NON-OR LOCATION
ABA ;;121^TIME PROCEDURE BEGAN
ABB ;;122^TIME PROCEDURE ENDED
ABC ;;123^PROVIDER
ABD ;;124^ATTEND PROVIDER
ABE ;;125^MEDICAL SPECIALTY
SROPCE0 ;BIR/ADM - PCE FILING STATUS REPORT ;03/17/05
+1 ;;3.0; Surgery ;**58,62,69,77,50,119,142**;24 Jun 93
+2 WRITE @IOF,!,?26,"Report of PCE Filing Status",!!,"This report displays the filing status of completed cases performed during the",!,"selected date range.",!
+3 SET (SRFLG,SRSOUT)=0
SET SRSPEC=""
ASK WRITE !
KILL DIR
SET DIR("A",1)="Print PCE filing status of completed cases for"
SET DIR("A",2)=""
SET DIR("A",3)="1. O.R. Surgical Procedures"
SET DIR("A",4)="2. Non-O.R. Procedures"
+1 SET DIR("A",5)="3. Both O.R. Surgical Procedures and Non-O.R. Procedures (All Specialties)"
SET DIR("A",6)=""
SET DIR("A")="Select Number (1, 2 or 3): "
SET DIR("B")="1"
+2 SET DIR(0)="NA^1:3:0"
DO ^DIR
KILL DIR
IF $DATA(DTOUT)!$DATA(DUOUT)
SET SRSOUT=1
GOTO END
+3 SET SRFLG=Y
IF SRFLG=1
DO SPEC
IF SRSOUT
GOTO END
+4 IF SRFLG=2
DO MSP
IF SRSOUT
GOTO END
DATE DO DATE^SROUTL(.SDATE,.EDATE,.SRSOUT)
IF SRSOUT
GOTO END
FORM WRITE !
KILL DIR
SET DIR("A")="Print the long form or the short form ? "
SET DIR("B")="SHORT"
SET DIR(0)="SAM^L:LONG;S:SHORT"
DO ^DIR
KILL DIR
IF $DATA(DTOUT)!$DATA(DUOUT)
SET SRSOUT=1
GOTO END
+1 SET SRFORM=Y
IF Y="L"
WRITE !!,"This report is designed to use a 132 column format."
+2 WRITE !
KILL %ZIS,IOP,IO("Q"),POP
SET %ZIS("A")="Print the PCE Filing Status Report to which Printer ? "
SET %ZIS="Q"
DO ^%ZIS
IF POP
SET SRSOUT=1
GOTO END
+3 IF $DATA(IO("Q"))
KILL IO("Q")
SET ZTDESC="PCE FILING STATUS REPORT"
SET (ZTSAVE("EDATE"),ZTSAVE("SRFORM"),ZTSAVE("SDATE"),ZTSAVE("SRSITE*"),ZTSAVE("SRSPEC*"),ZTSAVE("SRFLG"))=""
SET ZTRTN="EN^SROPCE0"
DO ^%ZTLOAD
SET SRSOUT=1
GOTO END
EN USE IO
SET SRSOUT=0
SET (SRHDR,SRPAGE)=1
SET SRSDT=SDATE-.0001
SET SRSEDT=EDATE+.9999
SET Y=SDATE
XECUTE ^DD("DD")
SET STARTDT=Y
SET Y=EDATE
XECUTE ^DD("DD")
SET ENDATE=Y
FOR I=1:1:6
SET CNT(I)=0
+1 SET SRRPT="PCE FILING STATUS REPORT"
SET SRTITLE="For Completed "_$SELECT(SRFLG=1:"O.R. Surgical Procedures",SRFLG=2:"Non-O.R. Procedures",1:"O.R. Surgical and Non-O.R. Procedures")
SET SRFRTO="From: "_STARTDT_" To: "_ENDATE
+2 SET SRINST=SRSITE("SITE")
DO NOW^%DTC
SET Y=$EXTRACT(%,1,12)
XECUTE ^DD("DD")
SET SRPRINT="Report Printed: "_Y
+3 IF SRFORM="L"
DO ^SROPCE0A
GOTO END
+4 DO ^SROPCE0B
END IF $EXTRACT(IOST)="P"
WRITE @IOF
IF $DATA(ZTQUEUED)
IF $GET(ZTSTOP)
QUIT
SET ZTREQ="@"
QUIT
+1 IF 'SRSOUT
IF $EXTRACT(IOST)'="P"
WRITE !!,"Press RETURN to continue "
READ X:DTIME
+2 DO ^%ZISC
KILL SRDIV,SRDX,SRFCPT,SRFICD,SRFRTO,SRINOUT,SRPARAM,SRPODX,SRQCPT,SRQICD,SRRPT,SRSCHED,SRSPS,SRSR,SRTN,SRUCPT,SRUICD
DO ^SRSKILL
WRITE @IOF
+3 QUIT
SPEC WRITE @IOF,!
SET DIR("?",1)="Enter YES if you would like the report printed for all Surgical Specialties"
SET DIR("?")="or enter NO to select a specific specialty."
+1 SET DIR("A")="Do you want the report for all Surgical Specialties ? "
SET DIR("B")="YES"
SET DIR(0)="YA"
DO ^DIR
KILL DIR
IF $DATA(DTOUT)!$DATA(DUOUT)
SET SRSOUT=1
QUIT
+2 IF 'Y
WRITE !
KILL DIC
SET DIC=137.45
SET DIC(0)="QEAMZ"
SET DIC("A")="Select Surgical Specialty: "
SET DIC("S")="I '$P(^(0),""^"",3)"
DO ^DIC
KILL DIC
IF Y<0
SET SRSOUT=1
IF Y<0
QUIT
SET SRSPEC=+Y
SET SRSPECN=$PIECE(Y(0),"^")
+3 QUIT
MSP WRITE @IOF,!
SET DIR("?",1)="Enter YES if you would like the report printed for all Medical Specialties"
SET DIR("?")="or enter NO to select a specific specialty."
+1 SET DIR("A")="Do you want the report for all Medical Specialties ? "
SET DIR("B")="YES"
SET DIR(0)="YA"
DO ^DIR
KILL DIR
IF $DATA(DTOUT)!$DATA(DUOUT)
SET SRSOUT=1
QUIT
+2 IF 'Y
WRITE !
KILL DIC
SET DIC=723
SET DIC(0)="QEAMZ"
SET DIC("A")="Select Medical Specialty: "
DO ^DIC
KILL DIC
IF Y<0
SET SRSOUT=1
IF Y<0
QUIT
SET SRSPEC=+Y
SET SRSPECN=$PIECE(Y(0),"^")
+3 QUIT
CHK ; set up array of fields missing data
+1 KILL SRX,DA,DIC,DIQ,DR,SRY
SET DIC="^SRF("
SET DA=SRTN
SET DIQ="SRY"
SET DIQ(0)="I"
Begin DoDot:1
+2 IF SRNON
SET DR="119;121;122;123;"_$SELECT(SRSR'=0:"124;",1:"")_"125;"
+3 IF 'SRNON
SET DR=".04;.14;"_$SELECT(SRSR'=0:".164;",1:"")_".205;.232;"
+4 IF $PIECE(^SRO(133,SRSITE,0),"^",16)
SET DR=DR_".0155;"
+5 IF SRSTATUS=5
SET DR=DR_".011;"
End DoDot:1
DO EN^DIQ1
+6 DO CLINIC
+7 SET SRZ=0
FOR
SET SRZ=$ORDER(SRY(130,SRTN,SRZ))
IF 'SRZ
QUIT
IF SRY(130,SRTN,SRZ,"I")=""
DO TR
SET X=$TEXT(@SRP)
SET SRFLD=$PIECE(X,";;",2)
SET SRX(SRZ)=$PIECE(SRFLD,"^",2)
+8 IF '$PIECE($GET(^SRO(136,SRTN,0)),"^",2)
SET SRX(.02)="PRINCIPAL PROCEDURE CODE"
+9 IF '$PIECE($GET(^SRO(136,SRTN,0)),"^",3)
SET SRX(.03)="PRIN POSTOP DIAGNOSIS CODE"
OTH SET SROTH=0
SET SROTH=$ORDER(^SRO(136,SRTN,2,SROTH))
IF SROTH=""
SET SRX(99998)="PRIN PROCEDURE CODE MISSING ASSOCIATED DIAGNOSIS CODE"
+1 SET SROTH=0
FOR
SET SROTH=$ORDER(^SRO(136,SRTN,3,SROTH))
IF 'SROTH
QUIT
Begin DoDot:1
+2 IF '$DATA(^SRO(136,SRTN,3,SROTH,2))
SET SRX(99999)="OTHER PROCEDURE CPT MISSING ASSOCIATED DIAGNOSIS ICD CODE"
QUIT
+3 SET SRZ=0
SET SRZ=$ORDER(^SRO(136,SRTN,3,SROTH,2,SRZ))
IF 'SRZ
SET SRX(99999)="OTHER PROCEDURE CPT MISSING ASSOCIATED DIAGNOSIS ICD CODE"
QUIT
End DoDot:1
+4 QUIT
CLINIC NEW SRCLINIC
SET SRCLINIC=$PIECE(^SRF(SRTN,0),"^",21)
Begin DoDot:1
+1 IF SRNON
IF SRCLINIC=""
SET SRCLINIC=$PIECE(^SRF(SRTN,"NON"),"^",2)
QUIT
+2 IF SRCLINIC=""
SET SRCLINIC=$PIECE(^SRO(137.45,$PIECE(^SRF(SRTN,0),"^",4),0),"^",5)
IF SRCLINIC=""
IF $PIECE(^SRF(SRTN,0),"^",2)
SET SRCLINIC=$PIECE(^SRS($PIECE(^SRF(SRTN,0),"^",2),0),"^")
End DoDot:1
+3 IF SRCLINIC
IF '$$CLINIC^SROUTL(SRCLINIC,SRTN)
SET SRCLINIC=""
+4 SET SRY(130,SRTN,.021,"I")=SRCLINIC
+5 QUIT
TR SET SRP=SRZ
SET SRP=$TRANSLATE(SRP,"1234567890.","ABCDEFGHIJP")
+1 QUIT
PJAA ;;.011^IN/OUT-PATIENT STATUS
PJAEE ;;.0155^CLASSIFICATION INFORMATION
PJBA ;;.021^ASSOCIATED CLINIC
PJD ;;.04^SURGERY SPECIALTY
PAFD ;;.164^ATTEND SURG
PBJE ;;.205^TIME PAT IN OR
PBCB ;;.232^TIME PAT OUT OR
AAI ;;119^NON-OR LOCATION
ABA ;;121^TIME PROCEDURE BEGAN
ABB ;;122^TIME PROCEDURE ENDED
ABC ;;123^PROVIDER
ABD ;;124^ATTEND PROVIDER
ABE ;;125^MEDICAL SPECIALTY