DGPMVPU ;ALB/CAW - Update Provider(s) from OE/RR ;4/19/95
Source file <DGPMVPU.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| COMPARE | ; Check to see if provider is different than what is on file ; Input - DGMVMT = 0th node of last treating specialty ; DGPPROV = Primary Provider IFN ; DGAPROV = Attending Provider IFN ; Output - DGGO = Set if Primary/Attending is changing | |
| EN | ; Queue provider update to avoid problems with recursive calls | |
| FMVMTQ | ||
| INPTCHK(DFN) | ; Check to see if patient is a current inpatient ; Input - DFN = Patient IFN ; Output - 0 = Not a current inpatient ; number = internal file number of the admission movement | |
| ENQ | ||
| INIT | ; Init variables ; Input - XQORMSG variables from OE/RR ; Output - DGEVT = The event type-needs to A08 for provider update ; DFN = Patient IFN (from XQORMSG variables) ; DGPPROV = Primary Provider (from XQORMSG variables) ; DGAPROV = Attending Provider (from XQORMSG variables) ; DGLSTM = Date/Time of event (from XQORMSG variables) | |
| CRMVMT | ; Create new movement for provider change ; Input - DFN - Patient IFN ; DGMVMT - 0th node of last treating specialty | |
| FMVMT | ; Find the last movement ; Input - DGLSTM = The date/time passes in from OE/RR ; Output - DGMVMT = The 0th node of the last treating specialty ; DGMVT = The IFN of the last treating specialty | |
| INITQ | ||
| EVT | ; Create variables for DGPM event driver ; Input - DGMVT - IFN of ^DGPM ; Output - DGPMP - 0th node of prior update ; DGPMA - 0th node of after update ; Corresponding before/after ^UTILITY( global | |
| DQ | ; Find last movement from event date | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^DGPM - [#405] | FMVMT+9, EVT+9 | 
| ^DGPM("ATID6" | FMVMT+7, FMVMT+8 | 
| ^DPT - [#2] | INIT+10 | 
| ^UTILITY("DGPM" | ENQ+1!, CRMVMT+5!, EVT+7*, EVT+9* | 
| Name | Line Occurrences | 
|---|---|
| $$INPTCHK | DQ+3 | 
| COMPARE | DQ+4 | 
| CRMVMT | DQ+5 | 
| ENQ | DQ+1, DQ+3, DQ+4 | 
| EVT | DQ+6 | 
| FMVMT | DQ+2 | 
| INIT | DQ+1 | 
| INITQ | INIT+8, INIT+10, INIT+11 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| % | INPTCHK+6, CRMVMT+4~, CRMVMT+6 | 
| DA | CRMVMT+4~ | 
| DFN | DQ+3, ENQ!, INIT+9*, INIT+10, INPTCHK~, FMVMT+7, FMVMT+8, CRMVMT+7 | 
| DGAPROV | ENQ!, INIT+12*, INIT+13, COMPARE+7, CRMVMT+7 | 
| DGEVT | ENQ!, INIT+8* | 
| DGGO | DQ+4, ENQ+1!, COMPARE+6*, COMPARE+7* | 
| DGLST | FMVMT+5~, FMVMT+6*, FMVMT+7*, FMVMT+8 | 
| DGLSTM | ENQ!, INIT+11*, FMVMT+6 | 
| DGMVMT | ENQ!, FMVMT+9*, COMPARE+6, COMPARE+7, CRMVMT+7, CRMVMT+8 | 
| DGMVT | ENQ!, FMVMT+8*, FMVMT+9, CRMVMT+10*, EVT+6 | 
| DGPM0ND | CRMVMT+4~, CRMVMT+7*, CRMVMT+9* | 
| DGPMA | ENQ+1!, EVT+9* | 
| DGPMCA | ENQ!, CRMVMT+8* | 
| DGPMDA | ENQ+1!, EVT+6* | 
| DGPMN | ENQ+1!, EVT+8* | 
| DGPMP | ENQ+1!, EVT+7* | 
| DGPMPC | ENQ!, CRMVMT+8* | 
| DGPMT | ENQ!, CRMVMT+8* | 
| DGPMY | CRMVMT+4~, CRMVMT+6*, CRMVMT+7 | 
| DGPPROV | ENQ!, INIT+12*, INIT+13, COMPARE+6, CRMVMT+7 | 
| DGQUIET | DQ+7*, ENQ+1! | 
| DGQUIT | DQ+1, ENQ+1!, INIT+8*, INIT+10*, INIT+11*, INIT+13* | 
| DIC | CRMVMT+4~ | 
| DIK | CRMVMT+4~ | 
| U | INIT+12, COMPARE+6, COMPARE+7, CRMVMT+7, CRMVMT+8 | 
| >> VADMVT | INPTCHK+8 | 
| VAERR | INPTCHK+5~ | 
| VAIN | INPTCHK+5~ | 
| VAINDT | INPTCHK+5~, INPTCHK+6* | 
| X | CRMVMT+4~ | 
| >> XQORMSG(2 | INIT+8, INIT+11 | 
| >> XQORMSG(3 | INIT+9 | 
| >> XQORMSG(4 | INIT+12 | 
| >> XQORMSG(5 | INIT+12 | 
| Y | ENQ+1!, CRMVMT+4~, CRMVMT+10, EVT+6*, EVT+7, EVT+9 | 
| ZTDESC | EN+2*, EN+4! | 
| ZTDTH | EN+1*, EN+4! | 
| ZTIO | EN+1*, EN+4! | 
| ZTRTN | EN+1*, EN+4! | 
| ZTSAVE | EN+4! | 
| ZTSAVE("XQORMSG(" | EN+1* | 
| ZTSK | EN+4! |