12:45 PM  13-SEP-96
AUM v 96.1 Patch 10, SCB Updates from 09Sep96 Banyan.  Restore 5 routines and DO ^AUM6110.
A9AUM10
A9AUM10 ; IHS/ADC/GTH - STANDARD TABLE UPDATES, 09SEP96 BANYAN, RPI ; [ 09/13/96  12:44 PM ]
 ;;96.1;TABLE MAINTENANCE;**10**;OCT 26,1995
 ;
 D START^AUM6110
INTERACT ;EP - Delete routines from interactive call.
 Q:'$L($G(^%ZOSF("DEL")))
 NEW AUM,X
 F AUM=1:1 S X=$P($T(DEL+AUM),";",3) Q:X=""  X ^%ZOSF("DEL") I '$D(ZTQUEUED) W !,X,$E("...........",1,11-$L(X)),"<poof'd>"
 Q
DEL ;     
 ;;A9AUM9
 ;;AUM6110
 ;;AUM61101
 ;;AUM6110A
 ;;AUM6110M

AUM6110
AUM6110 ; IHS/ADC/GTH - STANDARD TABLE UPDATES, 09SEP96 BANYAN ; [ 09/13/96  11:57 AM ]
 ;;96.1;TABLE MAINTENANCE;**10**;OCT 26,1995
 ;
 I '$G(DUZ) W !,"DUZ UNDEFINED OR ZERO.",! Q
 D HOME^%ZIS,DT^DICRW,HELP("INTRO")
 S (DIR(0),DIR("B"))="Y"
 S DIR("A")="Do you want to queue the update to TaskMan"
 S DIR("??")="^D HELP^AUM6110(""Q2"")"
 D ^DIR
 KILL DIR
 I $D(DIRUT) D HELP("Q2") Q
 G START:'Y
QUE ;
 S %DT="AERSX",%DT("A")="Requested Start Time: ",%DT("B")="T@2015",%DT(0)="NOW"
 D ^%DT
 I Y<1 W !,"QUEUE INFORMATION MISSING - NOT QUEUED" D Q2 G AUM6110
 S X=+Y
 D H^%DTC
 S ZTDTH=%H_","_%T
 S ZTRTN="START^AUM6110",ZTIO="",ZTDESC=$P($P($T(+1),";",2)," ",4,99)
 D ^%ZTLOAD,HOME^%ZIS
 I $D(ZTSK) W !!,"QUEUED TO TASK ",ZTSK,!!,"A mail message with the results will be sent to your MailMan 'IN' basket.",!
 E  W !!,*7,"QUEUE UNSUCCESSFUL.  RESTART UTILITY."
 Q
 ;
START ;EP - From Taskman
 ;
 NEW XMSUB,XMDUZ,XMTEXT,XMY
 KILL ^TMP("AUM6110",$J)
 D START^AUM61101
 S XMSUB=$P($P($T(+1),";",2)," ",4,99),XMDUZ=$S($G(DUZ):DUZ,1:.5),XMTEXT="^TMP(""AUM6110"",$J,",XMY(1)="",XMY(DUZ)=""
 D ^XMD
 KILL ^TMP("AUM6110",$J)
 I $D(ZTQUEUED) S ZTREQ="@" Q
 W !!,"The results are in your MailMan 'IN' basket.",!
 I $L($T(DIR^XBDIR)),$$DIR^XBDIR("Y","Want me to delete the routines in this patch","Y") G INTERACT^A9AUM10
 Q
 ;
INTRO ;
 ;;This updates standard tables according to the changes specified in
 ;;the Banyan message time stamped 09Sep96@11:49:22 MDT. Please consult
 ;;that message, and the mail message produced by this update.
 ;;
 ;;###
 ;
Q2 ;
 ;;Answer "Y" if you want to queue this standard table update to TaskMan.
 ;;Answer "N" if you want to run this update interactively.
 ;;
 ;;If you run interactively, results will be displayed on your screen,
 ;;as well as in the mail message sent to you and user 1.  If you queue
 ;;to TaskMan, please read the mail message for results of this update.
 ;;###
 ;
