| [613] | 1 | IBJDF6 ;ALB/RB - MISCELLANEOUS BILLS FOLLOW-UP REPORT ;15-APR-00 | 
|---|
|  | 2 | ;;2.0;INTEGRATED BILLING;**123,159**;21-MAR-94 | 
|---|
|  | 3 | ; | 
|---|
|  | 4 | EN ; - Option entry point. | 
|---|
|  | 5 | ; | 
|---|
|  | 6 | SEL ; - Select type of receivables to print. | 
|---|
|  | 7 | K IBCTG S IBPRT="Choose which type of receivables to print:" | 
|---|
|  | 8 | S IBCTG(1)="MEDICARE" | 
|---|
|  | 9 | S IBCTG(2)="NO-FAULT AUTO ACCIDENT" | 
|---|
|  | 10 | S IBCTG(3)="TORT FEASOR" | 
|---|
|  | 11 | S IBCTG(4)="WORKMEN'S COMP" | 
|---|
|  | 12 | S IBCTG(5)="CURRENT EMPLOYEE" | 
|---|
|  | 13 | S IBCTG(6)="EX-EMPLOYEE" | 
|---|
|  | 14 | S IBCTG(7)="FEDERAL AGENCIES-REFUND" | 
|---|
|  | 15 | S IBCTG(8)="FEDERAL AGENCIES-REIMBURSEMENT" | 
|---|
|  | 16 | S IBCTG(9)="MILITARY" | 
|---|
|  | 17 | S IBCTG(10)="INTERAGENCY" | 
|---|
|  | 18 | S IBCTG(11)="VENDOR" | 
|---|
|  | 19 | S IBCTG(12)="ALL OF THE ABOVE" | 
|---|
|  | 20 | ; | 
|---|
|  | 21 | S IBSEL=$$MLTP^IBJD(IBPRT,.IBCTG,1) I 'IBSEL G ENQ | 
|---|
|  | 22 | S (IB0,IB1)=0 | 
|---|
|  | 23 | F X=1:1 S Y=$P(IBSEL,",",X) Q:'Y  D | 
|---|
|  | 24 | . I Y=1!(Y=2)!(Y=3)!(Y=4) S IB0=1 Q | 
|---|
|  | 25 | . S IB1=1 | 
|---|
|  | 26 | G ENQ:'IBSEL S IBSEL=","_IBSEL | 
|---|
|  | 27 | ; | 
|---|
|  | 28 | ; - Sort by division. | 
|---|
|  | 29 | S IBSDV=0 I IB0 S IBSDV=$$SDIV^IBJD() I IBSDV["^" G ENQ | 
|---|
|  | 30 | ; | 
|---|
|  | 31 | ; - Select a detailed or summary report. | 
|---|
|  | 32 | D DS^IBJD I IBRPT["^" G ENQ | 
|---|
|  | 33 | ; | 
|---|
|  | 34 | I IBSDV S IB2=0 F X=2:1 S Y=$P(IBSEL,",",X) Q:'Y  D:Y>4 | 
|---|
|  | 35 | . I 'IB2 D  S IB2=1 | 
|---|
|  | 36 | . . W !!,"NOTE: The receivables of these types will NOT be sorted by division:",!,*7 | 
|---|
|  | 37 | . W !?6,IBCTG(Y) | 
|---|
|  | 38 | ; | 
|---|
|  | 39 | G DEV:IBRPT="S" | 
|---|
|  | 40 | ; | 
|---|
|  | 41 | ; - Determine sorting (By name or Last 4 SSN) | 
|---|
|  | 42 | S (IBSN,X)="" | 
|---|
|  | 43 | I IB0 D  I IBSN="^"!(X="^") G ENQ | 
|---|
|  | 44 | . S IBSN=$$SNL^IBJD() Q:IBSN="^" | 
|---|
|  | 45 | . W !!,"These receivables will be sorted by PATIENT/SSN:",! | 
|---|
|  | 46 | . F X=2:1 S Y=$P(IBSEL,",",X) Q:'Y  I Y<5 W !?6,IBCTG(Y) | 
|---|
|  | 47 | . ; - Determine the PATIENT range | 
|---|
|  | 48 | . S X=$$INTV^IBJD("PATIENT "_$S(IBSN="N":"NAME",1:"LAST 4")) Q:X="^" | 
|---|
|  | 49 | . S IBSNF=$P(X,"^",1),IBSNL=$P(X,"^",2),IBSNA=$P(X,"^",3) | 
|---|
|  | 50 | ; | 
|---|
|  | 51 | ; - Determine range of debtors. | 
|---|
|  | 52 | I 'IB1 G AGE | 
|---|
|  | 53 | ; | 
|---|
|  | 54 | I IB0 D | 
|---|
|  | 55 | . W !!,"These receivables will be sorted by DEBTOR:",! | 
|---|
|  | 56 | . F X=2:1 S Y=$P(IBSEL,",",X) Q:'Y  I Y>4 W !?6,IBCTG(Y) | 
|---|
|  | 57 | S VAUTD(0)="" | 
|---|
|  | 58 | ; | 
|---|
|  | 59 | ; - Determine the DEBTOR range | 
|---|
|  | 60 | S X=$$INTV^IBJD("DEBTOR") G ENQ:X="^" | 
|---|
|  | 61 | S IBSDF=$P(X,"^",1),IBSDL=$P(X,"^",2),IBSDA=$P(X,"^",3) | 
|---|
|  | 62 | ; | 
|---|
|  | 63 | AGE ; - Determine if the active receivable must be within an age range. | 
|---|
|  | 64 | W !!,"Include (A)LL active AR's or those within an AGE (R)ANGE: ALL// " | 
|---|
|  | 65 | R X:DTIME G:'$T!(X["^") ENQ S:X="" X="A" S X=$E(X) | 
|---|
|  | 66 | I "ARar"'[X S IBOFF=1 D HELP^IBJDF6H G AGE | 
|---|
|  | 67 | W "  ",$S("Rr"[X:"RANGE",1:"ALL") | 
|---|
|  | 68 | S IBSMN=$S("Rr"[X:"R",1:"A") G:IBSMN="A" AMT | 
|---|
|  | 69 | ; | 
|---|
|  | 70 | ; - Determine the active receivable age range. | 
|---|
|  | 71 | S DIR(0)="NA^1:99999" | 
|---|
|  | 72 | S DIR("A")="Enter the minimum age of the active receivable: " | 
|---|
|  | 73 | S DIR("T")=DTIME,DIR("?")="^S IBOFF=9 D HELP^IBJDF6H" | 
|---|
|  | 74 | D ^DIR K DIR G:$D(DIRUT)!$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 75 | S IBSMN=+Y W "   ",IBSMN," DAYS" K DIROUT,DTOUT,DUOUT,DIRUT | 
|---|
|  | 76 | ; | 
|---|
|  | 77 | S DIR(0)="NA^"_IBSMN_":99999",DIR("B")=IBSMN | 
|---|
|  | 78 | S DIR("A")="Enter the maximum age of the active receivable: " | 
|---|
|  | 79 | S DIR("T")=DTIME,DIR("?")="^S IBOFF=14 D HELP^IBJDF6H" | 
|---|
|  | 80 | D ^DIR K DIR G:$D(DIRUT)!$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 81 | S IBSMX=+Y W "   ",IBSMX," DAYS" K DIROUT,DTOUT,DUOUT,DIRUT | 
|---|
|  | 82 | ; | 
|---|
|  | 83 | AMT ; - Print receivables with a minimum balance. | 
|---|
|  | 84 | S DIR(0)="Y",DIR("B")="NO" W ! | 
|---|
|  | 85 | S DIR("A")="Print receivables with a minimum balance" | 
|---|
|  | 86 | S DIR("T")=DTIME,DIR("?")="^S IBOFF=19 D HELP^IBJDF6H" | 
|---|
|  | 87 | D ^DIR K DIR G:$D(DIRUT)!$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 88 | S IBSAM=+Y K DIROUT,DTOUT,DUOUT,DIRUT G:'IBSAM EXCEL | 
|---|
|  | 89 | ; | 
|---|
|  | 90 | AMT1 ; - Determine the minimum balance amount. | 
|---|
|  | 91 | S DIR(0)="NA^1:9999999" | 
|---|
|  | 92 | S DIR("A")="Enter the minimum balance amount of the receivable: " | 
|---|
|  | 93 | S DIR("T")=DTIME,DIR("?")="^S IBOFF=26 D HELP^IBJDF6H" | 
|---|
|  | 94 | D ^DIR K DIR G:$D(DIRUT)!$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 95 | S IBSAM=+Y K DIROUT,DTOUT,DUOUT,DIRUT | 
|---|
|  | 96 | ; | 
|---|
|  | 97 | EXCEL ; - Determine whether to gather data for Excel report. | 
|---|
|  | 98 | S IBEXCEL=$$EXCEL^IBJD() G ENQ:IBEXCEL="^" | 
|---|
|  | 99 | I IBEXCEL S IBSH=1,IBSH1="M" G DEV | 
|---|
|  | 100 | ; | 
|---|
|  | 101 | BCH ; - Determine whether to include the bill comment history. | 
|---|
|  | 102 | S DIR(0)="Y",DIR("B")="NO" W ! | 
|---|
|  | 103 | S DIR("A")="Include the bill comment history with each receivable" | 
|---|
|  | 104 | S DIR("T")=DTIME,DIR("?")="^S IBOFF=31 D HELP^IBJDF6H" | 
|---|
|  | 105 | D ^DIR K DIR G:$D(DIRUT)!$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 106 | S IBSH=+Y K DIROUT,DTOUT,DUOUT,DIRUT G:'IBSH DEV | 
|---|
|  | 107 | ; | 
|---|
|  | 108 | S DIR(0)="SA^A:ALL;M:MOST RECENT" | 
|---|
|  | 109 | S DIR("A")="Print (A)LL comments or the (M)OST RECENT comment: " | 
|---|
|  | 110 | S DIR("B")="ALL",DIR("T")=DTIME,DIR("?")="^S IBOFF=40 D HELP^IBJDF6H" | 
|---|
|  | 111 | D ^DIR K DIR G:$D(DIRUT)!$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 112 | S IBSH1=Y K DIROUT,DTOUT,DUOUT,DIRUT G:IBSH1="A" DEV | 
|---|
|  | 113 | ; | 
|---|
|  | 114 | S DIR(0)="NAO^1:999" | 
|---|
|  | 115 | S DIR("A")="Minimum age of most recent bill comment (optional): " | 
|---|
|  | 116 | S DIR("T")=DTIME,DIR("?")="^S IBOFF=47 D HELP^IBJDF6H" | 
|---|
|  | 117 | D ^DIR K DIR G:$D(DTOUT)!$D(DUOUT)!$D(DIROUT) ENQ | 
|---|
|  | 118 | S IBSH2=+Y W:IBSH2 " DAYS" K DIROUT,DTOUT,DUOUT,DIRUT | 
|---|
|  | 119 | ; | 
|---|
|  | 120 | DEV ; - Select a device. | 
|---|
|  | 121 | K IB0,IB1,IB2 | 
|---|
|  | 122 | I '$G(IBEXCEL) D | 
|---|
|  | 123 | . S X=$S(IBRPT="S":80,1:132) | 
|---|
|  | 124 | . W !!,"You will need a ",X," column printer for this report!",! | 
|---|
|  | 125 | . W !,"Note: This report will search through all  active  receivables." | 
|---|
|  | 126 | . W !,"      You should  queue it to run after normal business hours.",! | 
|---|
|  | 127 | ; | 
|---|
|  | 128 | I $G(IBEXCEL) D EXMSG^IBJD | 
|---|
|  | 129 | ; | 
|---|
|  | 130 | W ! S %ZIS="QM" D ^%ZIS G:POP ENQ | 
|---|
|  | 131 | I $D(IO("Q")) D  G ENQ | 
|---|
|  | 132 | . S ZTRTN="DQ^IBJDF6",ZTDESC="IB - MISC. BILLS FOLLOW-UP REPORT" | 
|---|
|  | 133 | . F I="IB*","VAUTD","VAUTD(" S ZTSAVE(I)="" | 
|---|
|  | 134 | . D ^%ZTLOAD | 
|---|
|  | 135 | . I $D(ZTSK) W !!,"This job has been queued. Task number is ",ZTSK,"." | 
|---|
|  | 136 | . E  W !!,"Unable to queue this job." | 
|---|
|  | 137 | . K ZTSK,IO("Q") D HOME^%ZIS | 
|---|
|  | 138 | ; | 
|---|
|  | 139 | U IO | 
|---|
|  | 140 | ; | 
|---|
|  | 141 | ; If called by the Extraction Module, change extract status for the 3 | 
|---|
|  | 142 | ; reports: No-fault auto accident, Tort Feasor and Workman's Comp | 
|---|
|  | 143 | DQ I $G(IBXTRACT) F I=22:1:24 D E^IBJDE(I,1) | 
|---|
|  | 144 | ; | 
|---|
|  | 145 | D ST^IBJDF61 ;    Compile and print the report. | 
|---|
|  | 146 | ; | 
|---|
|  | 147 | ENQ K IBSDA,IBSDF,IBSDL,IBSDV,IBSEL,IBSN,IBSNA,IBSNF,IBSNL,IBSH,IBSH1,IBSH2 | 
|---|
|  | 148 | K IBCTG,IBCTS,IBOFF,IBPRT,IBRPT,IBSAM,IBSMN,IBSMX,IBTEXT,IBI,DIROUT | 
|---|
|  | 149 | K DTOUT,DUOUT,DIRUT,POP,VAUTD,%ZIS,ZTDESC,ZTRTN,ZTSAVE,I,X,Y,Z | 
|---|
|  | 150 | Q | 
|---|