| [613] | 1 | IBYEPT1 ;ALB/CPM - PATCH IB*2*40 POST INIT (CON'T) ; 22-AUG-95
 | 
|---|
 | 2 |  ;;Version 2.0 ; INTEGRATED BILLING ;**40**; 21-MAR-94
 | 
|---|
 | 3 |  ;
 | 
|---|
 | 4 | EN ; Entry point to queue 'Name of Insured' clean up job.
 | 
|---|
 | 5 |  ;
 | 
|---|
 | 6 |  W !!,">>> I need to queue a job to clean up the 'Name of Insured' fields in"
 | 
|---|
 | 7 |  W !,"    the PATIENT (#2) and BILL/CLAIMS (#399) files...",!
 | 
|---|
 | 8 |  ;
 | 
|---|
 | 9 |  ; - queue the job
 | 
|---|
 | 10 |  S ZTRTN="DQ^IBYEPT1",ZTIO="",ZTDESC="IB - CORRECT 'NAME OF INSURED' VALUES"
 | 
|---|
 | 11 |  D ^%ZTLOAD W !!,$S($D(ZTSK):"This job has been queued.  The task number is "_ZTSK_".",1:"")
 | 
|---|
 | 12 |  W:$D(ZTSK) !,"Please note that you will receive a mail message when this job has completed."
 | 
|---|
 | 13 |  K X,Y,DIRUT,DUOUT,DTOUR,DIROUT,ZTSK
 | 
|---|
 | 14 |  Q
 | 
|---|
 | 15 |  ;
 | 
|---|
 | 16 |  ;
 | 
|---|
 | 17 |  ;
 | 
|---|
 | 18 | DQ ; Queued entry point to start the job.
 | 
|---|
 | 19 |  ;
 | 
|---|
 | 20 |  D NOW^%DTC S IBBDT=%
 | 
|---|
 | 21 |  ;
 | 
|---|
 | 22 |  S (IBCPOL,IBCBILL)=0
 | 
|---|
 | 23 |  ;
 | 
|---|
 | 24 |  ; - fix policies in file #2
 | 
|---|
 | 25 |  S DFN=0 F  S DFN=$O(^DPT(DFN)) Q:'DFN  S IBCDFN=0 F  S IBCDFN=$O(^DPT(DFN,.312,IBCDFN)) Q:'IBCDFN  S IBNI=$P($G(^(IBCDFN,0)),"^",17) I IBNI?1"`"1.N D
 | 
|---|
 | 26 |  .S IBNAM=$$NAME(IBNI,DFN) Q:IBNAM<0
 | 
|---|
 | 27 |  .S $P(^DPT(DFN,.312,IBCDFN,0),"^",17)=IBNAM,IBCPOL=IBCPOL+1
 | 
|---|
 | 28 |  ;
 | 
|---|
 | 29 |  ; - fix patient's bills in file #399
 | 
|---|
 | 30 |  S IBIFN=0 F  S IBIFN=$O(^DGCR(399,IBIFN)) Q:'IBIFN  D
 | 
|---|
 | 31 |  .F IBNOD="I1","I2","I3" S IBNI=$P($G(^DGCR(399,IBIFN,IBNOD)),"^",17) I IBNI?1"`"1.N D
 | 
|---|
 | 32 |  ..S IBNAM=$$NAME(IBNI,+$P($G(^DGCR(399,IBIFN,0)),"^",2)) Q:IBNAM<0
 | 
|---|
 | 33 |  ..S $P(^DGCR(399,IBIFN,IBNOD),"^",17)=IBNAM,IBCBILL=IBCBILL+1
 | 
|---|
 | 34 |  ;
 | 
|---|
 | 35 |  D NOW^%DTC S IBEDT=%
 | 
|---|
 | 36 |  ;
 | 
|---|
 | 37 |  D MAIL
 | 
|---|
 | 38 |  ;
 | 
|---|
 | 39 |  K IBBDT,IBEDT,DFN,IBCDFN,IBNI,IBNAM,IBCPOL,IBCBILL,IBIFN,IBNOD
 | 
|---|
 | 40 |  Q
 | 
|---|
 | 41 |  ;
 | 
|---|
 | 42 |  ;
 | 
|---|
 | 43 | NAME(IBNI,DFN) ; Find the name associated with the ien for Name of Insured.
 | 
|---|
 | 44 |  ;  Input:  IBNI  --  Value of the Name of Insured stored in the policy
 | 
|---|
 | 45 |  ;           DFN  --  Pointer to the patient in file #2
 | 
|---|
 | 46 |  ;
 | 
|---|
 | 47 |  N NAME
 | 
|---|
 | 48 |  I $E(IBNI,2,99)=DFN S NAME=$P($G(^DPT(DFN,0)),"^") G NAMEQ
 | 
|---|
 | 49 |  N DIC,DFN,DGSENFLG,X S DGSENFLG=1
 | 
|---|
 | 50 |  S X=IBNI,DIC="^DPT(",DIC(0)="Z" D ^DIC S NAME=$S(Y<0:-1,1:$P($G(^DPT(+Y,0)),"^"))
 | 
|---|
 | 51 | NAMEQ Q NAME
 | 
|---|
 | 52 |  ;
 | 
|---|
 | 53 |  ;
 | 
|---|
 | 54 | MAIL ; Send the bulletin
 | 
|---|
 | 55 |  S XMSUB="Job Completion - Correct 'Name of Insured' Fields"
 | 
|---|
 | 56 |  S XMDUZ="INTEGRATED BILLING",XMTEXT="IBT(",XMY(DUZ)=""
 | 
|---|
 | 57 |  ;
 | 
|---|
 | 58 |  K IBT
 | 
|---|
 | 59 |  S IBT(1)="The job to correct the 'Name of Insured' fields in files #2 and #399"
 | 
|---|
 | 60 |  S IBT(2)="has completed."
 | 
|---|
 | 61 |  S IBT(3)=" "
 | 
|---|
 | 62 |  S Y=IBBDT D D^DIQ S IBT(4)="Job Start Time: "_Y
 | 
|---|
 | 63 |  S Y=IBEDT D D^DIQ S IBT(5)="  Job End Time: "_Y
 | 
|---|
 | 64 |  S IBT(6)=" "
 | 
|---|
 | 65 |  S IBT(7)="Number of policies corrected in file #2: "_IBCPOL
 | 
|---|
 | 66 |  S IBT(8)=" Number of bills corrected in file #399: "_IBCBILL
 | 
|---|
 | 67 |  ;
 | 
|---|
 | 68 |  D ^XMD
 | 
|---|
 | 69 |  K IBT,XMSUB,XMTEXT,XMDUZ,XMY,Y
 | 
|---|
 | 70 |  Q
 | 
|---|