| 1 | IBYAPT ;ALB/CPM - PATCH IB*2*28 POST-INITIALIZATION ; 25-JAN-95
 | 
|---|
| 2 |  ;;Version 2.0 ; INTEGRATED BILLING ;**28**; 21-MAR-94
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | EN ; Patch IB*2*28 post initialization.
 | 
|---|
| 5 |  ;
 | 
|---|
| 6 |  D DEL ;          delete IBCNS QUIT as an item of IBCNSC INSURANCE CO
 | 
|---|
| 7 |  D ^IBYAONIT ;    install protocols
 | 
|---|
| 8 |  D BLD ;          update ^XUTL("XQORM" for menu protocols
 | 
|---|
| 9 |  D TEM ;          install list templates
 | 
|---|
| 10 |  D ADD ;          add new option to the Ins Mgmt menu
 | 
|---|
| 11 |  D REF ;          build x-refs
 | 
|---|
| 12 |  D BKG^IBYAPT1 ;  queue off insurance clean-up
 | 
|---|
| 13 |  Q
 | 
|---|
| 14 |  ;
 | 
|---|
| 15 |  ;
 | 
|---|
| 16 | DEL ; Delete IBCNS QUIT from the item multiple of IBCNSC INSURANCE CO.
 | 
|---|
| 17 |  S DIC(0)="F",DIC="^ORD(101,",X="IBCNSC INSURANCE CO"
 | 
|---|
| 18 |  D ^DIC K DIC Q:Y<0  S IBMENU=+Y
 | 
|---|
| 19 |  S DIC(0)="F",DIC="^ORD(101,"_IBMENU_",10,",DA(1)=IBMENU,X="IBCNS QUIT"
 | 
|---|
| 20 |  D ^DIC K DIC Q:Y<0  S IBITEM=+Y
 | 
|---|
| 21 |  W !!,">>> Deleting protocol IBCNS QUIT as an item of IBCNSC INSURANCE CO..."
 | 
|---|
| 22 |  W !,"    (It will be added back in momentarily)"
 | 
|---|
| 23 |  S DA(1)=IBMENU,DA=IBITEM,DIK="^ORD(101,"_IBMENU_",10," D ^DIK
 | 
|---|
| 24 |  K DA,DIK,IBITEM,IBMENU
 | 
|---|
| 25 |  Q
 | 
|---|
| 26 |  ;
 | 
|---|
| 27 | BLD ; Update ^XUTL("XQORM" for menu protocols.
 | 
|---|
| 28 |  W !
 | 
|---|
| 29 |  F IBX="IBCNSJ PLAN LOOKUP","IBCNSP POLICY MENU","IBCNSC INSURANCE CO" D
 | 
|---|
| 30 |  .S DIC="^ORD(101,",DIC(0)="F",X=IBX D ^DIC K DIC S IBY=+Y
 | 
|---|
| 31 |  .I IBY>0 D
 | 
|---|
| 32 |  ..W !,">>> Rebuilding ^XUTL(""XQORM"" for protocol '",IBX,"' ..."
 | 
|---|
| 33 |  ..S XQORM=IBY_";ORD(101," D XREF^XQORM
 | 
|---|
| 34 |  K IBX,IBY,ORULT,X,XQORM,Y
 | 
|---|
| 35 |  Q
 | 
|---|
| 36 |  ;
 | 
|---|
| 37 | TEM ; Install List Templates
 | 
|---|
| 38 |  W !!,">>> Installing List Templates..."
 | 
|---|
| 39 |  W !,"'IBCNS EXPANDED POLICY' List Template..."
 | 
|---|
| 40 |  S DA=$O(^SD(409.61,"B","IBCNS EXPANDED POLICY",0)),DIK="^SD(409.61," D ^DIK:DA
 | 
|---|
| 41 |  K DO,DD S DIC(0)="L",DIC="^SD(409.61,",X="IBCNS EXPANDED POLICY" D FILE^DICN S VALM=+Y
 | 
|---|
| 42 |  I VALM>0 D
 | 
|---|
| 43 |  .S ^SD(409.61,VALM,0)="IBCNS EXPANDED POLICY^1^^80^5^17^1^1^Policy^IBCNSP POLICY MENU^Patient Policy Information^1"
 | 
|---|
| 44 |  .S ^SD(409.61,VALM,1)="^VALM HIDDEN ACTIONS"
 | 
|---|
| 45 |  .S ^SD(409.61,VALM,"ARRAY")=" ^TMP(""IBCNSVP"",$J)"
 | 
|---|
| 46 |  .S ^SD(409.61,VALM,"COL",0)="^409.621^^0"
 | 
|---|
| 47 |  .S ^SD(409.61,VALM,"FNL")="D EXIT^IBCNSP"
 | 
|---|
| 48 |  .S ^SD(409.61,VALM,"HDR")="D HDR^IBCNSP"
 | 
|---|
| 49 |  .S ^SD(409.61,VALM,"HLP")="D HELP^IBCNSP"
 | 
|---|
| 50 |  .S ^SD(409.61,VALM,"INIT")="D INIT^IBCNSP"
 | 
|---|
| 51 |  .S DA=VALM,DIK="^SD(409.61," D IX1^DIK K DA,DIK
 | 
|---|
| 52 |  .W "Filed."
 | 
|---|
| 53 |  ;
 | 
|---|
| 54 |  W !,"'IBCNS PLAN LOOKUP' List Template..."
 | 
|---|
| 55 |  S DA=$O(^SD(409.61,"B","IBCNS PLAN LOOKUP",0)),DIK="^SD(409.61," D ^DIK:DA
 | 
|---|
| 56 |  K DO,DD S DIC(0)="L",DIC="^SD(409.61,",X="IBCNS PLAN LOOKUP" D FILE^DICN S VALM=+Y
 | 
|---|
| 57 |  I VALM>0 D
 | 
|---|
| 58 |  .S ^SD(409.61,VALM,0)="IBCNS PLAN LOOKUP^1^^80^7^19^1^1^Plan^IBCNSJ PLAN LOOKUP^Insurance Plan Lookup^1^^1"
 | 
|---|
| 59 |  .S ^SD(409.61,VALM,1)="^VALM HIDDEN ACTIONS"
 | 
|---|
| 60 |  .S ^SD(409.61,VALM,"ARRAY")=" ^TMP(""IBCNSJ"",$J)"
 | 
|---|
| 61 |  .S ^SD(409.61,VALM,"COL",0)="^409.621^8^8"
 | 
|---|
| 62 |  .S ^SD(409.61,VALM,"COL",1,0)="NUMBER^1^4^"
 | 
|---|
| 63 |  .S ^SD(409.61,VALM,"COL",2,0)="GNAME^5^18^Group Name"
 | 
|---|
| 64 |  .S ^SD(409.61,VALM,"COL",3,0)="GNUM^25^17^Group Number"
 | 
|---|
| 65 |  .S ^SD(409.61,VALM,"COL",4,0)="TYPE^44^13^Type of Plan"
 | 
|---|
| 66 |  .S ^SD(409.61,VALM,"COL",5,0)="UR^59^3^UR?"
 | 
|---|
| 67 |  .S ^SD(409.61,VALM,"COL",6,0)="PREC^64^3^Ct?"
 | 
|---|
| 68 |  .S ^SD(409.61,VALM,"COL",7,0)="PREEX^70^4^ExC?"
 | 
|---|
| 69 |  .S ^SD(409.61,VALM,"COL",8,0)="BENAS^76^3^As?"
 | 
|---|
| 70 |  .S ^SD(409.61,VALM,"FNL")="D FNL^IBCNSU2"
 | 
|---|
| 71 |  .S ^SD(409.61,VALM,"HDR")="D HDR^IBCNSU2"
 | 
|---|
| 72 |  .S ^SD(409.61,VALM,"HLP")="S X=""?"" D DISP^XQORM1 W !!"
 | 
|---|
| 73 |  .S ^SD(409.61,VALM,"INIT")="D INIT^IBCNSU2"
 | 
|---|
| 74 |  .S DA=VALM,DIK="^SD(409.61," D IX1^DIK K DA,DIK
 | 
|---|
| 75 |  .W "Filed."
 | 
|---|
| 76 |  ;
 | 
|---|
| 77 |  K DIC,DIK,VALM,X,DA Q
 | 
|---|
| 78 |  ;
 | 
|---|
| 79 | ADD ; Add the option List Plans by Insurance Company to the Ins Mgmt menu
 | 
|---|
| 80 |  S (IBUY,Y)=$O(^DIC(19,"B","IBCN INSURANCE MGMT MENU",0)) Q:Y=""
 | 
|---|
| 81 |  S X=$O(^DIC(19,"B","IBCN LIST PLANS BY INS CO",0)) Q:X=""
 | 
|---|
| 82 |  W !!,">>> Adding IBCN LIST PLANS BY INS CO option to the IBCN INSURANCE MGMT MENU..."
 | 
|---|
| 83 |  I '$D(^DIC(19,+Y,10,0)) S ^DIC(19,+Y,10,0)="^19.01IP^0^0"
 | 
|---|
| 84 |  S (DA,D0)=+Y,DIC="^DIC(19,"_+Y_",10,",DIC(0)="L",DA(1)=+Y,DLAYGO=19.01,X="IBCN LIST PLANS BY INS CO" D ^DIC
 | 
|---|
| 85 |  S DA=+Y,DIE="^DIC(19,"_DA(1)_",10,",DR="2///^S X=""LP""" D ^DIE
 | 
|---|
| 86 |  K DIC,DIE,DA,IBUY,DR,X,Y
 | 
|---|
| 87 |  Q
 | 
|---|
| 88 |  ;
 | 
|---|
| 89 | REF ; Build the ACCP, AGNA, and AGNU cross-references.
 | 
|---|
| 90 |  W !!,">>> Building the 'ACCP' cross-reference for file #355.3 ..."
 | 
|---|
| 91 |  W !,"    (I'll write a dot for every 100 entries processed)",!
 | 
|---|
| 92 |  S (IBCT,IBP)=0
 | 
|---|
| 93 |  F IB=1:1 S IBP=$O(^IBA(355.3,IBP)) Q:'IBP  S IBPD=$G(^(IBP,0)) I IBPD D
 | 
|---|
| 94 |  .W:'(IB#100) "."
 | 
|---|
| 95 |  .S IBX=$P(IBPD,"^",3) I IBX]"" D
 | 
|---|
| 96 |  ..S ^IBA(355.3,"AGNA",+IBPD,IBX,IBP)=""
 | 
|---|
| 97 |  ..S Y=$$COMP^IBCNSJ(IBX) I Y]"" S ^IBA(355.3,"ACCP",+IBPD,Y,IBP)=""
 | 
|---|
| 98 |  .S IBX=$P(IBPD,"^",4) I IBX]"" D
 | 
|---|
| 99 |  ..S ^IBA(355.3,"AGNU",+IBPD,IBX,IBP)=""
 | 
|---|
| 100 |  ..S Y=$$COMP^IBCNSJ(IBX) I Y]"" S ^IBA(355.3,"ACCP",+IBPD,Y,IBP)=""
 | 
|---|
| 101 |  .I $P(IBPD,"^",2),$P(IBPD,"^",10) D
 | 
|---|
| 102 |  ..S DIE="^IBA(355.3,",DA=IBP,DR=".1////@;1.05///NOW;1.06////"_DUZ
 | 
|---|
| 103 |  ..D ^DIE K DIE,DA,DR S IBCT=IBCT+1
 | 
|---|
| 104 |  I IBCT W !?4,"Note that ",IBCT," group plan",$S(IBCT>1:"s",1:"")," had the individual policy pointer removed."
 | 
|---|
| 105 |  K IBCT,IBP,IB,IBPD,IBX,Y
 | 
|---|
| 106 |  Q
 | 
|---|