HELP(L) ;EP - Display text at label L.
 W !
 F %=1:1 W !?4,$P($T(@L+%),";",3) Q:$P($T(@L+%+1),";",3)="###"
 Q
 ;

AUM61101
AUM61101 ; IHS/ADC/GTH - STANDARD TABLE UPDATES, 09SEP96 BANYAN ; [ 09/13/96  12:03 PM ]
 ;;96.1;TABLE MAINTENANCE;**10**;OCT 26,1995
 ;
 Q
 ;
START ;EP
 ;
 NEW A,C,DIC,DIE,DLAYGO,DR,E,L,M,N,O,P,R,S,T
 ;
 S E(0)="ERROR : ",E(1)="NOT ADDED : "
 D RSLT($J("",15)_$P($T(UPDATE^AUM6110A),";",3))
 D DASH,SUNEW,DASH,COMMNEW
 ;
 Q
 ;
 ; -----------------------------------------------------
 ;
ADDOK D RSLT($J("",5)_"Added : "_L) Q
ADDFAIL D RSLT($J("",5)_E(0)_"ADD FAILED => "_L) Q
DASH D RSLT(""),RSLT($$REPEAT^XLFSTR("-",$S($G(IOM):IOM-10,1:70))),RSLT("") Q
DIE NEW A,C,E,L,M,N,O,P,R,S,T
 LOCK +(@(DIE_DA_")")):10 E  D RSLT($J("",5)_E(0)_"Entry '"_DIE_DA_"' IS LOCKED.  NOTIFY PROGRAMMER.") S Y=1 Q
 D ^DIE LOCK -(@(DIE_DA_")")) K DA,DIE,DR Q
