1 | EC2P72PT ;ALB/JAM - PATCH EC*2.0*72 Post-Init Rtn ; 5/11/06 2:57pm
|
---|
2 | ;;2.0; EVENT CAPTURE ;**72**;8 May 96
|
---|
3 | ;
|
---|
4 | POST ; entry point
|
---|
5 | D MES^XPDUTL(" ")
|
---|
6 | D BMES^XPDUTL("Converting Provider fields 10,15 and 17 to a multiple field")
|
---|
7 | D MES^XPDUTL(" in EVENT CAPTURE PATIENT file (#721)...")
|
---|
8 | D MES^XPDUTL(" ")
|
---|
9 | I '$D(^ECH) D Q
|
---|
10 | .D BMES^XPDUTL("Event Capture File #721 doesn't exist on this account.")
|
---|
11 | .D MES^XPDUTL(" No conversion necessary. Process terminated...")
|
---|
12 | D MES^XPDUTL(" ")
|
---|
13 | I '$D(^DD(721,42)) D Q
|
---|
14 | .D BMES^XPDUTL("Event Capture Field #42 doesn't exist on this account.")
|
---|
15 | .D MES^XPDUTL(" Conversion CANNOT proceed. Process terminated...")
|
---|
16 | D EN1
|
---|
17 | Q
|
---|
18 | ;
|
---|
19 | RESTART ;Restart Provider fields conversion backjob
|
---|
20 | D BMES^XPDUTL("Restarting Conversion of Provider fields 10,15 and 17 to a ")
|
---|
21 | D MES^XPDUTL(" multiple field in EVENT CAPTURE PATIENT file (#721)...")
|
---|
22 | D MES^XPDUTL(" ")
|
---|
23 | D EN1
|
---|
24 | Q
|
---|
25 | EN1 ;
|
---|
26 | L +^ECH(0):10 I '$T D G END
|
---|
27 | .D BMES^XPDUTL("Event Capture File in Use. Try again later..")
|
---|
28 | D BMES^XPDUTL("*** Event Capture menu will be locked and unavailable... ***")
|
---|
29 | D BMES^XPDUTL("You will receive a MailMan message when task is completed or if stopped.")
|
---|
30 | D BMES^XPDUTL(" ")
|
---|
31 | S ZTRTN="START^EC2P72PT",ZTDESC="Provider Conversion in File #721, EC*2*72",ZTIO=""
|
---|
32 | S ZTDTH=$H,ZTREQ="@",ZTSAVE("ZTREQ")=""
|
---|
33 | I $G(XPDSET)'="" S ZTSAVE("XPDSET")=""
|
---|
34 | D ^%ZTLOAD
|
---|
35 | END D KILL1
|
---|
36 | L -^ECH(0)
|
---|
37 | Q
|
---|
38 | ;
|
---|
39 | START ;* background job entry point
|
---|
40 | N ECIEN,ECDAT,ECPRV,X1,X2,X,I,TXTVAR,LINE,COUNT,STOP,ECX1
|
---|
41 | ;Disable options
|
---|
42 | D OUT^XPDMENU("ECXEC","OUT OF ORDER FOR EC PROVIDER CONVERSION")
|
---|
43 | D OUT^XPDMENU("ECMENU","OUT OF ORDER FOR EC PROVIDER CONVERSION")
|
---|
44 | D OUT^XPDMENU("EC GUI CONTEXT","OUT OF ORDER FOR EC PROVIDER CONVERSION")
|
---|
45 | D OUT^XPDMENU("ECMGR","OUT OF ORDER FOR EC PROVIDER CONVERSION")
|
---|
46 | K ^TMP($J,"EC2P72")
|
---|
47 | S (COUNT,STOP)=0,ECIEN=+$G(^XTMP("ECPROVIDER",1))
|
---|
48 | S (ECX1,X1)=$$NOW^XLFDT(),X2=60 D C^%DTC
|
---|
49 | I '$D(^XTMP("ECPROVIDER",0)) D
|
---|
50 | .S ^XTMP("ECPROVIDER",0)=X_"^"_ECX1_"^EC Provider fields conversion to multiple"
|
---|
51 | S ^XTMP("ECPROVIDER",3)=$$FMTE^XLFDT($$NOW^XLFDT(),1) ;start time
|
---|
52 | F I=1:1 S TXTVAR=$P($T(MSGTXT+I),";;",2) Q:TXTVAR="QUIT" D LINE(TXTVAR)
|
---|
53 | L +^ECH(0):60 ;review if this is necessary
|
---|
54 | F S ECIEN=$O(^ECH(ECIEN)) Q:'ECIEN D I STOP Q
|
---|
55 | .S ECDAT=$G(^ECH(ECIEN,0)) I ECDAT="" D UPXTMP Q
|
---|
56 | .K ECPRV
|
---|
57 | .I $P(ECDAT,"^",11)'="" S ECPRV(1)=$P(ECDAT,"^",11)_"^P"
|
---|
58 | .I $P(ECDAT,"^",15)'="" S ECPRV(2)=$P(ECDAT,"^",15)_"^"_$S($O(ECPRV("")):"S",1:"P")
|
---|
59 | .I $P(ECDAT,"^",17)'="" S ECPRV(3)=$P(ECDAT,"^",17)_"^"_$S($O(ECPRV("")):"S",1:"P")
|
---|
60 | .D UPD721
|
---|
61 | .D UPXTMP
|
---|
62 | .;Check Background task (taskman) - to see if task stopped
|
---|
63 | .S STOP=$$S^%ZTLOAD()
|
---|
64 | S $P(^XTMP("ECPROVIDER",3),"^",2)=$$FMTE^XLFDT($$NOW^XLFDT(),1)
|
---|
65 | I STOP D G END1
|
---|
66 | .D LINE(" The provider conversion process was aborted.")
|
---|
67 | .D LINE(" Conversion began: "_$P($G(^XTMP("ECPROVIDER",3)),"^"))
|
---|
68 | .D LINE(" Conversion terminated: "_$P($G(^XTMP("ECPROVIDER",3)),"^",2))
|
---|
69 | .D LINE(" Last record (IEN) Updated: "_$G(^XTMP("ECPROVIDER",1)))
|
---|
70 | .D LINE(" Last IEN in File #721: "_$O(^ECH("A"),-1))
|
---|
71 | .D LINE(" Total # Records converted: "_$G(^XTMP("ECPROVIDER",2)))
|
---|
72 | .D LINE(" ")
|
---|
73 | .D LINE(" To restart the provider conversion process enter the following at the programmer's prompt.")
|
---|
74 | .D LINE(" D RESTART^EC2P72PT")
|
---|
75 | .D LINE(" ")
|
---|
76 | .D LINE(" Make sure the following options are placed out of order")
|
---|
77 | .D LINE(" ECMENU Event Capture Menu")
|
---|
78 | .D LINE(" EC GUI CONTEXT EC GUI Context version 2.0.11.1")
|
---|
79 | .D LINE(" ECXEC Event Capture Extract")
|
---|
80 | .D LINE(" ECMGR Event Capture Management Menu")
|
---|
81 | D LINE(" The provider conversion process was successfully completed.")
|
---|
82 | D LINE(" Conversion began: "_$P($G(^XTMP("ECPROVIDER",3)),"^"))
|
---|
83 | D LINE(" Conversion completed: "_$P($G(^XTMP("ECPROVIDER",3)),"^",2))
|
---|
84 | D LINE(" Last record (IEN) converted: "_$G(^XTMP("ECPROVIDER",1)))
|
---|
85 | D LINE(" Last IEN in File #721: "_$O(^ECH("A"),-1))
|
---|
86 | D LINE(" Total # Records converted: "_$G(^XTMP("ECPROVIDER",2)))
|
---|
87 | D LINE(" ")
|
---|
88 | D LINE(" Make sure the following options are placed back in order")
|
---|
89 | D LINE(" ECMENU Event Capture Menu")
|
---|
90 | D LINE(" EC GUI CONTEXT EC GUI Context version 2.1.0.0")
|
---|
91 | D LINE(" ECXEC Event Capture Extract")
|
---|
92 | ;Place option back in order
|
---|
93 | D OUT^XPDMENU("ECXEC","")
|
---|
94 | D OUT^XPDMENU("ECMENU","")
|
---|
95 | D OUT^XPDMENU("EC GUI CONTEXT","")
|
---|
96 | D OUT^XPDMENU("ECMGR","")
|
---|
97 | END1 D MAIL
|
---|
98 | L -^ECH(0)
|
---|
99 | K ^TMP($J,"EC2P72"),I,Y
|
---|
100 | Q
|
---|
101 | UPXTMP ;Update ^XTMP with last ECIEN from ^ECH
|
---|
102 | S ^XTMP("ECPROVIDER",1)=ECIEN
|
---|
103 | S ^XTMP("ECPROVIDER",2)=+$G(^XTMP("ECPROVIDER",2))+1
|
---|
104 | Q
|
---|
105 | UPD721 ;Update ^ECH with providers at multiple field #42.
|
---|
106 | N SIEN,ECDATA,ECPRVDA,ECERR,DA,DIK
|
---|
107 | ;delete old entries
|
---|
108 | I '$D(ECPRV) Q
|
---|
109 | I $D(^ECH(ECIEN,"PRV")) D
|
---|
110 | . S DA(1)=ECIEN,DIK="^ECH("_DA(1)_",""PRV"",",DA=0
|
---|
111 | . F S DA=$O(^ECH(DA(1),"PRV",DA)) Q:'DA D ^DIK
|
---|
112 | S SIEN=0
|
---|
113 | F S SIEN=$O(ECPRV(SIEN)) Q:'SIEN D
|
---|
114 | .S ECDATA=ECPRV(SIEN)
|
---|
115 | .D FILALT
|
---|
116 | Q
|
---|
117 | FILALT ;If error occurs filing trying record using another method
|
---|
118 | N DIC,DD,DO,X,DIE,DR,DA
|
---|
119 | S DIC(0)="L",DA(1)=ECIEN,DIC("P")=$P(^DD(721,42,0),U,2)
|
---|
120 | S X=+ECDATA,DIC="^ECH("_DA(1)_","_"""PRV"""_"," D FILE^DICN
|
---|
121 | S DIE=DIC,DR=".02////"_$P(ECDATA,U,2) D ^DIE
|
---|
122 | Q
|
---|
123 | ;
|
---|
124 | LINE(TEXT) ; Add line to message global
|
---|
125 | S COUNT=COUNT+1,^TMP($J,"EC2P72",COUNT)=TEXT
|
---|
126 | Q
|
---|
127 | ;
|
---|
128 | MSGTXT ; Message intro
|
---|
129 | ;; Please forward this message to your local DSS Site Manager or
|
---|
130 | ;; Event Capture ADPAC.
|
---|
131 | ;;
|
---|
132 | ;; A conversion was done on the providers stored in fields #10, 15
|
---|
133 | ;; and 17 in Event Capture file #721. The data was moved to a new
|
---|
134 | ;; provider multiple field #42 in file #721. The data in fields
|
---|
135 | ;; #10, 15 and 17 will remain but no new data will be populated in
|
---|
136 | ;; these fields with the installation of EC*2.0*72. This message
|
---|
137 | ;; provides the results of the conversion.
|
---|
138 | ;;
|
---|
139 | ;;QUIT
|
---|
140 | ;
|
---|
141 | MAIL ; Send message
|
---|
142 | N XMDUZ,XMY,XMTEXT,XMSUB
|
---|
143 | S XMY(DUZ)="",XMDUZ=.5
|
---|
144 | S XMSUB="Event Capture Provider Field Conversion to New Multiple Field"
|
---|
145 | S XMTEXT="^TMP($J,""EC2P72"","
|
---|
146 | D ^XMD
|
---|
147 | Q
|
---|
148 | KILL1 ;
|
---|
149 | K ZTDESC,ZTDTH,ZTIO,ZTREQ,ZTRTN,ZTSAVE("ZTREQ"),ECKID
|
---|
150 | Q
|
---|