| 1 | DVBCREDT ;ALB/GTS-557/THM-EDIT STATIC C&P INFO ; 11/20/90  6:29 AM
 | 
|---|
| 2 |  ;;2.7;AMIE;;Apr 10, 1995
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  ;**Note:  Priority E is Insufficient
 | 
|---|
| 5 |  ;         Priority 'E is not insufficient
 | 
|---|
| 6 |  ;
 | 
|---|
| 7 |  K ^TMP("DVBCEDIT",$J) I $D(DUZ)#2=0 W !!,*7,"Your user number is invalid.",!! H 3 G EXIT
 | 
|---|
| 8 |  S LN="EDIT C&P STATIC INFORMATION" D HOME^%ZIS S FF=IOF
 | 
|---|
| 9 |  G EN1
 | 
|---|
| 10 |  ;
 | 
|---|
| 11 | COMPARE I '$D(^TMP("DVBCEDIT",$J,DA,2,I,0)) S DVBCMOD=1 Q
 | 
|---|
| 12 |  I ^DVB(396.3,DA,2,I,0)'=^TMP("DVBCEDIT",$J,DA,2,I,0) S DVBCMOD=1 Q
 | 
|---|
| 13 |  Q
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 | EN1 W @IOF,!?(IOM-$L(LN)\2),LN,!!! S DIC="AE",DIC("A")="Enter VETERAN NAME: ",DIC="^DVB(396.3,",DIE=DIC,DIC(0)="AEQM" D ^DIC G:X=""!(X=U) EXIT S DA=+Y I DA<0 G EN1
 | 
|---|
| 16 |  S STAT=$P(^DVB(396.3,DA,0),U,18) I STAT'="N"&(STAT'="P") W !!,"The status of this request is not NEW or PENDING, REPORTED.",!,"It cannot, therefore, be modified.",*7,!! S DVBCMOD=1 G CON
 | 
|---|
| 17 |  F I=0:0 S I=$O(^DVB(396.3,DA,2,I)) Q:I=""  S ^TMP("DVBCEDIT",$J,DA,2,I,0)=^DVB(396.3,DA,2,I,0) ;save lines for compare
 | 
|---|
| 18 |  ;
 | 
|---|
| 19 | EDIT ;
 | 
|---|
| 20 |  N DVBARQST,SAVEDA,ENTTOUT
 | 
|---|
| 21 |  S DVBARQST=$P(^DVB(396.3,DA,0),U,10)
 | 
|---|
| 22 |  S SAVEDA=DA
 | 
|---|
| 23 |  W !! S DR="W @IOF,!!;9;10:10.2;24;29;21;W !!;23" D ^DIE
 | 
|---|
| 24 |  S:$D(DTOUT) ENTTOUT=""
 | 
|---|
| 25 |  ;
 | 
|---|
| 26 |  ;**Priority E -> E
 | 
|---|
| 27 |  I DVBARQST="E",($P(^DVB(396.3,DA,0),U,10)="E"&('$D(ENTTOUT))) DO
 | 
|---|
| 28 |  .W !
 | 
|---|
| 29 |  .N UPDT2507
 | 
|---|
| 30 |  .K DTOUT,DUOUT
 | 
|---|
| 31 |  .S DIR(0)="Y^AO",DIR("A")="Do you want to change the request this insufficient is linked to"
 | 
|---|
| 32 |  .S DIR("?")="Enter Yes to change the link and No to keep the current link.",DIR("B")="NO" D ^DIR
 | 
|---|
| 33 |  .S:+Y=1 UPDT2507=""
 | 
|---|
| 34 |  .I $D(UPDT2507) DO
 | 
|---|
| 35 |  ..K DIR,Y
 | 
|---|
| 36 |  ..N REQDA S REQDA=SAVEDA
 | 
|---|
| 37 |  ..S NODE5=""
 | 
|---|
| 38 |  ..S:$D(^DVB(396.3,REQDA,5)) NODE5=^DVB(396.3,REQDA,5) ;**Save link node
 | 
|---|
| 39 |  ..D CLINSF^DVBCLOG2 S DA=SAVEDA D INSUF^DVBCLOG2 ;*Update 2507 Link info
 | 
|---|
| 40 |  ..I '$D(DVBAOUT),('$D(DUOUT)) D INSUFXM^DVBCUTA2 ;*Update exam info
 | 
|---|
| 41 |  ..I $D(DVBAOUT)!($D(DUOUT)) D RESTLINK^DVBCUTA2 ;*Restore 2507 link
 | 
|---|
| 42 |  ..K NODE5
 | 
|---|
| 43 |  .I '$D(UPDT2507) DO  ;**Exam info update check
 | 
|---|
| 44 |  ..W !
 | 
|---|
| 45 |  ..N REQDA S REQDA=SAVEDA
 | 
|---|
| 46 |  ..S NODE5=^DVB(396.3,REQDA,5) ;**Save the link info node
 | 
|---|
| 47 |  ..D INSUFXM^DVBCUTA2 ;**Update exam info
 | 
|---|
| 48 |  ..K XMEDT,NODE5
 | 
|---|
| 49 |  .S DA=SAVEDA
 | 
|---|
| 50 |  ;
 | 
|---|
| 51 |  ;**Priority 'E -> E
 | 
|---|
| 52 |  I DVBARQST'="E",($P(^DVB(396.3,DA,0),U,10)="E"&('$D(ENTTOUT))) DO
 | 
