- DENT ;ISC2/SAW,HAG-DENTAL PACKAGE MAIN DRIVER ; 12/22/88 3:03 PM ;
- V ;;VERSION 1.2
- S %OPT="OPT"
- SE D:'$D(DT) DT^DICRW S U="^",S=";",%O=$T(@(%OPT))
- I $D(^DOPT($P(%O,S,5),"VERSION")),($P($T(V),S,3)=^DOPT($P(%O,S,5),"VERSION")) G IN
- K ^DOPT($P(%O,S,5))
- F I=1:1 Q:$P($T(@(%OPT)+I),S,3)="" S %OP=I,^DOPT($P(%O,S,5),I,0)=$P($T(@(%OPT)+I),S,3),^DOPT($P(%O,S,5),"B",$P($P($T(@(%OPT)+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")=$P($T(V),S,3)
- IN I $P(%O,S,6)'="" D @($P(%O,S,6))
- PR Q:'$D(%OPT) S %O=$T(@(%OPT)),S=";",IOP=0 D ^%ZIS K IOP W:IOST'["PK-" @IOF
- I $P(%O,S,7)'="" D @($P(%O,S,7))
- I $P(%O,S,7)="" W !!,$P(%O,S,3),":",!,$P($T(V),S,3),$P(%O,S,5),!! I $P(%O,S,9)="" W $P(%O,S,4),"S:",!
- F J=1:1 Q:$P($T(@(%OPT)+J),S,3)="" S %OP=J,K=$S(J<10:15,1:14) I $P(%O,S,9)="" W !,?K,J,". ",$P($T(@(%OPT)+J),S,3)
- RE W ! S 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 X $P($T(@(%OPT)+Y),S,4) G PR
- EXIT I $P($T(@(%OPT)+(%OP+1)),S,4)'="" X $P($T(@(%OPT)+(%OP+1)),S,4)
- K DIC,G,J,%OP I $P(%O,S,8)'="" S %OPT=$P(%O,S,8) G SE
- OUT K DENTSTA,DIC,DR,I,J,K,O,S,X,Y,%O,%OPT Q
- INIT D:'$D(DT) DT^DICRW S:'$D(DTIME) DTIME=60 I '$D(ION) S IOP=$I D ^%ZIS K IOP Q
- OPT ;;DENTAL SERVICE MAIN MENU DRIVER;OPTION;DENT;INIT
- ;;DENTAL ACTIVITY;S %OPT="DENTE" G SE
- ;;DENTAL PATIENT INQUIRY;D ^DENTQ
- ;;ENTER/EDIT APPT. SCHEDULING AID (CPM);D ^DENTCPM
- ;;PRINT APPT. SCHEDULING AID (CPM);D PRINT^DENTCPM
- ;;PROGRAM MANAGEMENT;S %OPT="DENTPM" G SE
- ;;MAILMAN;D ^XM
- ;;;
- DENTE ;;DENTAL ACTIVITY ENTER/EDIT;OPTION;DENTE;;;OPT
- ;;ENTER DATA THRU CARD READER;D ^DENTCRD
- ;;TREATMENT DATA ENTER/EDIT (FULL SCREEN);D TREAT0^DENTE1
- ;;TREATMENT DATA ENTER/EDIT (LINE BY LINE);D TREAT^DENTE1
- ;;CLASS I-VI (TYPE 3) ADMIN INFO;D ADMIN^DENTE1
- ;;PERSONNEL INFO (TYPE 4);D PERS^DENTE1
- ;;NON CLINICAL TIME;D NCLIN^DENTE0
- ;;APPLICATIONS AND DENTAL FEE (TYPE 5);D FEE^DENTE1
- ;;DENTAL REPORTS;S %OPT="DENTP" G SE
- ;;REVIEW/RELEASE SERVICE REPORTS;D ^DENTAR
- ;;;
- DENTPM ;;PROGRAM MANAGEMENT;OPTION;DENTPM;;;OPT
- ;;PROVIDER EDIT;D PROV^DENTE3
- ;;SITE PARAMETERS EDIT;D SITE^DENTE0
- ;;TYPE OF SERVICE EDIT;D TSE^DENTE2
- ;;INITIALIZE CARD READER;D ^DENTCRDI
- ;;TREATMENT DATA ENTRY DELETE;D DELTR^DENTE1
- ;;DELETE NON CLINICAL TIME ENTRY;D DELNC^DENTE0
- ;;TREATMENT DATA ENTRY EDIT/RE-RELEASE (FULL SCREEN);D TSE1^DENTE2
- ;;TREATMENT DATA ENTRY EDIT/RE-RELEASE (LINE BY LINE);D TDRR^DENTE2
- ;;CLASS I-VI ENTRY (TYPE 3) EDIT/RE-RELEASE;D ARR^DENTE2
- ;;PERSONNEL ENTRY (TYPE 4) EDIT/RE-RELEASE;D PRR^DENTE2
- ;;APPLICATIONS AND FEE (TYPE 5) EDIT/RE-RELEASE;D FBRR^DENTE2
- ;;;
- DENTP ;;OTHER DENTAL REPORTS;OPTION;DENTP;;;DENTE
- ;;SERVICE REPORTS;D ^DENTA
- ;;SITTINGS/VISITS REPORT;D ^DENTP1
- ;;INPATIENTS REQUIRING DENTAL EXAM;D ^DENTPEX
- ;;TYPE OF SERVICE REPORT;D TOS^DENTP1
- ;;COST DISTRIBUTION REPORT;D ^DENTPCD
- ;;;
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDENT 2957 printed Feb 18, 2025@23:12:02 Page 2
- DENT ;ISC2/SAW,HAG-DENTAL PACKAGE MAIN DRIVER ; 12/22/88 3:03 PM ;
- V ;;VERSION 1.2
- +1 SET %OPT="OPT"
- SE if '$DATA(DT)
- DO DT^DICRW
- SET U="^"
- SET S=";"
- SET %O=$TEXT(@(%OPT))
- +1 IF $DATA(^DOPT($PIECE(%O,S,5),"VERSION"))
- IF ($PIECE($TEXT(V),S,3)=^DOPT($PIECE(%O,S,5),"VERSION"))
- GOTO IN
- +2 KILL ^DOPT($PIECE(%O,S,5))
- +3 FOR I=1:1
- if $PIECE($TEXT(@(%OPT)+I),S,3)=""
- QUIT
- SET %OP=I
- SET ^DOPT($PIECE(%O,S,5),I,0)=$PIECE($TEXT(@(%OPT)+I),S,3)
- SET ^DOPT($PIECE(%O,S,5),"B",$PIECE($PIECE($TEXT(@(%OPT)+I),S,3),"^",1),I)=""
- +4 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")=$PIECE($TEXT(V),S,3)
- IN IF $PIECE(%O,S,6)'=""
- DO @($PIECE(%O,S,6))
- PR if '$DATA(%OPT)
- QUIT
- SET %O=$TEXT(@(%OPT))
- SET S=";"
- SET IOP=0
- DO ^%ZIS
- KILL IOP
- if IOST'["PK-"
- WRITE @IOF
- +1 IF $PIECE(%O,S,7)'=""
- DO @($PIECE(%O,S,7))
- +2 IF $PIECE(%O,S,7)=""
- WRITE !!,$PIECE(%O,S,3),":",!,$PIECE($TEXT(V),S,3),$PIECE(%O,S,5),!!
- IF $PIECE(%O,S,9)=""
- WRITE $PIECE(%O,S,4),"S:",!
- +3 FOR J=1:1
- if $PIECE($TEXT(@(%OPT)+J),S,3)=""
- QUIT
- SET %OP=J
- SET K=$SELECT(J<10:15,1:14)
- IF $PIECE(%O,S,9)=""
- WRITE !,?K,J,". ",$PIECE($TEXT(@(%OPT)+J),S,3)
- RE WRITE !
- 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
- XECUTE $PIECE($TEXT(@(%OPT)+Y),S,4)
- GOTO PR
- EXIT IF $PIECE($TEXT(@(%OPT)+(%OP+1)),S,4)'=""
- XECUTE $PIECE($TEXT(@(%OPT)+(%OP+1)),S,4)
- +1 KILL DIC,G,J,%OP
- IF $PIECE(%O,S,8)'=""
- SET %OPT=$PIECE(%O,S,8)
- GOTO SE
- OUT KILL DENTSTA,DIC,DR,I,J,K,O,S,X,Y,%O,%OPT
- QUIT
- INIT if '$DATA(DT)
- DO DT^DICRW
- if '$DATA(DTIME)
- SET DTIME=60
- IF '$DATA(ION)
- SET IOP=$IO
- DO ^%ZIS
- KILL IOP
- QUIT
- OPT ;;DENTAL SERVICE MAIN MENU DRIVER;OPTION;DENT;INIT
- +1 ;;DENTAL ACTIVITY;S %OPT="DENTE" G SE
- +2 ;;DENTAL PATIENT INQUIRY;D ^DENTQ
- +3 ;;ENTER/EDIT APPT. SCHEDULING AID (CPM);D ^DENTCPM
- +4 ;;PRINT APPT. SCHEDULING AID (CPM);D PRINT^DENTCPM
- +5 ;;PROGRAM MANAGEMENT;S %OPT="DENTPM" G SE
- +6 ;;MAILMAN;D ^XM
- +7 ;;;
- DENTE ;;DENTAL ACTIVITY ENTER/EDIT;OPTION;DENTE;;;OPT
- +1 ;;ENTER DATA THRU CARD READER;D ^DENTCRD
- +2 ;;TREATMENT DATA ENTER/EDIT (FULL SCREEN);D TREAT0^DENTE1
- +3 ;;TREATMENT DATA ENTER/EDIT (LINE BY LINE);D TREAT^DENTE1
- +4 ;;CLASS I-VI (TYPE 3) ADMIN INFO;D ADMIN^DENTE1
- +5 ;;PERSONNEL INFO (TYPE 4);D PERS^DENTE1
- +6 ;;NON CLINICAL TIME;D NCLIN^DENTE0
- +7 ;;APPLICATIONS AND DENTAL FEE (TYPE 5);D FEE^DENTE1
- +8 ;;DENTAL REPORTS;S %OPT="DENTP" G SE
- +9 ;;REVIEW/RELEASE SERVICE REPORTS;D ^DENTAR
- +10 ;;;
- DENTPM ;;PROGRAM MANAGEMENT;OPTION;DENTPM;;;OPT
- +1 ;;PROVIDER EDIT;D PROV^DENTE3
- +2 ;;SITE PARAMETERS EDIT;D SITE^DENTE0
- +3 ;;TYPE OF SERVICE EDIT;D TSE^DENTE2
- +4 ;;INITIALIZE CARD READER;D ^DENTCRDI
- +5 ;;TREATMENT DATA ENTRY DELETE;D DELTR^DENTE1
- +6 ;;DELETE NON CLINICAL TIME ENTRY;D DELNC^DENTE0
- +7 ;;TREATMENT DATA ENTRY EDIT/RE-RELEASE (FULL SCREEN);D TSE1^DENTE2
- +8 ;;TREATMENT DATA ENTRY EDIT/RE-RELEASE (LINE BY LINE);D TDRR^DENTE2
- +9 ;;CLASS I-VI ENTRY (TYPE 3) EDIT/RE-RELEASE;D ARR^DENTE2
- +10 ;;PERSONNEL ENTRY (TYPE 4) EDIT/RE-RELEASE;D PRR^DENTE2
- +11 ;;APPLICATIONS AND FEE (TYPE 5) EDIT/RE-RELEASE;D FBRR^DENTE2
- +12 ;;;
- DENTP ;;OTHER DENTAL REPORTS;OPTION;DENTP;;;DENTE
- +1 ;;SERVICE REPORTS;D ^DENTA
- +2 ;;SITTINGS/VISITS REPORT;D ^DENTP1
- +3 ;;INPATIENTS REQUIRING DENTAL EXAM;D ^DENTPEX
- +4 ;;TYPE OF SERVICE REPORT;D TOS^DENTP1
- +5 ;;COST DISTRIBUTION REPORT;D ^DENTPCD
- +6 ;;;