- DENTA ;ISC2/SAW,HAG-DENTAL SERVICE REPORTS OPTIONS ;10/23/90 14:37 ;
- ;;1.2;DENTAL;**8,24**;JAN 26 1989
- S %O="OPT"
- D:'$D(DT) DT^DICRW S U="^",S=";",O=$T(@(%O)),DENTV=$$VERSION^XPDUTL("DENT") I $D(^DOPT($P(O,S,5),"VERSION")),(DENTV=^DOPT($P(O,S,5),"VERSION")) G IN
- K ^DOPT($P(O,S,5))
- F I=1:1 Q:$T(@(%O)+I)="" S ^DOPT($P(O,S,5),I,0)=$P($T(@(%O)+I),S,3),^DOPT($P(O,S,5),"B",$P($P($T(@(%O)+I),S,3),"^",1),I)=""
- S K=I-1,^DOPT($P(O,S,5),0)=$P(O,S,4)_U_1_U_K_U_K K I,K,X S ^DOPT($P(O,S,5),"VERSION")=DENTV
- IN I $P(O,S,6)'="" D @($P(O,S,6))
- PR S O=$T(@(%O)),S=";" S IOP=$I D ^%ZIS W:IOST'["PK-" @IOF K IOP
- I $P(O,S,7)'="" D @($P(O,S,7))
- E W !!,$P(O,S,3),":",!,$$VERSION^XPDUTL("DENT")," ",$P($T(+1),S,1),!!,$P(O,S,4),"S:",!
- F J=1:1 Q:'$D(^DOPT($P(O,S,5),J,0)) S K=$S(J<10:15,1:14) W !,?K,J,". ",$P(^DOPT($P(O,S,5),J,0),U,1)
- RE W ! S DIC("A")="Select "_$P($T(OPT),S,4)_": EXIT// ",DIC="^DOPT("_""""_$P($T(OPT),S,5)_""""_",",DIC(0)="AEQMN" D ^DIC G:X=""!(X=U) EXIT G:Y<0 RE K DIC,J,O D @($P($T(OPT+Y),S,4)) G PR
- ADM S X1=3,X3=223,X4="I $P(^(0),""^"",29)=DENTSTA" D REL G EXIT:Y<0,ADM
- PERS S X1=4,X3=224,X4="I $P(^(0),""^"",10)=DENTSTA" D REL G EXIT:Y<0,PERS
- FEE S X1=5,X3=222,X4="I $P(^(0),""^"",28)=DENTSTA" D REL G EXIT:Y<0,FEE
- REL W !! S U="^",Z1=0 G:'$D(^DENT(225,0)) W F Z3=0:1:2 S Z1=$O(^(Z1)) Q:Z1'>0 S Z2=Z1
- G:Z3=0 W I Z3>1 S DIC="^DENT(225,",DIC(0)="AEMNQ",DIC("A")="Select STATION.DIVISION: " S:$D(DENTSTA) DIC("B")=$S(DENTSTA[" ":+DENTSTA,1:DENTSTA) D ^DIC Q:Y<0 K DIC("A"),DIC("B")
- S Z=$S(Z3=1:Z2,1:+Y) S DENTSTA=$P(^DENT(225,Z,0),U,1) I DENTSTA="" S Y=-1 G W
- S DIC="^DENT("_X3_",",DIC(0)="AEMQZ",DIC("S")=X4 D ^DIC Q:Y<0 K DIC("S")
- S Z=$P(Y(0),U,1),Z1=1700+$E(Z,1,3),Z=+$E(Z,4,5)+2,Z=$P($T(DATE),";",Z),Z1=Z_" "_Z1,DENTY0=Y(0)
- S X2="^DENTA"_X1,%ZIS="MQ" K IO("Q") D ^%ZIS G EXIT:IO=""
- I $D(IO("Q")) S ZTRTN="QUE^DENTA",ZTSAVE("DENTSTA")="",ZTSAVE("X2")="",ZTSAVE("DENTY0")="",ZTSAVE("Z1")="",ZTSAVE("U")="" D ^%ZTLOAD K ZTSK,ZTRTN,ZTSAVE G CLOSE
- QUE U IO D @X2
- G CLOSE
- W W !!,"Stations have not been entered in the Dental Site Parameter file.",!,"You must enter a station before you can use this option" S Y=-1 Q
- DATE ;;JANUARY;FEBRUARY;MARCH;APRIL;MAY;JUNE;JULY;AUGUST;SEPTEMBER;OCTOBER;NOVEMBER;DECEMBER
- CLOSE X ^%ZIS("C") S Y=1
- EXIT K %,DENT,DENT1,DENT2,DENTSD1,DENTSTA,DENTV,DENTY0,DIC,I,S,J,O,K,X,X1,X2,X3,X4,Z,Z1,Z2,Z3 K:$D(ZTSK) ^%ZTSK(ZTSK),ZTSK Q
- OPT ;;SERVICE REPORTS;OPTION;DENTA
- ;;TREATMENT DATA SERVICE REPORT MENU;^DENTA1
- ;;CLASS I-VI ADMIN INFO (TYPE 3);ADM
- ;;PERSONNEL INFO (TYPE 4);PERS
- ;;NON CLINICAL TIME BY PROVIDER;^DENTA4A
- ;;APPLICATIONS AND DENTAL FEE (TYPE 5);FEE
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDENTA 2653 printed Jan 18, 2025@02:46:54 Page 2
- DENTA ;ISC2/SAW,HAG-DENTAL SERVICE REPORTS OPTIONS ;10/23/90 14:37 ;
- +1 ;;1.2;DENTAL;**8,24**;JAN 26 1989
- +2 SET %O="OPT"
- +3 if '$DATA(DT)
- DO DT^DICRW
- SET U="^"
- SET S=";"
- SET O=$TEXT(@(%O))
- SET DENTV=$$VERSION^XPDUTL("DENT")
- IF $DATA(^DOPT($PIECE(O,S,5),"VERSION"))
- IF (DENTV=^DOPT($PIECE(O,S,5),"VERSION"))
- GOTO IN
- +4 KILL ^DOPT($PIECE(O,S,5))
- +5 FOR I=1:1
- if $TEXT(@(%O)+I)=""
- QUIT
- SET ^DOPT($PIECE(O,S,5),I,0)=$PIECE($TEXT(@(%O)+I),S,3)
- SET ^DOPT($PIECE(O,S,5),"B",$PIECE($PIECE($TEXT(@(%O)+I),S,3),"^",1),I)=""
- +6 SET K=I-1
- SET ^DOPT($PIECE(O,S,5),0)=$PIECE(O,S,4)_U_1_U_K_U_K
- KILL I,K,X
- SET ^DOPT($PIECE(O,S,5),"VERSION")=DENTV
- IN IF $PIECE(O,S,6)'=""
- DO @($PIECE(O,S,6))
- PR SET O=$TEXT(@(%O))
- SET S=";"
- SET IOP=$IO
- DO ^%ZIS
- if IOST'["PK-"
- WRITE @IOF
- KILL IOP
- +1 IF $PIECE(O,S,7)'=""
- DO @($PIECE(O,S,7))
- +2 IF '$TEST
- WRITE !!,$PIECE(O,S,3),":",!,$$VERSION^XPDUTL("DENT")," ",$PIECE($TEXT(+1),S,1),!!,$PIECE(O,S,4),"S:",!
- +3 FOR J=1:1
- if '$DATA(^DOPT($PIECE(O,S,5),J,0))
- QUIT
- SET K=$SELECT(J<10:15,1:14)
- WRITE !,?K,J,". ",$PIECE(^DOPT($PIECE(O,S,5),J,0),U,1)
- RE WRITE !
- SET DIC("A")="Select "_$PIECE($TEXT(OPT),S,4)_": EXIT// "
- SET DIC="^DOPT("_""""_$PIECE($TEXT(OPT),S,5)_""""_","
- SET DIC(0)="AEQMN"
- DO ^DIC
- if X=""!(X=U)
- GOTO EXIT
- if Y<0
- GOTO RE
- KILL DIC,J,O
- DO @($PIECE($TEXT(OPT+Y),S,4))
- GOTO PR
- ADM SET X1=3
- SET X3=223
- SET X4="I $P(^(0),""^"",29)=DENTSTA"
- DO REL
- if Y<0
- GOTO EXIT
- GOTO ADM
- PERS SET X1=4
- SET X3=224
- SET X4="I $P(^(0),""^"",10)=DENTSTA"
- DO REL
- if Y<0
- GOTO EXIT
- GOTO PERS
- FEE SET X1=5
- SET X3=222
- SET X4="I $P(^(0),""^"",28)=DENTSTA"
- DO REL
- if Y<0
- GOTO EXIT
- GOTO FEE
- REL WRITE !!
- SET U="^"
- SET Z1=0
- if '$DATA(^DENT(225,0))
- GOTO W
- FOR Z3=0:1:2
- SET Z1=$ORDER(^(Z1))
- if Z1'>0
- QUIT
- SET Z2=Z1
- +1 if Z3=0
- GOTO W
- IF Z3>1
- SET DIC="^DENT(225,"
- SET DIC(0)="AEMNQ"
- SET DIC("A")="Select STATION.DIVISION: "
- if $DATA(DENTSTA)
- SET DIC("B")=$SELECT(DENTSTA[" ":+DENTSTA,1:DENTSTA)
- DO ^DIC
- if Y<0
- QUIT
- KILL DIC("A"),DIC("B")
- +2 SET Z=$SELECT(Z3=1:Z2,1:+Y)
- SET DENTSTA=$PIECE(^DENT(225,Z,0),U,1)
- IF DENTSTA=""
- SET Y=-1
- GOTO W
- +3 SET DIC="^DENT("_X3_","
- SET DIC(0)="AEMQZ"
- SET DIC("S")=X4
- DO ^DIC
- if Y<0
- QUIT
- KILL DIC("S")
- +4 SET Z=$PIECE(Y(0),U,1)
- SET Z1=1700+$EXTRACT(Z,1,3)
- SET Z=+$EXTRACT(Z,4,5)+2
- SET Z=$PIECE($TEXT(DATE),";",Z)
- SET Z1=Z_" "_Z1
- SET DENTY0=Y(0)
- +5 SET X2="^DENTA"_X1
- SET %ZIS="MQ"
- KILL IO("Q")
- DO ^%ZIS
- if IO=""
- GOTO EXIT
- +6 IF $DATA(IO("Q"))
- SET ZTRTN="QUE^DENTA"
- SET ZTSAVE("DENTSTA")=""
- SET ZTSAVE("X2")=""
- SET ZTSAVE("DENTY0")=""
- SET ZTSAVE("Z1")=""
- SET ZTSAVE("U")=""
- DO ^%ZTLOAD
- KILL ZTSK,ZTRTN,ZTSAVE
- GOTO CLOSE
- QUE USE IO
- DO @X2
- +1 GOTO CLOSE
- W WRITE !!,"Stations have not been entered in the Dental Site Parameter file.",!,"You must enter a station before you can use this option"
- SET Y=-1
- QUIT
- DATE ;;JANUARY;FEBRUARY;MARCH;APRIL;MAY;JUNE;JULY;AUGUST;SEPTEMBER;OCTOBER;NOVEMBER;DECEMBER
- CLOSE XECUTE ^%ZIS("C")
- SET Y=1
- EXIT KILL %,DENT,DENT1,DENT2,DENTSD1,DENTSTA,DENTV,DENTY0,DIC,I,S,J,O,K,X,X1,X2,X3,X4,Z,Z1,Z2,Z3
- if $DATA(ZTSK)
- KILL ^%ZTSK(ZTSK),ZTSK
- QUIT
- OPT ;;SERVICE REPORTS;OPTION;DENTA
- +1 ;;TREATMENT DATA SERVICE REPORT MENU;^DENTA1
- +2 ;;CLASS I-VI ADMIN INFO (TYPE 3);ADM
- +3 ;;PERSONNEL INFO (TYPE 4);PERS
- +4 ;;NON CLINICAL TIME BY PROVIDER;^DENTA4A
- +5 ;;APPLICATIONS AND DENTAL FEE (TYPE 5);FEE