| [613] | 1 | FBFPCI ;WOIFO/SAB-FPPS AUDIT REPORT ;8/6/2003
 | 
|---|
 | 2 |  ;;3.5;FEE BASIS;**61**;JAN 30, 1995
 | 
|---|
 | 3 |  ;
 | 
|---|
 | 4 | ASKCI ; ask FPPS CLAIM ID
 | 
|---|
 | 5 |  K DA
 | 
|---|
 | 6 |  S DIR(0)="162.7,32"
 | 
|---|
 | 7 |  D ^DIR K DIR I $D(DIRUT) S FBQUIT=1 G EXIT
 | 
|---|
 | 8 |  S FBFPPSC=Y
 | 
|---|
 | 9 |  ;
 | 
|---|
 | 10 |  ; ask device
 | 
|---|
 | 11 |  S %ZIS="QM" D ^%ZIS I POP S FBQUIT=1 G EXIT
 | 
|---|
 | 12 |  I $D(IO("Q")) D  S FBQUIT=0 G EXIT
 | 
|---|
 | 13 |  . S ZTRTN="QEN^FBFPCI",ZTDESC="FPPS Claim Inquiry"
 | 
|---|
 | 14 |  . F FBX="FBFPPSC" S ZTSAVE(FBX)=""
 | 
|---|
 | 15 |  . D ^%ZTLOAD,HOME^%ZIS K ZTSK
 | 
|---|
 | 16 |  ;
 | 
|---|
 | 17 | QEN ; queued entry
 | 
|---|
 | 18 |  U IO
 | 
|---|
 | 19 |  ;
 | 
|---|
 | 20 | GATHER ; collect and sort data
 | 
|---|
 | 21 |  S FBQUIT=0
 | 
|---|
 | 22 |  K ^TMP($J)
 | 
|---|
 | 23 |  ;
 | 
|---|
 | 24 |  ; check inpatient invoices
 | 
|---|
 | 25 |  F FBDA=0 F  S FBDA=$O(^FBAAI("AFC",FBFPPSC,FBDA)) Q:'FBDA  D
 | 
|---|
 | 26 |  . S FBY0=$G(^FBAAI(FBDA,0))
 | 
|---|
 | 27 |  . S FBAAIN=$P(FBY0,U)
 | 
|---|
 | 28 |  . S FBPROG=$P(FBY0,U,12)
 | 
|---|
 | 29 |  . I FBAAIN]"" S ^TMP($J,162.5,FBAAIN)=FBPROG
 | 
|---|
 | 30 |  ;
 | 
|---|
 | 31 |  ; check outpatient/ancillary invoices
 | 
|---|
 | 32 |  S FBDA3=0
 | 
|---|
 | 33 |  F  S FBDA3=$O(^FBAAC("AFC",FBFPPSC,FBDA3)) Q:'FBDA3  D
 | 
|---|
 | 34 |  .S FBDA2=0
 | 
|---|
 | 35 |  .F  S FBDA2=$O(^FBAAC("AFC",FBFPPSC,FBDA3,FBDA2)) Q:'FBDA2  D
 | 
|---|
 | 36 |  ..S FBDA1=0
 | 
|---|
 | 37 |  ..F  S FBDA1=$O(^FBAAC("AFC",FBFPPSC,FBDA3,FBDA2,FBDA1)) Q:'FBDA1  D
 | 
|---|
 | 38 |  ...S FBDA=0
 | 
|---|
 | 39 |  ...F  S FBDA=$O(^FBAAC("AFC",FBFPPSC,FBDA3,FBDA2,FBDA1,FBDA)) Q:'FBDA  D
 | 
|---|
 | 40 |  ....S FBY0=$G(^FBAAC(FBDA3,1,FBDA2,1,FBDA1,1,FBDA,0))
 | 
|---|
 | 41 |  ....S FBAAIN=$P(FBY0,U,16)
 | 
|---|
 | 42 |  ....I FBAAIN]"" S ^TMP($J,162.03,FBAAIN,FBDA3,FBDA2,FBDA1,FBDA)=""
 | 
|---|
 | 43 |  ;
 | 
|---|
 | 44 |  ; check pharmacy invoices
 | 
|---|
 | 45 |  S FBDA=0 F  S FBDA=$O(^FBAA(162.1,"AFC",FBFPPSC,FBDA)) Q:'FBDA  D
 | 
|---|
 | 46 |  . S FBY0=$G(^FBAA(162.1,FBDA,0))
 | 
|---|
 | 47 |  . S FBAAIN=$P(FBY0,U)
 | 
|---|
 | 48 |  . I FBAAIN]"" S ^TMP($J,162.1,FBAAIN)=""
 | 
|---|
 | 49 |  ;
 | 
|---|
 | 50 |  ; check unauthorized claims
 | 
|---|
 | 51 |  S FBDA=0 F  S FBDA=$O(^FB583("AFC",FBFPPSC,FBDA)) Q:'FBDA  D
 | 
|---|
 | 52 |  . S FBY0=$G(^FB583(FBDA,0))
 | 
|---|
 | 53 |  . S FBPN=$$GET1^DIQ(162.7,FBDA_",",2)
 | 
|---|
 | 54 |  . S FBVN=$$GET1^DIQ(162.7,FBDA_",",1)
 | 
