XUHUI236 ;SFISC/SO- Post Install for Patch 236, Install Xrefs ;1:40 PM  7 Jun 2002
 ;;8.0;KERNEL;**236**;Jul 10, 1995
 ;START - IA #3591
 D HUI200
 D HUIKEY
 Q
 ;
HUI200 ;INSTALL 'AXUHUI' CROSS-REFERENCE
 N HUIFDA,HUIERR,HUIWP
 S X="Adding 'AXUHUI' new style cross-reference..." D MES^XPDUTL(X)
 S HUIFDA(.11,"+1,",.01)=200 ;FILE NUMBER
 S HUIFDA(.11,"+1,",.02)="AXUHUI" ;X-REF NAME
 S HUIFDA(.11,"+1,",.11)="Hui Project Top File Xref" ;SHORT DESC.
 S HUIFDA(.11,"+1,",.2)="MU" ;TYPE
 S HUIFDA(.11,"+1,",.4)="R" ;EXECUTION
 S HUIFDA(.11,"+1,",.5)="I" ;ROOT TYPE
 S HUIFDA(.11,"+1,",.51)=200 ;ROOT FILE
 S HUIFDA(.11,"+1,",.42)="A" ;USE
 S HUIFDA(.11,"+1,",1.1)="D HUI^XUHUI("""",""XUHUI FIELD CHANGE EVENT"","""",""AXUHUI"") Q" ;SET LOGIC
 S HUIFDA(.11,"+1,",2.1)="Q" ;KILL LOGIC
 S HUIFDA(.11,"+1,",2.5)="Q" ;WHOLE FILE KILL
 ;
 ; CROSS REFERENCE VALUES
 ;===========================================
 S HUIFDA(.114,"+2,+1,",.01)=1 ;ORDER NUMBER
 S HUIFDA(.114,"+2,+1,",1)="F" ;TYPE OF VALUE
 S HUIFDA(.114,"+2,+1,",2)=200 ;FILE NUMBER
 S HUIFDA(.114,"+2,+1,",3)=.01 ;FIELD NUMBER
 S HUIFDA(.114,"+2,+1,",7)="F" ;COLLATION
 ;===========================================
 S HUIFDA(.114,"+3,+1,",.01)=2 ;ORDER NUMBER
 S HUIFDA(.114,"+3,+1,",1)="F" ;TYPE OF VALUE
 S HUIFDA(.114,"+3,+1,",2)=200 ;FILE NUMBER
 S HUIFDA(.114,"+3,+1,",3)=9.2 ;FIELD NUMBER
 S HUIFDA(.114,"+3,+1,",7)="F" ;COLLATION
 ;===========================================
 S HUIFDA(.114,"+4,+1,",.01)=3 ;ORDER NUMBER
 S HUIFDA(.114,"+4,+1,",1)="F" ;TYPE OF VALUE
 S HUIFDA(.114,"+4,+1,",2)=200 ;FILE NUMBER
 S HUIFDA(.114,"+4,+1,",3)=5 ;FIELD NUMBER
 S HUIFDA(.114,"+4,+1,",7)="F" ;COLLATION
 ;==========================================
 S HUIFDA(.114,"+5,+1,",.01)=4 ;ORDER NUMBER
 S HUIFDA(.114,"+5,+1,",1)="F" ;TYPE OF VALUE
 S HUIFDA(.114,"+5,+1,",2)=200 ;FILE NUMBER
 S HUIFDA(.114,"+5,+1,",3)=9 ;FIELD NUMBER
 S HUIFDA(.114,"+5,+1,",7)="F" ;COLLATION
 D UPDATE^DIE("","HUIFDA","","HUIERR")
 I $D(DIERR) D ERR Q
 ;SET DESCRIPTION ARRAY
 N VAL,HUIIEN
 S VAL(1)=200,VAL(2)="AXUHUI"
 S HUIIEN=$$FIND1^DIC(.11,"","X",.VAL,"BB","","HUIERR")
 I $D(DIERR) D ERR Q
 S HUIWP(1)="This new style cross-reference is on non-multiple fields that the Hui"
 S HUIWP(2)="project want to monitor for a change in value (Patch XU*8*236). The"
 S HUIWP(3)="following fields are being monitored in order:"
 S HUIWP(4)=" "
 S HUIWP(5)=" .01 (NAME)"
 S HUIWP(6)=" 9.2 (TERMINATION DATE)"
 S HUIWP(7)=" 5 (DOB)"
 S HUIWP(8)=" 9 (SSN)"
 D WP^DIE(.11,HUIIEN_",",.1,"","HUIWP") ;LONG DESCRIPTION
 S X="Finished adding 'AXUHUI' cross-reverence." D MES^XPDUTL(X)
 S X="Updating any Triggers for cross-reference 'AXUHUI'..." D MES^XPDUTL(X)
 N XR
 S XR(200,.01)="" ;Name
 S XR(200,9.2)="" ;Termination Date
 S XR(200,5)="" ;Date Of Birth
 S XR(200,9)="" ;SSN
 D TRIG^DICR(.XR) ;IA# 3405
 S X="Finished Updating any Trigers for cross-reference 'AXUHUI'." D MES^XPDUTL(X)
 Q
 ;
