[613] | 1 | DGRP ;ALB/MRL - REGISTRATION ENTRY POINT ;06 JUN 88@2300
|
---|
| 2 | ;;5.3;Registration;**108,114,250**;Aug 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | EN W ! S DIC="^DPT(",DIC(0)="AEQMZ" S:$S(('$D(DGRPV)#2):0,DGRPV:0,1:1) DIC(0)=DIC(0)_"L" D ^DIC
|
---|
| 5 | I +Y'>0 D QQ^DGRPP Q
|
---|
| 6 | K DIRUT,DUOUT,DTOUT
|
---|
| 7 | S DFN=+Y I $P(Y,"^",3) D NEW
|
---|
| 8 | K DA,DIC
|
---|
| 9 | Q
|
---|
| 10 | ;
|
---|
| 11 | ; The following tags are used by external packages. Input DFN as
|
---|
| 12 | ; IEN of PATIENT file. Consistency checker is automatically called.
|
---|
| 13 | ; Screen edit allowed if DGRPV=0
|
---|
| 14 | ;
|
---|
| 15 | ENED S DGRPV=0
|
---|
| 16 | EN1 I $G(DGRPV)=0 L +^DPT(DFN):3 E D MSG Q
|
---|
| 17 | D ^DGRPV
|
---|
| 18 | I $G(DGRPV)=0 L -^DPT(DFN)
|
---|
| 19 | EN2 I $G(DGRPV)=0 L +^DPT(DFN):3 E D MSG Q
|
---|
| 20 | D ^DGRP1
|
---|
| 21 | D DISPMAS^DGMTCOU1(DFN) ;DIPLAY MT FILE CP STATUS
|
---|
| 22 | I $G(DGRPV)=0 L -^DPT(DFN)
|
---|
| 23 | Q
|
---|
| 24 | ;
|
---|
| 25 | VIEW S DGRPV=1 D EN Q:$S(('$D(Y)#2):1,Y'>0:1,1:0) D EN1 G VIEW
|
---|
| 26 | ELV S DGRPV=1,DGELVER=1 D EN Q:$S(('$D(Y)#2):1,Y'>0:1,1:0) D G ELV
|
---|
| 27 | . L +^DPT(DFN):3 E D MSG Q
|
---|
| 28 | . D ENED
|
---|
| 29 | . L -^DPT(DFN)
|
---|
| 30 | ELVD Q:'$D(DFN)#2 S DGELVER=1,DGRPV=0 D EN1 Q
|
---|
| 31 | ;
|
---|
| 32 | NEW ;if new patient xecute new patient dr string (from patient type)
|
---|
| 33 | ;called from DG10, DGPMV, DGRPTU and DGREG
|
---|
| 34 | ;
|
---|
| 35 | ;use DGRPX as scratch variable
|
---|
| 36 | I $D(^DPT(DFN,"TYPE")),$D(^DG(391,+^("TYPE"),"DR")),^("DR")]"" X ^("DR") S DIE="^DPT(",DA=DFN D ^DIE
|
---|
| 37 | K DGRPX Q
|
---|
| 38 | ;
|
---|
| 39 | MSG ;If lock fails:
|
---|
| 40 | W *7,!!,"Patient is being edited. Try again later."
|
---|
| 41 | Q
|
---|
| 42 | ;
|
---|
| 43 | ;
|
---|
| 44 | RTNS ;The following is the numbering scheme for the DGRP routines
|
---|
| 45 | ;
|
---|
| 46 | ; DGRP : routine driver for registration screens
|
---|
| 47 | ; DGRP_n : routine for screen n where 1<=n<=15
|
---|
| 48 | ; DGRPE* : screen edit routines where line tag xy contains the
|
---|
| 49 | ; DR string to edit. x = screen number, y = edit item
|
---|
| 50 | ; DGRPH : help processor to display editable screens/data elements
|
---|
| 51 | ; DGRPP : screen processor (controls display of high intensity, etc)
|
---|
| 52 | ; DGRPU : utility routine (contains screen header, etc.)
|
---|
| 53 | ; DGRPV : defines variables necessary for registration screens
|
---|
| 54 | ;
|
---|
| 55 | ; DGRPC* : consistency checker
|
---|
| 56 | ; DGRPD* : data displays (pt inquiries)
|
---|
| 57 | ;
|
---|
| 58 | ;Variables set:
|
---|
| 59 | ;
|
---|
| 60 | ; DGRPV : 0 allows edit of data ; 1 for view
|
---|
| 61 | ; DGELVER : 1 if eligibility verification ; '$D otherwise
|
---|
| 62 | ;
|
---|
| 63 | ;
|
---|
| 64 | ;
|
---|
| 65 | FILE ; The following are the numbering schemes for fields in the
|
---|
| 66 | ; TYPE OF PATIENT file
|
---|
| 67 | ;
|
---|
| 68 | ; Fields 1-15 will be a set of codes denoting whether or not a certain
|
---|
| 69 | ; screen is on or off for that type of patient. Only certain
|
---|
| 70 | ; screens can be turned off, so not all field numbers will be
|
---|
| 71 | ; taken.
|
---|
| 72 | ;
|
---|
| 73 | ; Data from these fields can be found on node S in the same
|
---|
| 74 | ; piece position as the field number.
|
---|
| 75 | ;
|
---|
| 76 | ; Fields 11-149 will be a set of codes denoting whether a certain data
|
---|
| 77 | ; element is on or off for editing. The field number is equal
|
---|
| 78 | ; to SCREEN #_ITEM #.
|
---|
| 79 | ;
|
---|
| 80 | ; Items in these field numbers are on the E node in the same
|
---|
| 81 | ; piece position as the field number.
|
---|
| 82 | ;
|
---|
| 83 | ; note: because fileman does not take more than 100 pieces on
|
---|
| 84 | ; a node, items on screen 10 or higher were put on node
|
---|
| 85 | ; E10 on piece SCREEN#_ITEM#-100.
|
---|
| 86 | ;
|
---|
| 87 | Q
|
---|