|---|
 | 55 |  . S FBDT=$$GET1^DIQ(162.7,FBDA_",",.01)
 | 
|---|
 | 56 |  . S ^TMP($J,162.7,FBDT,FBDA)=FBPN_U_FBVN
 | 
|---|
 | 57 |  ;
 | 
|---|
 | 58 | PRINT ; report data
 | 
|---|
 | 59 |  S FBPG=0 D NOW^%DTC S Y=% D DD^%DT S FBDTR=Y
 | 
|---|
 | 60 |  K FBDL S FBDL="",$P(FBDL,"-",IOM)=""
 | 
|---|
 | 61 |  ;
 | 
|---|
 | 62 |  D HD
 | 
|---|
 | 63 |  ;
 | 
|---|
 | 64 |  ; show invoices
 | 
|---|
 | 65 |  F FBFILE=162.5,162.03,162.1 D
 | 
|---|
 | 66 |  . S FBAAIN="" F  S FBAAIN=$O(^TMP($J,FBFILE,FBAAIN)) Q:FBAAIN=""  D
 | 
|---|
 | 67 |  . . I $Y+7>IOSL D HD Q:FBQUIT
 | 
|---|
 | 68 |  . . I FBFILE=162.5 D
 | 
|---|
 | 69 |  . . . S FBPROG=$P($G(^TMP($J,FBFILE,FBAAIN)),U)
 | 
|---|
 | 70 |  . . . W !,"Inpatient ("
 | 
|---|
 | 71 |  . . . W $S(FBPROG=6:"CH",FBPROG=7:"CNH",1:"")
 | 
|---|
 | 72 |  . . . W ") Invoice: ",FBAAIN
 | 
|---|
 | 73 |  . . I FBFILE=162.03 W !,"Outpatient/Ancillary Invoice: ",FBAAIN
 | 
|---|
 | 74 |  . . I FBFILE=162.1 W !,"Pharmacy Invoice: ",FBAAIN
 | 
|---|
 | 75 |  ;
 | 
|---|
 | 76 |  ; show unauthorized claims
 | 
|---|
 | 77 |  S FBDT="" F  S FBDT=$O(^TMP($J,162.7,FBDT)) Q:FBDT=""  D
 | 
|---|
 | 78 |  . S FBDA=0 F  S FBDA=$O(^TMP($J,162.7,FBDT,FBDA)) Q:'FBDA  D
 | 
|---|
 | 79 |  . . I $Y+7>IOSL D HD Q:FBQUIT
 | 
|---|
 | 80 |  . . S FBX=$G(^TMP($J,162.7,FBDT,FBDA))
 | 
|---|
 | 81 |  . . W !,"Unauthorized Claim: ",$P(FBX,U),"   ",$P(FBX,U,2),"   ",FBDT
 | 
|---|
 | 82 |  ;
 | 
|---|
 | 83 |  I '$D(^TMP($J)) W !,"No VistA invoices found with specified FPPS CLAIM ID."
 | 
|---|
 | 84 |  ;
 | 
|---|
 | 85 |  I FBQUIT W !!,"REPORT STOPPED AT USER REQUEST"
 | 
|---|
 | 86 |  ;
 | 
|---|
 | 87 |  I 'FBQUIT,$E(IOST,1,2)="C-" S DIR(0)="E" D ^DIR K DIR I 'Y S FBQUIT=1
 | 
|---|
 | 88 |  D ^%ZISC
 | 
|---|
 | 89 |  ;
 | 
|---|
 | 90 | EXIT ;
 | 
|---|
 | 91 |  I $D(ZTQUEUED) S ZTREQ="@"
 | 
|---|
 | 92 |  K ^TMP($J)
 | 
|---|
 | 93 |  K FBAAIN,FBDA,FBDA1,FBDA2,FBDA3,FBDL,FBDT,FBDTR,FBFILE
 | 
|---|
 | 94 |  K FBPN,FBFPPSC,FBPG,FBPROG,FBVN,FBX,FBY0
 | 
|---|
 | 95 |  K %,DIC,DIR,DIROUT,DIRUT,DTOUT,DUOUT,I,J,POP,X,Y
 | 
|---|
 | 96 |  I 'FBQUIT,$E(IOST,1,2)="C-" W ! G ASKCI
 | 
|---|
 | 97 |  K FBQUIT
 | 
|---|
 | 98 |  Q
 | 
|---|
 | 99 | HD ; page header
 | 
|---|
 | 100 |  I $D(ZTQUEUED),$$S^%ZTLOAD S ZTSTOP=1,FBQUIT=1 Q
 | 
|---|
 | 101 |  I $E(IOST,1,2)="C-",FBPG S DIR(0)="E" D ^DIR K DIR I 'Y S FBQUIT=1 Q
 | 
|---|
 | 102 |  I $E(IOST,1,2)="C-"!FBPG W @IOF
 | 
|---|
 | 103 |  S FBPG=FBPG+1
 | 
|---|
 | 104 |  W !,"FPPS Claim Inquiry for ID: ",FBFPPSC,?49,FBDTR,?72,"page ",FBPG
 | 
|---|
 | 105 |  W !,FBDL
 | 
|---|
 | 106 |  Q
 | 
|---|
 | 107 |  ;
 | 
|---|
 | 108 |  ;FBFPCI
 | 
|---|