[613] | 1 | VADPT62 ;ALB/MJK - Patient ID Trigger Nodes ; 11 MAR 1991
|
---|
| 2 | ;;5.3;Registration;;Aug 13, 1993
|
---|
| 3 | ;
|
---|
| 4 | ; This routine contains all the the 1 and 2 nodes for triggers
|
---|
| 5 | ; on fields in the PATIENT ELIGIBILITIES multiple of the
|
---|
| 6 | ; PATIENT file.
|
---|
| 7 | ;
|
---|
| 8 | ; Because of the layered nature of the execution of these
|
---|
| 9 | ; triggers, M11+ could not handle their execution reliably.
|
---|
| 10 | ; Store errors would sometimes occur.
|
---|
| 11 | ;
|
---|
| 12 | ; By placing the code for these nodes in this rouitne, the operating
|
---|
| 13 | ; system will not have use up as much symbol space to store the
|
---|
| 14 | ; executeable code. The 1 and 2 nodes now only contain calls
|
---|
| 15 | ; to the appropriate tag in this routine. [Tag 'P31' is the
|
---|
| 16 | ; tag called by the 3rd cross reference of the LONG ID field
|
---|
| 17 | ; to execute the 'set' logic of the trigger - ^DD(2.0361,.03,1,3,1).]
|
---|
| 18 | ;
|
---|
| 19 | E31 ; -- first set node of ^DD(2.0361,.01,1,3,1) trigger on ELIGIBILITY field
|
---|
| 20 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(1)=$S($D(^DPT(D0,"E",D1,0)):^(0),1:"") S X=$P(Y(1),U,3),X=X S DIU=X K Y X ^DD(2.0361,.01,1,3,1.1) X ^DD(2.0361,.01,1,3,1.4)
|
---|
| 21 | Q
|
---|
| 22 | ;
|
---|
| 23 | E32 ; -- first kill node of ^DD(2.0361,.01,1,3,2) trigger on ELIGIBILITY field
|
---|
| 24 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(1)=$S($D(^DPT(D0,"E",D1,0)):^(0),1:"") S X=$P(Y(1),U,3),X=X S DIU=X K Y S X="" X ^DD(2.0361,.01,1,3,2.4)
|
---|
| 25 | Q
|
---|
| 26 | ;
|
---|
| 27 | L11 ; -- first set node of ^DD(2.0361,.03,1,1,1) trigger on LONG ID field
|
---|
| 28 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(1)=$S($D(^DPT(D0,"E",D1,0)):^(0),1:"") S X=$P(Y(1),U,4),X=X S DIU=X K Y X ^DD(2.0361,.03,1,1,1.1) X ^DD(2.0361,.03,1,1,1.4)
|
---|
| 29 | Q
|
---|
| 30 | ;
|
---|
| 31 | L12 ; -- first kill node of ^DD(2.0361,.03,1,1,2) trigger on LONG ID field
|
---|
| 32 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA,DIV(1)=D1 S Y(1)=$S($D(^DPT(D0,"E",D1,0)):^(0),1:"") S X=$P(Y(1),U,4),X=X S DIU=X K Y S X="" X ^DD(2.0361,.03,1,1,2.4)
|
---|
| 33 | Q
|
---|
| 34 | ;
|
---|
| 35 | L31 ; -- first set node of ^DD(2.0361,.03,1,3,1) trigger on LONG ID field
|
---|
| 36 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA S Y(0)=X S X=$S('$D(^DPT(DA(1),.36)):0,1:DA=+^(.36)) I X S X=DIV S Y(1)=$S($D(^DPT(D0,.36)):^(.36),1:"") S X=$P(Y(1),U,3),X=X S DIU=X K Y S X=DIV S X=DIV X ^DD(2.0361,.03,1,3,1.4)
|
---|
| 37 | Q
|
---|
| 38 | ;
|
---|
| 39 | L32 ; -- first kill node of ^DD(2.0361,.03,1,3,2) trigger on LONG ID
|
---|
| 40 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA S Y(0)=X S X=$S('$D(^DPT(DA(1),.36)):0,1:DA=+^(.36)) I X S X=DIV S Y(1)=$S($D(^DPT(D0,.36)):^(.36),1:"") S X=$P(Y(1),U,3),X=X S DIU=X K Y S X="" X ^DD(2.0361,.03,1,3,2.4)
|
---|
| 41 | Q
|
---|
| 42 | ;
|
---|
| 43 | S31 ; -- first set node of ^DD(2.0361,.04,1,3,1) trigger on SHORT ID field
|
---|
| 44 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA S Y(0)=X S X=$S('$D(^DPT(DA(1),.36)):0,1:DA=+^(.36)) I X S X=DIV S Y(1)=$S($D(^DPT(D0,.36)):^(.36),1:"") S X=$P(Y(1),U,4),X=X S DIU=X K Y S X=DIV S X=DIV X ^DD(2.0361,.04,1,3,1.4)
|
---|
| 45 | Q
|
---|
| 46 | ;
|
---|
| 47 | S32 ; -- first kill node of ^DD(2.0361,.04,1,3,2) trigger on SHORT ID field
|
---|
| 48 | K DIV S DIV=X,D0=DA(1),DIV(0)=D0,D1=DA S Y(0)=X S X=$S('$D(^DPT(DA(1),.36)):0,1:DA=+^(.36)) I X S X=DIV S Y(1)=$S($D(^DPT(D0,.36)):^(.36),1:"") S X=$P(Y(1),U,4),X=X S DIU=X K Y S X="" X ^DD(2.0361,.04,1,3,2.4)
|
---|
| 49 | Q
|
---|
| 50 | ;
|
---|