HUIKEY ;INSTALL 'AXUHUIKEY' CROSS-REFERENCE
 N HUIFDA,HUIERR,HUIWP
 S X="Adding 'AXUHUIKEY' new style cross-reference..." D MES^XPDUTL(X)
 S HUIFDA(.11,"+1,",.01)=200 ;FILE NUMBER
 S HUIFDA(.11,"+1,",.02)="AXUHUIKEY" ;X-REF NAME
 S HUIFDA(.11,"+1,",.11)="HUI key xref" ;SHORT DESC.
 S HUIFDA(.11,"+1,",.2)="MU" ;TYPE
 S HUIFDA(.11,"+1,",.4)="R" ;EXECUTION
 S HUIFDA(.11,"+1,",.5)="W" ;ROOT TYPE
 S HUIFDA(.11,"+1,",.51)=200.051 ;ROOT FILE
 S HUIFDA(.11,"+1,",.42)="A" ;USE
 S HUIFDA(.11,"+1,",1.1)="D HUIKEY^XUHUI("""",""XUHUI FIELD CHANGE EVENT"","""",""AXUHUIKEY"") Q" ;SET LOGIC
 S HUIFDA(.11,"+1,",2.1)="D HUIKEY^XUHUI("""",""XUHUI FIELD CHANGE EVENT"",""K"",""AXUHUIKEY"") Q" ;KILL LOGIC
 S HUIFDA(.11,"+1,",2.5)="Q" ;WHOLE FILE KILL
 ;
 ;CROSS REFERENCE VALUES
 ;=================================================
 S HUIFDA(.114,"+2,+1,",.01)=1 ;ORDER NUMBER
 S HUIFDA(.114,"+2,+1,",1)="F" ;TYPE OF VALUE
 S HUIFDA(.114,"+2,+1,",2)=200.051 ;FILE NUMBER
 S HUIFDA(.114,"+2,+1,",3)=.01 ;FIELD NUMBER
 S HUIFDA(.114,"+2,+1,",7)="F" ;COLLATION
 ;
 ;FILE THE 'AXUHUIKEY' XREF
 D UPDATE^DIE("","HUIFDA","","HUIERR")
 I $D(DIERR) D ERR Q
 ;SET DESCRIPTION ARRAY
 N VAL,HUIIEN
 S VAL(1)=200,VAL(2)="AXUHUIKEY"
 S HUIIEN=$$FIND1^DIC(.11,"","X",.VAL,"BB","","HUIERR")
 I $D(DIERR) D ERR Q
 S HUIWP(1)="This new style cross-reference is on the multiple: 'KEYS' so the Hui"
 S HUIWP(2)="project can monitor the allocation/de-allocation of the 'PROVIDER'"
 S HUIWP(3)="key."
 D WP^DIE(.11,HUIIEN_",",.1,"","HUIWP") ;LONG DESCRIPTION
 S X="Finished adding 'AXUHUIKEY' new style cross-reference." D MES^XPDUTL(X)
 S X="Updating any triggers for new style cross-reference 'AXUHUIKEY'." D MES^XPDUTL(X)
 N XR
 S XR(200.051,.01)="" ;Name
 D TRIG^DICR(.XR) ;IA #3405
 S X="Finished updating triggers for 'AXUHUIKEY' cross-reference." D MES^XPDUTL(X)
 S X="Post installed finished." D MES^XPDUTL(X)
 Q
 ;
ERR ;ERROR PROCESSING
 N I S I=""
 F  S I=$O(HUIERR("DIERR",1,"TEXT",I)) Q:I=""  D
 . D MES^XPDUTL(HUIERR("DIERR",1,"TEXT",I))
 D CLEAN^DILF
 Q
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HXUHUI236   5073     printed  Sep 23, 2025@19:45:44                                                                                                                                                                                                    Page 2
XUHUI236  ;SFISC/SO- Post Install for Patch 236, Install Xrefs ;1:40 PM  7 Jun 2002
 +1       ;;8.0;KERNEL;**236**;Jul 10, 1995
 +2       ;START - IA #3591
 +3        DO HUI200
 +4        DO HUIKEY
 +5        QUIT 
 +6       ;
HUI200    ;INSTALL 'AXUHUI' CROSS-REFERENCE
 +1        NEW HUIFDA,HUIERR,HUIWP
 +2        SET X="Adding 'AXUHUI' new style cross-reference..."
           DO MES^XPDUTL(X)
 +3       ;FILE NUMBER
           SET HUIFDA(.11,"+1,",.01)=200
 +4       ;X-REF NAME
           SET HUIFDA(.11,"+1,",.02)="AXUHUI"
 +5       ;SHORT DESC.
           SET HUIFDA(.11,"+1,",.11)="Hui Project Top File Xref"
 +6       ;TYPE
           SET HUIFDA(.11,"+1,",.2)="MU"
 +7       ;EXECUTION
           SET HUIFDA(.11,"+1,",.4)="R"
 +8       ;ROOT TYPE
           SET HUIFDA(.11,"+1,",.5)="I"
 +9       ;ROOT FILE
           SET HUIFDA(.11,"+1,",.51)=200
 +10      ;USE
           SET HUIFDA(.11,"+1,",.42)="A"
 +11      ;SET LOGIC
           SET HUIFDA(.11,"+1,",1.1)="D HUI^XUHUI("""",""XUHUI FIELD CHANGE EVENT"","""",""AXUHUI"") Q"
 +12      ;KILL LOGIC
           SET HUIFDA(.11,"+1,",2.1)="Q"
 +13      ;WHOLE FILE KILL
           SET HUIFDA(.11,"+1,",2.5)="Q"
 +14      ;
 +15      ; CROSS REFERENCE VALUES
 +16      ;===========================================
 +17      ;ORDER NUMBER
           SET HUIFDA(.114,"+2,+1,",.01)=1
 +18      ;TYPE OF VALUE
           SET HUIFDA(.114,"+2,+1,",1)="F"
 +19      ;FILE NUMBER
           SET HUIFDA(.114,"+2,+1,",2)=200
 +20      ;FIELD NUMBER
           SET HUIFDA(.114,"+2,+1,",3)=.01
 +21      ;COLLATION
           SET HUIFDA(.114,"+2,+1,",7)="F"
 +22      ;===========================================
 +23      ;ORDER NUMBER
           SET HUIFDA(.114,"+3,+1,",.01)=2
 +24      ;TYPE OF VALUE
           SET HUIFDA(.114,"+3,+1,",1)="F"
 +25      ;FILE NUMBER
           SET HUIFDA(.114,"+3,+1,",2)=200
 +26      ;FIELD NUMBER
           SET HUIFDA(.114,"+3,+1,",3)=9.2
 +27      ;COLLATION
           SET HUIFDA(.114,"+3,+1,",7)="F"
 +28      ;===========================================
 +29      ;ORDER NUMBER
           SET HUIFDA(.114,"+4,+1,",.01)=3
 +30      ;TYPE OF VALUE
           SET HUIFDA(.114,"+4,+1,",1)="F"
 +31      ;FILE NUMBER
           SET HUIFDA(.114,"+4,+1,",2)=200
 +32      ;FIELD NUMBER
           SET HUIFDA(.114,"+4,+1,",3)=5
 +33      ;COLLATION
           SET HUIFDA(.114,"+4,+1,",7)="F"
 +34      ;==========================================
 +35      ;ORDER NUMBER
           SET HUIFDA(.114,"+5,+1,",.01)=4
 +36      ;TYPE OF VALUE
           SET HUIFDA(.114,"+5,+1,",1)="F"
 +37      ;FILE NUMBER
           SET HUIFDA(.114,"+5,+1,",2)=200
 +38      ;FIELD NUMBER
           SET HUIFDA(.114,"+5,+1,",3)=9
 +39      ;COLLATION
           SET HUIFDA(.114,"+5,+1,",7)="F"
 +40       DO UPDATE^DIE("","HUIFDA","","HUIERR")
 +41       IF $DATA(DIERR)
               DO ERR
               QUIT 
 +42      ;SET DESCRIPTION ARRAY
 +43       NEW VAL,HUIIEN
 +44       SET VAL(1)=200
           SET VAL(2)="AXUHUI"
 +45       SET HUIIEN=$$FIND1^DIC(.11,"","X",.VAL,"BB","","HUIERR")
 +46       IF $DATA(DIERR)
               DO ERR
               QUIT 
 +47       SET HUIWP(1)="This new style cross-reference is on non-multiple fields that the Hui"
 +48       SET HUIWP(2)="project want to monitor for a change in value (Patch XU*8*236). The"
 +49       SET HUIWP(3)="following fields are being monitored in order:"
 +50       SET HUIWP(4)=" "
 +51       SET HUIWP(5)=" .01 (NAME)"
 +52       SET HUIWP(6)=" 9.2 (TERMINATION DATE)"
 +53       SET HUIWP(7)=" 5 (DOB)"
 +54       SET HUIWP(8)=" 9 (SSN)"
 +55      ;LONG DESCRIPTION
           DO WP^DIE(.11,HUIIEN_",",.1,"","HUIWP")
 +56       SET X="Finished adding 'AXUHUI' cross-reverence."
           DO MES^XPDUTL(X)
 +57       SET X="Updating any Triggers for cross-reference 'AXUHUI'..."
           DO MES^XPDUTL(X)
 +58       NEW XR
 +59      ;Name
           SET XR(200,.01)=""
 +60      ;Termination Date
           SET XR(200,9.2)=""
 +61      ;Date Of Birth
           SET XR(200,5)=""
 +62      ;SSN
           SET XR(200,9)=""
 +63      ;IA# 3405
           DO TRIG^DICR(.XR)
 +64       SET X="Finished Updating any Trigers for cross-reference 'AXUHUI'."
           DO MES^XPDUTL(X)
 +65       QUIT 
 +66      ;
HUIKEY    ;INSTALL 'AXUHUIKEY' CROSS-REFERENCE
 +1        NEW HUIFDA,HUIERR,HUIWP
 +2        SET X="Adding 'AXUHUIKEY' new style cross-reference..."
           DO MES^XPDUTL(X)
 +3       ;FILE NUMBER
           SET HUIFDA(.11,"+1,",.01)=200
 +4       ;X-REF NAME
           SET HUIFDA(.11,"+1,",.02)="AXUHUIKEY"
 +5       ;SHORT DESC.
           SET HUIFDA(.11,"+1,",.11)="HUI key xref"
 +6       ;TYPE
           SET HUIFDA(.11,"+1,",.2)="MU"
 +7       ;EXECUTION
           SET HUIFDA(.11,"+1,",.4)="R"
 +8       ;ROOT TYPE
           SET HUIFDA(.11,"+1,",.5)="W"
 +9       ;ROOT FILE
           SET HUIFDA(.11,"+1,",.51)=200.051
 +10      ;USE
           SET HUIFDA(.11,"+1,",.42)="A"
 +11      ;SET LOGIC
           SET HUIFDA(.11,"+1,",1.1)="D HUIKEY^XUHUI("""",""XUHUI FIELD CHANGE EVENT"","""",""AXUHUIKEY"") Q"
 +12      ;KILL LOGIC
           SET HUIFDA(.11,"+1,",2.1)="D HUIKEY^XUHUI("""",""XUHUI FIELD CHANGE EVENT"",""K"",""AXUHUIKEY"") Q"
 +13      ;WHOLE FILE KILL
           SET HUIFDA(.11,"+1,",2.5)="Q"
 +14      ;
 +15      ;CROSS REFERENCE VALUES
 +16      ;=================================================
 +17      ;ORDER NUMBER
           SET HUIFDA(.114,"+2,+1,",.01)=1
 +18      ;TYPE OF VALUE
           SET HUIFDA(.114,"+2,+1,",1)="F"
 +19      ;FILE NUMBER
           SET HUIFDA(.114,"+2,+1,",2)=200.051
 +20      ;FIELD NUMBER
           SET HUIFDA(.114,"+2,+1,",3)=.01
 +21      ;COLLATION
           SET HUIFDA(.114,"+2,+1,",7)="F"
 +22      ;
 +23      ;FILE THE 'AXUHUIKEY' XREF
 +24       DO UPDATE^DIE("","HUIFDA","","HUIERR")
 +25       IF $DATA(DIERR)
               DO ERR
               QUIT 
 +26      ;SET DESCRIPTION ARRAY
 +27       NEW VAL,HUIIEN
 +28       SET VAL(1)=200
           SET VAL(2)="AXUHUIKEY"
 +29       SET HUIIEN=$$FIND1^DIC(.11,"","X",.VAL,"BB","","HUIERR")
 +30       IF $DATA(DIERR)
               DO ERR
               QUIT 
 +31       SET HUIWP(1)="This new style cross-reference is on the multiple: 'KEYS' so the Hui"
 +32       SET HUIWP(2)="project can monitor the allocation/de-allocation of the 'PROVIDER'"
 +33       SET HUIWP(3)="key."
 +34      ;LONG DESCRIPTION
           DO WP^DIE(.11,HUIIEN_",",.1,"","HUIWP")
 +35       SET X="Finished adding 'AXUHUIKEY' new style cross-reference."
           DO MES^XPDUTL(X)
 +36       SET X="Updating any triggers for new style cross-reference 'AXUHUIKEY'."
           DO MES^XPDUTL(X)
 +37       NEW XR
 +38      ;Name
           SET XR(200.051,.01)=""
 +39      ;IA #3405
           DO TRIG^DICR(.XR)
 +40       SET X="Finished updating triggers for 'AXUHUIKEY' cross-reference."
           DO MES^XPDUTL(X)
 +41       SET X="Post installed finished."
           DO MES^XPDUTL(X)
 +42       QUIT 
 +43      ;
ERR       ;ERROR PROCESSING
 +1        NEW I
           SET I=""
 +2        FOR 
               SET I=$ORDER(HUIERR("DIERR",1,"TEXT",I))
               if I=""
                   QUIT 
               Begin DoDot:1
 +3                DO MES^XPDUTL(HUIERR("DIERR",1,"TEXT",I))
               End DoDot:1
 +4        DO CLEAN^DILF
 +5        QUIT