source: FOIAVistA/trunk/r/INTEGRATED_BILLING-IB-PRQ--IBD--IBQ--PRQS/IBCOPP.m@ 1582

Last change on this file since 1582 was 628, checked in by George Lilly, 15 years ago

initial load of FOIAVistA 6/30/08 version

File size: 3.6 KB
Line 
1IBCOPP ;ALB/NLR - LIST INS. PLANS BY CO. (DRIVER) ; 08-SEP-94
2 ;;Version 2.0 ; INTEGRATED BILLING ;**28,62**; 21-MAR-94
3 ;
4EN ; Describe report
5 W !!?5,"This report will generate a list of insurance plans by company."
6 W !?5,"It will help you identify duplicates and verify patient coverage."
7 W !?5,"You must select one, many (up to 20) or all of the insurance companies;"
8 W !?5,"anywhere from one to all of the plans under each company; and whether to"
9 W !?5,"include the patient policies (subscribers) under each plan. The number of"
10 W !?5,"plans you select is independent for each company you are including, but"
11 W !?5,"subscriber selection is the same (all or none) for all companies and"
12 W !?5,"plans within a report. Regardless of how you run the report, the"
13 W !?5,"number of subscribers per plan will be included.",!!
14 ;
15 ; Prompt user to select report type, insurance companies, plans
16 ;
17 ; Output from user selections:
18 ;
19 ; IBAPA=0 -- list insurance plans by company
20 ; IBAPA=1 -- list Insurance plans by company with subscriber information
21 ; IBAI=0 -- user selects insurance companies
22 ; IBAI=1 -- run report for all insurance companies with plans
23 ; IBAPL=0 -- whether some or all ins. co's., user selects plans (may be
24 ; all for certain companies, some for other companies)
25 ; IBAPL=1 -- whether some or all ins. co's., run report for all plans
26 ; associated with those co's.
27 ;
28 S IBAPA=$$SELR^IBCOPP1 I IBAPA<0 G ENQ
29 S IBAI=$$SELI^IBCOPP1 I IBAI<0 G ENQ
30 S IBAPL=$$SELP^IBCOPP1 I IBAPL<0 G ENQ
31 ;
32 ; obtain plans for selected insurance companies
33 ;
34 I IBAI,IBAPL G DEVICE
35 D START I IBQUIT G ENQ
36 I '$D(^TMP("IBINC",$J)) W !!,"No plans selected!" G ENQ
37 ;
38DEVICE ; Ask user to select device
39 ;
40 W !!,"*** You will need a 132 column printer for this report. ***",!
41 S %ZIS="QM" D ^%ZIS G:POP ENQ
42 I $D(IO("Q")) D G ENQ
43 .S ZTRTN="^IBCOPP2",ZTDESC="IB - LIST OF PLANS BY INSURANCE COMPANY"
44 .F I="^TMP(""IBINC"",$J,","IBAPA","IBAI","IBAPL" S ZTSAVE(I)=""
45 .D ^%ZTLOAD K IO("Q") D HOME^%ZIS
46 .W !!,$S($D(ZTSK):"This job has been queued as task #"_ZTSK_".",1:"Unable to queue this job.")
47 .K ZTSK,IO("Q")
48 ;
49 ; Compile and print report
50 ;
51 U IO D ^IBCOPP2
52 ;
53ENQ K DIRUT,DIROUT,DUOUT,DTOUT,IBAPA,IBAI,IBAPL,IBQUIT,X,Y,^TMP("IBINC",$J)
54 Q
55 ;
56 ;
57START ; Gather plans for all selected companies.
58 S (IBCT,IBQUIT)=0 K ^TMP("IBINC",$J)
59 ;
60 ; - allow user selection of companies if required
61 I 'IBAI D I Y<0 S IBQUIT=1 G STARTQ
62 .S DIC="^DIC(36,",DIC("S")="I $D(^IBA(355.3,""B"",Y))"
63 .S VAUTSTR="insurance company",VAUTNI=2,VAUTVB="VAUTI",VAUTNALL=1
64 .D FIRST^VAUTOMA K DIC,VAUTSTR,VAUTNI,VAUTVB,VAUTNALL Q:Y<0
65 .S IBCNS="" F S IBCNS=$O(VAUTI(IBCNS)) Q:IBCNS="" S ^TMP("IBINC",$J,$E(VAUTI(IBCNS),1,25),IBCNS)=""
66 I IBAPL G STARTQ
67 ;
68 ; - gather all companies if required
69 I IBAI S A=0 F S A=$O(^IBA(355.3,"B",A)) Q:'A S ^TMP("IBINC",$J,$E($P($G(^DIC(36,A,0)),"^"),1,25),A)=""
70 ;
71 ; - gather plans for selected companies
72 S IBIC="" F S IBIC=$O(^TMP("IBINC",$J,IBIC)) Q:IBIC=""!IBQUIT D
73 .S IBCNS="" F S IBCNS=$O(^TMP("IBINC",$J,IBIC,IBCNS)) Q:IBCNS=""!(IBQUIT) D
74 ..S IBCT=IBCT+1 W !!,"Insurance Company # "_IBCT_": "_IBIC
75 ..D OK^IBCNSM3 Q:IBQUIT I 'IBOK K ^TMP("IBINC",$J,IBIC,IBCNS) S IBAI=0 Q
76 ..W " ...building a list of plans..."
77 ..K IBSEL,^TMP($J,"IBSEL") D LKP^IBCNSU2(IBCNS,1,1,.IBSEL,0,1) Q:IBQUIT
78 ..I '$O(^TMP($J,"IBSEL",0)) K ^TMP("IBINC",$J,IBIC,IBCNS) S IBAI=0 Q
79 ..;
80 ..; - set plans into an array
81 ..S IBPN=0 F S IBPN=$O(^TMP($J,"IBSEL",IBPN)) Q:'IBPN S ^TMP("IBINC",$J,IBIC,IBCNS,IBPN)=""
82 ;
83STARTQ K IBCNS,IBIC,IBJJ,IBCT,IBLCT,IBOK,IBPN,IBSEL,VAUTI,VAUTP,^TMP($J,"IBSEL")
84 Q
Note: See TracBrowser for help on using the repository browser.