1 | XU8P480 ;OAK_TKW - POST-INSTALL ROUTINE FOR XU*8*480 ;6/6/08 13:21
|
---|
2 | ;;8.0;KERNEL;**480**; July 10, 1995;Build 38
|
---|
3 | ;;Per VHA Directive 2004-038, this routine should not be modified
|
---|
4 | POST ; run post-init routine
|
---|
5 | ; Assign security key XUSNPIMTL to users with XUS NPI MENU option
|
---|
6 | N XUSIEN,XUSSIEN,XUSOIEN,XUSXREF,CNT,X,Y
|
---|
7 | K ^TMP("DIERR",$J)
|
---|
8 | D MES^XPDUTL("Assigning new security key XUSNPIMTL to users with XUS NPI MENU option...")
|
---|
9 | ; Find IEN of security key XUSNPIMTL and option XUS NPI MENU
|
---|
10 | S XUSSIEN=$$FIND1^DIC(19.1,,"QX","XUSNPIMTL","B")
|
---|
11 | I 'XUSSIEN!($D(^TMP("DIERR",$J))) D Q
|
---|
12 | . D MES^XPDUTL(" **Security Key 'XUSNPIMTL' is not on your system")
|
---|
13 | . D POST2 Q
|
---|
14 | S XUSOIEN=$$FIND1^DIC(19,,"QX","XUS NPI MENU","B")
|
---|
15 | I 'XUSOIEN!($D(^TMP("DIERR",$J))) D Q
|
---|
16 | . D MES^XPDUTL(" **OPTION 'XUS NPI MENU' is not on your system")
|
---|
17 | . D POST2 Q
|
---|
18 | ; Build list of users who hold the menu option
|
---|
19 | K ^TMP($J,"XU8P480")
|
---|
20 | F XUSXREF="AD","AP" D
|
---|
21 | . F XUSIEN=0:0 S XUSIEN=$O(^VA(200,XUSXREF,XUSOIEN,XUSIEN)) Q:'XUSIEN D
|
---|
22 | . . Q:'$D(^VA(200,XUSIEN,.1))
|
---|
23 | . . Q:'$$ACTIVE^XUSER(XUSIEN)
|
---|
24 | . . S ^TMP($J,"XU8P480",XUSIEN)=""
|
---|
25 | . . Q
|
---|
26 | . Q
|
---|
27 | I '$D(^TMP($J,"XU8P480")) D Q
|
---|
28 | . D MES^XPDUTL(" *No users were found with access to the XUS NPI MENU option.")
|
---|
29 | . D MES^XPDUTL(" *Key 'XUSNPIMTL' was not assigned to any users.")
|
---|
30 | . D POST2 Q
|
---|
31 | ; Assign the key XUSNPIMTL to the users
|
---|
32 | N DIC,DA,DINUM
|
---|
33 | F XUSIEN=0:0 S XUSIEN=$O(^TMP($J,"XU8P480",XUSIEN)) Q:'XUSIEN D
|
---|
34 | . Q:$D(^VA(200,XUSIEN,51,XUSSIEN))
|
---|
35 | . S DIC(0)="NLX",DIC("P")="200.051PA",DIC="^VA(200,XUSIEN,51,",DA(1)=XUSIEN
|
---|
36 | . S X=XUSSIEN,DINUM=X D FILE^DICN
|
---|
37 | . I Y>0 D MES^XPDUTL(" Key assigned to "_$P(^VA(200,XUSIEN,0),"^"))
|
---|
38 | . Q
|
---|
39 | K ^TMP($J,"XU8P480")
|
---|
40 | POST2 ; Initialize new field 41.97 AUTHORIZES RELEASE OF NPI to 1 (Yes)
|
---|
41 | ; on all provider entries in file 200
|
---|
42 | D BMES^XPDUTL("Initializing AUTHORIZE RELEASE OF NPI field to 1 (Yes)...")
|
---|
43 | N XUSAUTH
|
---|
44 | S CNT=0
|
---|
45 | F XUSIEN=0:0 S XUSIEN=$O(^VA(200,XUSIEN)) Q:'XUSIEN D
|
---|
46 | . ; Only update providers who have an NPI field.
|
---|
47 | . S X=$G(^VA(200,XUSIEN,"NPI"))
|
---|
48 | . S XUSAUTH=$P(X,"^",3)
|
---|
49 | . I $P(X,U)="",$O(^VA(200,XUSIEN,"NPISTATUS",0))'>0 D Q
|
---|
50 | . . Q:XUSAUTH=""
|
---|
51 | . . S $P(^VA(200,XUSIEN,"NPI"),"^",3)=""
|
---|
52 | . . Q
|
---|
53 | . Q:XUSAUTH=1
|
---|
54 | . S $P(^VA(200,XUSIEN,"NPI"),"^",3)=1
|
---|
55 | . S CNT=CNT+1
|
---|
56 | . Q
|
---|
57 | D MES^XPDUTL(" AUTHORIZE RELEASE OF NPI field was set on "_CNT_" providers")
|
---|
58 | ; Rebuild list of taxonomy values for providers normally assigned NPIs.
|
---|
59 | D BMES^XPDUTL("Rebuilding temporary list of taxonomy values for providers who are")
|
---|
60 | D MES^XPDUTL(" normally assigned NPIs...")
|
---|
61 | K ^XTMP("NPIVALS")
|
---|
62 | S X=$$CHKGLOB^XUSNPIDA()
|
---|
63 | ; Add key XUSNPIMTL to the option XUS NPI MENU
|
---|
64 | N XUSMIEN,XUSFDA,XUSIEN
|
---|
65 | S XUSMIEN=$$LKOPT^XPDMENU("XUS NPI MENU")
|
---|
66 | I 'XUSMIEN D BMES^XPDUTL("****WARNING - Menu Option XUS NPI MENU is not on your system!!! *****") Q
|
---|
67 | K XUSFDA
|
---|
68 | S XUSFDA(19,XUSMIEN_",",3)="XUSNPIMTL"
|
---|
69 | D FILE^DIE("","XUSFDA")
|
---|
70 | K XUSFDA
|
---|
71 | ; Remove menu option that was added during testing. The AUTHORIZE USE OF NPI flag was
|
---|
72 | ; discontinued before patch XU*8*480 was released.
|
---|
73 | ;
|
---|
74 | ; QUIT if option to edit AUTHORIZE USE OF NPI does not exist on this system.
|
---|
75 | S XUSIEN=$$FIND1^DIC(19,"","QX","XUS NPI EDIT AUTH TO RELEASE","B")
|
---|
76 | Q:'XUSIEN
|
---|
77 | ; Quit if option to edit AUTHORIZE USE OF NPI is not on the main NPI menu.
|
---|
78 | S X=$$FIND1^DIC(19.01,","_XUSMIEN_",","","XUS NPI EDIT AUTH TO RELEASE")
|
---|
79 | ; Delete the option to edit AUTHORIZE USE OF NPI from main menu, then delete the option.
|
---|
80 | I X D
|
---|
81 | . S XUSFDA(19.01,X_","_XUSMIEN_",",.01)="@"
|
---|
82 | . D FILE^DIE("","XUSFDA")
|
---|
83 | . Q
|
---|
84 | Q:'XUSIEN
|
---|
85 | K XUSFDA
|
---|
86 | S XUSFDA(19,XUSIEN_",",.01)="@"
|
---|
87 | D FILE^DIE("","XUSFDA")
|
---|
88 | Q
|
---|
89 | ;
|
---|
90 | ;
|
---|