IEN(X,%,Y) ;
 S Y=$O(@(X_"""C"",%,0)"))
 I 'Y S Y=$T(@%^AUM6110M) I Y NEW Z S Z=E D  S:Y<0 Y="" S E=Z
 . NEW A,C,L,M,N,O,P,R,S,V,%
 . S L=Y
 . I X["AREA" NEW X S E=E_" (Add Area) " D ADDAREA Q
 . I X["SU" NEW X S E=E_" (Add SU) " D ADDSU Q
 . I X["CTY" NEW X S E=E_" (Add County) " D ADDCNTY Q
 .Q
 D:'Y RSLT($J("",5)_E(0)_$P(@(X_"0)"),U)_" DOES NOT EXIST => "_%)
 Q +Y
DIK NEW A,C,E,L,M,N,O,P,R,S,T D ^DIK K DIK Q
FILE NEW A,C,E,L,M,N,O,P,R,S,T K DD,DO S DIC(0)="L" D FILE^DICN K DIC Q
MODOK D RSLT($J("",5)_"Changed : "_L) Q
RSLT(%) S ^(0)=$G(^TMP("AUM6110",$J,0))+1,^(^(0))=% W:'$D(ZTQUEUED) !,% Q
ZEROTH(A,B,C,D,E,F,G,H,I,J,K) ; Return 0th node.  A is file #, rest fields.
 I '$G(A) Q -1
 I '$G(B) Q -1
 F %=67:1:75 Q:'$G(@($C(%)))  S A=+$P(^DD(A,B,0),U,2),B=@($C(%))
 I 'A!('B) Q -1
 I '$D(^DD(A,B,0)) Q -1
 Q U_$P(^DD(A,B,0),U,2)
 ;
 ; -----------------------------------------------------
 ;
AREANEW ;
 S E="New Area Codes"
 D RSLT(E)
 F T=1:1 S L=$T(AREANEW+T^AUM6110A) Q:$P(L,";",3)="END"  D ADDAREA
 Q
 ;
ADDAREA ; PROGRAMMER NOTE:  This s/r is required for every patch.
 S L=$P(L,";;",2),A=$P(L,U),N=$P(L,U,2),R=$P(L,U,3),C=$P(L,U,4),L=A_" "_N_" "_R_" "_C
 I $D(^AUTTAREA("B",N)) D RSLT($J("",5)_E(1)_"NAME EXISTS => "_N) Q
 I $D(^AUTTAREA("C",A)) D RSLT($J("",5)_E(1)_"CODE EXISTS => "_A) Q
 S DLAYGO=9999999.21,DIC="^AUTTAREA(",X=N,DIC("DR")=".02///"_A_";.03///"_R_";.04///"_C
 D FILE,ADDFAIL:Y<0,ADDOK:Y>0
 KILL DLAYGO
 Q
 ;
 ; -----------------------------------------------------
 ;
ADDCNTY ; PROGRAMMER NOTE:  This s/r is required for every patch.
 S L=$P(L,";;",2),S=$P(L,U),C=$P(L,U,2),N=$P(L,U,3),L=S_" "_C_" "_N
 I $D(^AUTTCTY("C",S_C)) D RSLT($J("",5)_E(1)_"CODE EXISTS => "_S_C) Q
 S P("S")=$$IEN("^DIC(5,",S)
 Q:'P("S")
 S DIC="^AUTTCTY(",X=N,DIC("DR")=".02////"_P("S")_";.03///"_C
 D FILE,ADDFAIL:Y<0,ADDOK:Y>0
 Q
 ;
 ; -----------------------------------------------------
 ;
SUNEW ;
 S E="New Service Unit Codes, Section VIII-B"
 D RSLT(E)
 D RSLT($J("",13)_"AA SU NAME")
 D RSLT($J("",13)_"-- -- ----")
 F T=1:1 S L=$T(SUNEW+T^AUM6110A) Q:$P(L,";",3)="END"  D ADDSU
 Q
 ;
ADDSU ; PROGRAMMER NOTE:  This s/r is required for every patch.
 S L=$P(L,";;",2),A=$P(L,U),S=$P(L,U,2),N=$P(L,U,3),L=A_" "_S_" "_N
 I $D(^AUTTSU("C",A_S)) D RSLT($J("",5)_E(1)_"ASU EXISTS => "_A_S) Q
 S P=$$IEN("^AUTTAREA(",A)
 Q:'P
 S DLAYGO=9999999.22,DIC="^AUTTSU(",X=N,DIC("DR")=".02////"_P_";.03///"_S
 D FILE,ADDFAIL:Y<0,ADDOK:Y>0
 KILL DLAYGO
 Q
 ;
SUMOD ;
 S E="Service Unit Code Changes, Section VIII-B"
 D RSLT(E)
 D RSLT($J("",15)_"AA SU NAME")
 D RSLT($J("",15)_"-- -- ----")
 F T=1:2 S L=$T(SUMOD+T^AUM6110A) Q:$P(L,";",3)="END"  S L("TO")=$T(SUMOD+T+1^AUM6110A) D
 . S L=$P(L,U,2,99),A=$P(L,U),S=$P(L,U,2),N=$P(L,U,3)
 . S P=$O(^AUTTSU("C",A_S,0))
 . S L=$P(L("TO"),U,2,99),A=$P(L,U),S=$P(L,U,2),N=$P(L,U,3)
 . I 'P S P=$O(^AUTTSU("C",A_S,0)) I 'P S L=";;"_L D ADDSU Q
 . S L=A_" "_S_" "_N
 . S P("A")=$$IEN("^AUTTAREA(",A)
 . Q:'P("A")
 . S DIE="^AUTTSU(",DA=P,DR=".01///"_N_";.02////"_P("A")_";.03///"_S
 . D DIE
 . I $D(Y) D RSLT(E(0)_E_" : EDIT SERVICE UNIT FAILED => "_L) Q
 . D MODOK
 .Q
 ;
 Q
 ;
 ; -----------------------------------------------------
 ;
LOCNEW ;
 S E="New Location Codes, Section VIII-C"
 D RSLT(E)
 D RSLT($J("",13)_"AA SU FA NAME"_$J("",28)_"PSEUDO")
 D RSLT($J("",13)_"-- -- -- ----"_$J("",28)_"------")
 F T=1:1 S L=$T(LOCNEW+T^AUM6110A) Q:$P(L,";",3)="END"  D ADDLOC
 Q
 ;
ADDLOC ;
 S L=$P(L,";;",2),A=$P(L,U),S=$P(L,U,2),F=$P(L,U,3),N=$P(L,U,4),P=$P(L,U,5)
 S L=A_" "_S_" "_F_" "_N_$J("",32-$L(N))_P
 S %=A_S_F,%=$O(^AUTTLOC("C",%,0))
 I % D RSLT($J("",5)_E(1)_"ASUFAC EXISTS => "_A_S_F) D  Q
 . I $P($G(^AUTTLOC(%,0)),U,21) S DIE="^AUTTLOC(",DA=%,DR=".27///@" D DIE D:$D(Y) RSLT($J("",5)_E(0)_"DELETE INACTIVE DATE FAILED => "_L) D:'$D(Y) RSLT($J("",5)_"INACTIVE DATE DELETED => "_L)
 . S %=$O(^AUTTLOC("C",A_S_F,0)),%=$P(^AUTTLOC(%,0),U)
 . I %,$D(^DIC(4,%,0)),N'=$P(^DIC(4,%,0),U) S DIE="^DIC(4,",DA=%,DR=".01///"_N D DIE D:$D(Y) RSLT($J("",5)_E(0)_"EDIT INSTITUTION FAILED => "_L) D:'$D(Y) RSLT($J("",5)_"INSTITUTION NAME UPDATED => "_L)
 . S %=$O(^AUTTLOC("C",A_S_F,0))
 . I P'=$P($G(^AUTTLOC(%,1)),U,2) S DIE="^AUTTLOC(",DA=%,DR=".31///"_P D DIE D:$D(Y) RSLT($J("",5)_E(0)_"EDIT PSEUDO PREFIX FAILED => "_L) D:'$D(Y) RSLT($J("",5)_"PSEUDO PREFIX UPDATED => "_L)
 .Q
 S P("A")=$$IEN("^AUTTAREA(",A)
 Q:'P("A")
 S P("S")=$$IEN("^AUTTSU(",A_S)
 Q:'P("S")
 F DINUM=+$P(^DIC(4,0),U,3):1 Q:'$D(^DIC(4,DINUM))&('$D(^AUTTLOC(DINUM)))  I DINUM>99999 D RSLT($J("",5)_E(0)_"DINUM FOR LOC/INSTITUTION TOO BIG. NOTIFY ISC.") Q
 Q:DINUM>99999
 S DLAYGO=4,DIC="^DIC(4,",X=N
 D FILE
 KILL DINUM,DLAYGO
 I Y<0 D RSLT($J("",5)_E(0)_"^DIC(4 ADD FAILED => "_L) Q
 S DINUM=+Y,DLAYGO=9999999.06,DIC="^AUTTLOC(",X=DINUM,DIC("DR")=".04////"_P("A")_";.05////"_P("S")_";.07///"_F_";.31///"_P
 D FILE,ADDFAIL:Y<0,ADDOK:Y>0
 KILL DINUM,DLAYGO
 Q
 ;
LOCMOD ;
 S E="Location Code Changes, Section VIII-C"
 D RSLT(E)
 D RSLT($J("",15)_"AA SU FA NAME"_$J("",28)_"PSEUDO")
 D RSLT($J("",15)_"-- -- -- ----"_$J("",28)_"------")
 F T=1:2 S L=$T(LOCMOD+T^AUM6110A) Q:$P(L,";",3)="END"  S L("TO")=$T(LOCMOD+T+1^AUM6110A) D
 . S L=$P(L,U,2,99),A=$P(L,U),S=$P(L,U,2),F=$P(L,U,3)
 . S P=$O(^AUTTLOC("C",A_S_F,0))
 . S L=$P(L("TO"),U,2,99),A=$P(L,U),S=$P(L,U,2),F=$P(L,U,3),N=$P(L,U,4)
 . I 'P S P=$O(^AUTTLOC("C",A_S_F,0)) I 'P S L=";;"_L D ADDLOC Q
 . S L=A_" "_S_" "_F_" "_N_$J("",32-$L(N))_$P(L("TO"),U,6)
 . S P("A")=$$IEN("^AUTTAREA(",A)
 . Q:'P("A")
 . S P("S")=$$IEN("^AUTTSU(",A_S)
 . Q:'P("S")
 . S DIE="^AUTTLOC(",DA=P,DR=".04////"_P("A")_";.05////"_P("S")_";.07///"_F_";.31///"_$P(L("TO"),U,6)
 . D DIE
 . I $D(Y) D RSLT($J("",5)_E(0)_"EDIT LOCATION FAILED => "_L) Q
 . S DIE="^DIC(4,",DA=$P(^AUTTLOC(P,0),U),DR=".01///"_N
 . D DIE
 . I $D(Y) D RSLT($J("",5)_E(0)_"EDIT INSTITUTION FAILED => "_L) Q
 . D MODOK
 .Q
 D DASH,RSLT($$LOCMOD^AUMXPORT("AUM6110A")_" patients marked for export because of the Location Code changes.")
 ;
 Q
 ;
 ; -----------------------------------------------------
 ;
COMMNEW ;
 S E="New Community Codes, Section V-C"
 D RSLT(E)
 D RSLT($J("",13)_"ST CT COM NAME"_$J("",28)_"AA SU")
 D RSLT($J("",13)_"-- -- --- ----"_$J("",28)_"-- --")
 F T=1:1 S L=$T(COMMNEW+T^AUM6110A) Q:$P(L,";",3)="END"  D ADDCOMM
 Q
 ;
ADDCOMM ;
 S L=$P(L,";;",2),S=$P(L,U),O=$P(L,U,2),C=$P(L,U,3),N=$P(L,U,4),A=$P(L,U,5),V=$P(L,U,6),L=S_" "_O_" "_C_" "_N_$J("",32-$L(N))_A_" "_V
 I $D(^AUTTCOM("C",S_O_C)) D RSLT($J("",5)_E(1)_"STCTYCOM CODE EXISTS => "_S_O_C) Q
 S P("O")=$$IEN^AUM61101("^AUTTCTY(",S_O)
 Q:'P("O")
 S P("A")=$$IEN^AUM61101("^AUTTAREA(",A)
 Q:'P("A")
 S P("V")=$$IEN^AUM61101("^AUTTSU(",A_V)
 Q:'P("V")
 S DLAYGO=9999999.05,DIC="^AUTTCOM(",X=N,DIC("DR")=".02////"_P("O")_";.05////"_P("V")_";.06////"_P("A")_";.07///"_C
 D FILE,ADDFAIL:Y<0,ADDOK:Y>0
 KILL DLAYGO
 Q
 ;
 ; -----------------------------------------------------
 ;
TRIBNEW ;
 S E="New Tribe Codes, Section XVIII"
 D RSLT(E)
 D RSLT($J("",13)_"CODE NAME")
 D RSLT($J("",13)_"---- ----")
 F T=1:1 S L=$T(TRIBNEW+T^AUM6110A) Q:$P(L,";",3)="END"  D ADDTRIB
 Q
 ;
ADDTRIB ;
 S L=$P(L,";;",2),C=$P(L,U),N=$P(L,U,2),L=C_"  "_N
 I $D(^AUTTTRI("C",C)) D RSLT($J("",5)_E(1)_" : TRIBE CODE EXISTS => "_C) Q
 S DLAYGO=9999999.03,DIC="^AUTTTRI(",X=N,DIC("DR")=".02///"_C
 D FILE,ADDFAIL:Y<0,ADDOK:Y>0
 Q
 ;
 ;

AUM6110A
AUM6110A ; IHS/ADC/GTH - STANDARD TABLE UPDATES DATA A, 09SEP96 BANYAN ; [ 09/13/96  12:41 PM ]
 ;;96.1;TABLE MAINTENANCE;**10**;OCT 26,1995
 ;
UPDATE ;;IHS STANDARD CODE BOOK MODIFICATIONS - AUGUST 1996  9/9/96
 ;
SUNEW ;;A.  NEW SERVICE UNIT CODES (SECTION VIII-B): AREA^S.U.^NAME
 ;;20^28^JICARILLA
 ;;END
 ;
COMMNEW ;;B.  NEW COMMUNITY CODES (SECTION V-C): STATE^CNTY^COMM^NAME^AREA^S.U.
 ;;23^19^310^BRADFORD^58^62
 ;;23^19^311^BURLINGTON^58^62
 ;;23^19^312^CARROLL PLANTATION^58^62
 ;;23^19^313^CHARLESTON^58^62
 ;;23^19^314^CHESTER^58^62
 ;;23^19^315^CLIFTON^58^62
 ;;23^19^316^CORINNA^58^62
 ;;23^19^317^CORINTH^58^62
 ;;23^19^318^DEXTER^58^62
 ;;23^19^319^DREW PLANTATION^58^62
 ;;23^19^320^EDINBURG^58^62
 ;;23^19^321^GARLAND^58^62
 ;;23^19^322^HOLDEN^58^62
 ;;23^19^323^LOWELL^58^62
 ;;23^19^324^MAXFIELD^58^62
 ;;23^19^325^MEDWAY^58^62
 ;;23^19^326^MT CHASE PLANTATION^58^62
 ;;23^19^327^PRENTISS PLANTATION^58^62
 ;;23^19^328^SEBOEIS PLANTATION^58^62
 ;;23^19^329^STACEYVILLE^58^62
 ;;23^19^330^STETSON^58^62
 ;;23^19^331^WEBSTER^58^62
 ;;23^19^332^WINN^58^62
 ;;23^19^333^WOODVILLE^58^62
 ;;28^15^800^CRYSTAL SPRINGS^58^00
 ;;28^23^801^BAY ST LOUIS^58^00
 ;;28^24^802^BILOXI^58^00
 ;;28^24^803^GULF PORT^58^00
 ;;28^24^804^LONG BEACH^58^00
 ;;28^24^805^PASS CHRISTIAN^58^00
 ;;28^25^806^CLINTON^58^00
 ;;28^25^807^JACKSON^58^00
 ;;28^30^808^GAUTIER^58^00
 ;;28^30^809^MOSS POINT^58^00
 ;;28^33^810^PRENTISS^58^00
 ;;28^37^811^PURVIS^58^00
 ;;28^38^812^BAILEY^58^00
 ;;28^38^813^MERIDIAN^58^00
 ;;28^41^814^SHANNON^58^00
 ;;28^45^815^MADISON^58^00
 ;;28^46^816^COLUMBIA^58^00
 ;;28^53^817^STARKVILLE^58^00
 ;;28^61^818^BRANDON^58^00
 ;;28^63^819^ROLLINGFORK^58^00
 ;;28^64^820^BRAXTON^58^00
 ;;28^75^821^VICKSBURG^58^00
 ;;28^76^822^GREENVILLE^58^00
 ;;46^50^110^FLANDREAU SCHOOL^15^11
 ;;END
 ;

AUM6110M
AUM6110M ; IHS/ADC/GTH - BACKGROUND VALUES FOR STANDARD TABLE UPDATES, 09SEP96 BANYAN ; [ 09/13/96  12:37 PM ]
 ;;96.1;TABLE MAINTENANCE;**10**;OCT 26,1995
 ;
AREA ; CODE^NAME^PREFIX/REGION^CAN PREFIX
15 ;;15^ABERDEEN TRIBE/638^C^J45
20 ;;20^ALBUQUERQUE^Q^J53
58 ;;58^NASHVILLE NON-IHS^U^J51
 ;
SU ; AREA^SU^NAME
1511 ;;15^11^FLANDREAU
5800 ;;58^00^NON SERVICE UNIT
5862 ;;58^62^PENOBSCOT
 ;
COUNTY ; STATE^COUNTY^NAME
2319 ;;23^19^PENOBSCOT
2815 ;;28^15^COPIAH
2823 ;;28^23^HANCOCK
2824 ;;28^24^HARRISON
2825 ;;28^25^HINDS
2830 ;;28^30^JACKSON
2833 ;;28^33^JEFFER DAVIS
2837 ;;28^37^LAMAR
2838 ;;28^38^LAUDERDALE
2841 ;;28^41^LEE
2845 ;;28^45^MADISON
2846 ;;28^46^MARION
2853 ;;28^53^OKTIBBEHA
2861 ;;28^61^RANKIN
2863 ;;28^63^SHARKEY
2864 ;;28^64^SIMPSON
2875 ;;28^75^WARREN
2876 ;;28^76^WASHINGTON
4650 ;;46^50^MOODY
 ;