|---|
| 53 |  .K DIR,Y
 | 
|---|
| 54 |  .N REQDA,XMDA S REQDA=SAVEDA
 | 
|---|
| 55 |  .D INSUF^DVBCLOG2 ;**Enter 2507 insuf link info
 | 
|---|
| 56 |  .I '$D(DVBAOUT) DO  ;**Enter insuf info on exams
 | 
|---|
| 57 |  ..N EXMNM,XMSTAT
 | 
|---|
| 58 |  ..K DTOUT
 | 
|---|
| 59 |  ..F XMDA=0:0 S XMDA=$O(^DVB(396.4,"C",REQDA,XMDA)) Q:(XMDA=""!($D(DTOUT)))  DO
 | 
|---|
| 60 |  ...W @IOF
 | 
|---|
| 61 |  ...D XMUPDT^DVBCUTA2 ;**Exam info
 | 
|---|
| 62 |  ..S:$D(DTOUT) DVBAOUT="" K Y,^TMP($J,"NEW")
 | 
|---|
| 63 |  .I $D(DVBAOUT) DO  ;**Restore priority info when time out
 | 
|---|
| 64 |  ..N MSG,RESET,EXMCLR
 | 
|---|
| 65 |  ..S (RESET,MSG,EXMCLR)=""
 | 
|---|
| 66 |  ..D RESTORE
 | 
|---|
| 67 |  .S DA=SAVEDA
 | 
|---|
| 68 |  ;
 | 
|---|
| 69 |  ;**Priority E -> 'E
 | 
|---|
| 70 |  I DVBARQST="E",($P(^DVB(396.3,DA,0),U,10)'="E") DO
 | 
|---|
| 71 |  .N REQDA,EXMCLR S REQDA=SAVEDA S EXMCLR=""
 | 
|---|
| 72 |  .D RESTORE ;**Clear link and insuf info on exams
 | 
|---|
| 73 |  .S DA=SAVEDA
 | 
|---|
| 74 |  ;
 | 
|---|
| 75 |  ;**If Timed out of information edit in DR string
 | 
|---|
| 76 |  I $D(ENTTOUT) DO
 | 
|---|
| 77 |  .I DVBARQST'="E",($P(^DVB(396.3,DA,0),U,10)="E") DO  ;**clear insf info
 | 
|---|
| 78 |  ..N REQDA,MSG,RESET
 | 
|---|
| 79 |  ..S REQDA=SAVEDA S (MSG,RESET)=""
 | 
|---|
| 80 |  ..D RESTORE
 | 
|---|
| 81 |  S DA=SAVEDA
 | 
|---|
| 82 |  S DIE="^DVB(396.3,"
 | 
|---|
| 83 |  I $P(^DVB(396.3,DA,0),U,2)[DT G CONK ;no check if entered today
 | 
|---|
| 84 |  K DVBCMOD F I=0:0 S I=$O(^DVB(396.3,DA,2,I)) Q:I=""  D COMPARE Q:$D(DVBCMOD)
 | 
|---|
| 85 |  I $D(DVBCMOD) S DR="23.5///NOW;23.6////^S X=DUZ" D ^DIE W @IOF,!!,*7,"Since you have modified the REMARKS section,",!,"a new copy of the request will be issued to the",!,"medical center tomorrow morning."
 | 
|---|
| 86 |  ;
 | 
|---|
| 87 | CON I $D(DVBCMOD) W !!,"Press RETURN to continue  " R ANS:DTIME G:'$T!(ANS=U) EXIT
 | 
|---|
| 88 | CONK K I,DVBCMOD,DIC,DA,DIE,X,Y G EN1
 | 
|---|
| 89 |  ;
 | 
|---|
| 90 | EXIT K ^TMP("DVBCEDIT",$J) G KILL^DVBCUTIL
 | 
|---|
| 91 |  ;
 | 
|---|
| 92 | RESTORE ;** Remove insufficient info from 2507
 | 
|---|
| 93 |  K DIE,DA,DR
 | 
|---|
| 94 |  D CLINSF^DVBCLOG2 ;**Clear 2507 info
 | 
|---|
| 95 |  I $D(RESET) DO  ;**Reset Priority
 | 
|---|
| 96 |  .S DA=REQDA,DR="9////^S X=DVBARQST",DIE="^DVB(396.3,"
 | 
|---|
| 97 |  .D ^DIE K DA,DR,DIE
 | 
|---|
| 98 |  I $D(EXMCLR) DO  ;**Clear exam info
 | 
|---|
| 99 |  .F XMDA=0:0 S XMDA=$O(^DVB(396.4,"C",REQDA,XMDA)) Q:(XMDA="")  DO
 | 
|---|
| 100 |  ..K DA,DR,DIE
 | 
|---|
| 101 |  ..S DA=XMDA,DR=".11////@;.12///@;80///@",DIE="^DVB(396.4,"
 | 
|---|
| 102 |  ..D ^DIE
 | 
|---|
| 103 |  .K DA,DR,DIE
 | 
|---|
| 104 |  I $D(MSG) DO  ;**Output message
 | 
|---|
| 105 |  .S TVAR(1,0)="1,3,0,2:1,0^Insufficient link info not updated!...Priority restored"
 | 
|---|
| 106 |  .D WR^DVBAUTL4("TVAR")
 | 
|---|
| 107 |  .K TVAR
 | 
|---|
| 108 |  .D CONTMES^DVBCUTL4
 | 
|---|
| 109 |  Q
 | 
|---|