| 1 | IBCNSJ4 ;ALB/CPM - INACTIVATE MULTIPLE INSURANCE PLANS ; 20-MAR-95
|
---|
| 2 | ;;Version 2.0 ; INTEGRATED BILLING ;**28,62**; 21-MAR-94
|
---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified.
|
---|
| 4 | ;
|
---|
| 5 | EN ; Inactivate/Delete Multiple Plans
|
---|
| 6 | N DFN,IBAB,IBSEL,IBCDFN,IBSUB,IBBUM,IBBUD,IBBUMC
|
---|
| 7 | N IBCPOL,IBDAT,IBDATP,IBCDFN1,IBBU,IBABDAT,IBINACTM,Y
|
---|
| 8 | W !!,"This process will allow you to transfer subscribers from many insurance"
|
---|
| 9 | W !,"plans into one 'master' plan. After the subscribers from each selected"
|
---|
| 10 | W !,"plan are transferred to the master plan, the selected plan will be deleted"
|
---|
| 11 | W !,"from your system."
|
---|
| 12 | W !!,"You should be very careful when you use this tool."
|
---|
| 13 | W !!,"You must first select the master plan into which you will transfer all"
|
---|
| 14 | W !,"selected plan subscribers. This plan must be an active group plan.",!
|
---|
| 15 | ;
|
---|
| 16 | ; - select/display the master plan
|
---|
| 17 | S Y=0,IBINACTM=1 D SEL4^IBCNSJ14 G:IBQUIT ENQ
|
---|
| 18 | S IBPLAND=$G(^IBA(355.3,IBPLAN,0)) D MSTR
|
---|
| 19 | ;
|
---|
| 20 | ; - check annual benefits
|
---|
| 21 | S X="" F S X=$O(^IBA(355.4,"APY",IBPLAN,X)) Q:X="" S IBAB(-X)=""
|
---|
| 22 | I $D(IBAB) W !!,"Annual Benefits have been established for this plan." G CONT
|
---|
| 23 | S DIR(0)="Y",DIR("A")="This plan has no Annual Benefits on file! Do you wish to continue"
|
---|
| 24 | S DIR("?")="If you wish to continue with this processing, enter 'YES.' Otherwise, enter 'NO.'"
|
---|
| 25 | W ! D ^DIR K DIR I 'Y K DIRUT,DTOUT,DUOUT,DIROUT G ENQ
|
---|
| 26 | ;
|
---|
| 27 | CONT ; - explain next step
|
---|
| 28 | I '$D(IBAB) W !!,*7,"Please note that any Benefits Used on file for subscribers who",!,"will be merged into the master plan will be deleted!"
|
---|
| 29 | I $D(IBAB) D
|
---|
| 30 | .W !!,"Any Benefits Used on file for subscribers who will be merged into the"
|
---|
| 31 | .W !,"master plan will also be merged if the master plan has any Annual Benefits"
|
---|
| 32 | .W !,"dated in the same year as the Benefits Used. Please note that the"
|
---|
| 33 | .W !,"Benefits Used date will be changed to match the date of the Annual Benefit."
|
---|
| 34 | ;
|
---|
| 35 | W !!,"You may now select the plans to be merged into the master plan... (type <CR>)"
|
---|
| 36 | R X:DTIME
|
---|
| 37 | ;
|
---|
| 38 | ; - allow multiple plans to be selected
|
---|
| 39 | K ^TMP($J,"IBSEL") W !," ....hmmm..." D LKP^IBCNSU2(IBCNS,1,1,.IBSEL,0,1) I '$O(^TMP($J,"IBSEL",0)) W !!,"No plans were selected!" G ENQ
|
---|
| 40 | D MSTR S (X,Y)=0 F S X=$O(^TMP($J,"IBSEL",X)) Q:'X I X'=IBPLAN S Y=Y+1
|
---|
| 41 | W !!,"There ",$S(Y=1:"was ",1:"were "),$S(Y:Y,1:"no")," plan",$E("s",Y'=1)," selected to be merged into the master plan."
|
---|
| 42 | G:'Y ENQ
|
---|
| 43 | ;
|
---|
| 44 | ; - okay to go?
|
---|
| 45 | S DIR(0)="Y",DIR("A")="Okay to merge th"_$S(Y=1:"is",1:"ese")_" plan"_$S(Y=1:"",1:"s")_" into the master plan"
|
---|
| 46 | S DIR("?")="If you wish to merge the selected plans into the master plan, enter 'YES.' Otherwise, enter 'NO.'"
|
---|
| 47 | W ! D ^DIR K DIR I 'Y K DIRUT,DTOUT,DUOUT,DIROUT G ENQ
|
---|
| 48 | ;
|
---|
| 49 | W !!,"Merging each selected plan into the master plan...",!
|
---|
| 50 | S (IBSUB,IBBUD,IBBUM,IBBUMC)=0
|
---|
| 51 | S IBCPOL=0 F S IBCPOL=$O(^TMP($J,"IBSEL",IBCPOL)) Q:'IBCPOL I IBCPOL'=IBPLAN D
|
---|
| 52 | .W "." K ^TMP($J,"IBSUBS")
|
---|
| 53 | .S IBSUB=IBSUB+$$SUBS^IBCNSJ(IBCNS,IBCPOL,0,"^TMP($J,""IBSUBS"")")
|
---|
| 54 | .;
|
---|
| 55 | .; - move the subscribers and benefits used
|
---|
| 56 | .S DFN=0 F S DFN=$O(^TMP($J,"IBSUBS",DFN)) Q:'DFN D
|
---|
| 57 | ..S IBCDFN=0 F S IBCDFN=$O(^TMP($J,"IBSUBS",DFN,IBCDFN)) Q:'IBCDFN D
|
---|
| 58 | ...Q:$P($G(^DPT(DFN,.312,IBCDFN,0)),"^",18)=IBPLAN
|
---|
| 59 | ...D SWPL^IBCNSJ13(IBPLAN,DFN,IBCDFN)
|
---|
| 60 | ...;
|
---|
| 61 | ...; - merge/change/delete previous benefits used
|
---|
| 62 | ...S IBDAT="" F S IBDAT=$O(^IBA(355.5,"APPY",DFN,IBCPOL,IBDAT)) Q:IBDAT="" D
|
---|
| 63 | ....S IBCDFN1=0 F S IBCDFN1=$O(^IBA(355.5,"APPY",DFN,IBCPOL,IBDAT,IBCDFN1)) Q:'IBCDFN1 I IBCDFN1=IBCDFN S IBBU=$O(^(IBCDFN1,0)) D
|
---|
| 64 | .....S IBDATP=-IBDAT,IBABDAT=$O(IBAB($E(IBDATP,1,3)_"0000"))
|
---|
| 65 | .....I $E(IBABDAT,1,3)'=$E(IBDATP,1,3) S IBBUD=IBBUD+1 D DBU^IBCNSJ(IBBU) Q
|
---|
| 66 | .....S IBBUM=IBBUM+1 S:IBABDAT'=IBDATP IBBUMC=IBBUMC+1
|
---|
| 67 | .....D MERG^IBCNSJ13(IBPLAN,IBBU,$S(IBABDAT'=IBDATP:IBABDAT,1:0))
|
---|
| 68 | .;
|
---|
| 69 | .; - delete the plan
|
---|
| 70 | .D DEL^IBCNSJ(IBCPOL)
|
---|
| 71 | ;
|
---|
| 72 | W !!,"All selected plans have been deleted."
|
---|
| 73 | W !,$S(IBSUB:IBSUB,1:"No")," subscriber",$S(IBSUB=1:" was",1:"s were")," transferred to the master plan."
|
---|
| 74 | W !,$S(IBBUD:IBBUD,1:"No")," Benefits Used record",$S(IBBUD=1:" was",1:"s were")," deleted."
|
---|
| 75 | W !,$S(IBBUM:IBBUM,1:"No")," Benefits Used record",$S(IBBUM=1:" was",1:"s were")," merged."
|
---|
| 76 | I IBBUM W " (",IBBUMC," had the date changed)"
|
---|
| 77 | ;
|
---|
| 78 | ENQ K ^TMP($J,"IBSUBS"),^("IBSEL")
|
---|
| 79 | Q
|
---|
| 80 | ;
|
---|
| 81 | ;
|
---|
| 82 | MSTR ; Display Master Plan Information
|
---|
| 83 | W !!?24,"*** M A S T E R P L A N ***"
|
---|
| 84 | W !,"Plan Company: ",$P($G(^DIC(36,IBCNS,0)),"^")
|
---|
| 85 | W !?3,"Plan Name: ",$S($P(IBPLAND,"^",3)]"":$P(IBPLAND,"^",3),1:"<unspecified>")
|
---|
| 86 | W !," Plan Number: ",$S($P(IBPLAND,"^",4)]"":$P(IBPLAND,"^",4),1:"<unspecified>")
|
---|
| 87 | Q
|
---|
| 88 | ;
|
---|
| 89 | ;
|
---|
| 90 | ASK() ; Does the user wish to inactivate multiple plans?
|
---|
| 91 | N DIR,DIRUT,DUOUT,DTOUT,DIROUT,X,Y
|
---|
| 92 | S DIR(0)="Y",DIR("A")="Do you wish to delete multiple plans simultaneously"
|
---|
| 93 | S DIR("?")="If you wish to transfer subscribers from many duplicate plans into a master plan, enter 'YES.' To inactivate a single plan, enter 'NO.'"
|
---|
| 94 | W ! D ^DIR
|
---|
| 95 | Q $S($D(DIRUT)!$D(DUOUT):-1,1:+Y)
|
---|