Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: IBYRPOST

IBYRPOST.m

Go to the documentation of this file.
  1. IBYRPOST ;ALB/EMG - IB*2*70 POST-INIT ; 21-MAY-97
  1. ;;2.0; INTEGRATED BILLING ;**70**; 21-MAR-94
  1. ;
  1. EN ; Patch IB*2*70 post initialization.
  1. ;
  1. D OGEN ; output generator for post init
  1. Q
  1. ;
  1. OGEN ; set up check points for post init
  1. N %,Z
  1. S %=$$NEWCP^XPDUTL("HOLD","HOLD^IBYRPOST")
  1. S %=$$NEWCP^XPDUTL("DAYS","DAYS^IBYRPOST")
  1. S %=$$NEWCP^XPDUTL("DATE","DATE^IBYRPOST")
  1. S %=$$NEWCP^XPDUTL("REL","REL^IBYRPOST")
  1. Q
  1. ;
  1. HOLD ; modify IB ACTION TYPE entries - place on hold
  1. N DONE,S1,Z,Z1
  1. S DONE=" >>> Step complete <<<"
  1. D BMES^XPDUTL(" <<< Updating IB Action Type file (350.1) >>>")
  1. S S1=0 F S S1=$O(^IBE(350.1,S1)) Q:'S1 S Z=$G(^IBE(350.1,S1,0)),Z1=$P(Z,U,11) D
  1. .I Z1'=""&(Z1<6) S $P(^IBE(350.1,S1,0),U,10)=1 Q
  1. D MES^XPDUTL(DONE)
  1. Q
  1. ;
  1. DAYS ; set NUMBER OF DAYS PT CHARGES HELD field (#7.04) in file #350.9
  1. N DONE,S1,Z,Z1
  1. S DONE=" >>> Step complete <<<"
  1. D BMES^XPDUTL(" <<< Setting Number of Days Pt Charges Held in file (350.9) >>>")
  1. S $P(^IBE(350.9,1,7),U,4)=90
  1. D MES^XPDUTL(DONE)
  1. Q
  1. ;
  1. DATE ; find charges on hold & related 3rd party bills
  1. ; set ON HOLD DATE to either:
  1. ; - date entry added to file #350
  1. ; - authorization date of 3rd party bill
  1. ;
  1. N DONE,IBDEA,IBADT,IBOHDT,IBNAME,IBN,DFN,IBNUM,FDA,DIERR
  1. S DONE=" >>> Step complete <<<"
  1. D BMES^XPDUTL(" <<< Setting ON HOLD DATE field in IB ACTION (#350) file >>>")
  1. D CHRGS^IBOHLD1 ; find charges on hold
  1. ;
  1. ; set ON HOLD DATE
  1. S (IBDEA,IBADT,IBOHDT)=0
  1. S IBNAME="" F S IBNAME=$O(^TMP($J,"HOLD",IBNAME)) Q:IBNAME="" S DFN=0 F S DFN=$O(^TMP($J,"HOLD",IBNAME,DFN)) Q:'DFN S IBN=0 F S IBN=$O(^TMP($J,"HOLD",IBNAME,DFN,IBN)) Q:'IBN D
  1. .S IBNUM=$P($G(^IB(IBN,0)),"^")
  1. .S IBDEA=$P($P($G(^IB(IBN,1)),"^",2),"."),IBOHDT=IBDEA
  1. .D BILLDT
  1. .S FDA(350,IBN_",",16)=$S(IBOHDT:IBOHDT,1:"")
  1. .D FILE^DIE("K","FDA")
  1. .I $G(DIERR) D BMES^XPDUTL(" >>> Check IB Action # '"_IBNUM_". ON HOLD DATE was not set. <<<")
  1. .Q
  1. D MES^XPDUTL(DONE)
  1. Q
  1. ;
  1. BILLDT ; find authorization date for 3rd party bills
  1. N IBADT,IBBILL
  1. S IBBILL="" F S IBBILL=$O(^TMP($J,"HOLD",IBNAME,DFN,IBN,IBBILL)) Q:IBBILL="" D
  1. .S IBADT=$P($G(^DGCR(399,IBBILL,"S")),"^",10)
  1. .S IBOHDT=$S(IBADT>IBDEA:IBADT,1:IBDEA) Q:IBADT=""
  1. .Q
  1. Q
  1. ;
  1. ;
  1. REL ; Auto-release entries on hold for more than 90 days
  1. N DONE
  1. S DONE=" >>> Step Complete <<<."
  1. D BMES^XPDUTL(" ")
  1. D BMES^XPDUTL(" <<< Releasing IB charges ON HOLD longer than 90 days >>>.")
  1. ;
  1. D EN^IBOHRL
  1. D MES^XPDUTL(DONE)
  1. D MES^XPDUTL(" ** Use 'On Hold Charges Released to AR' option to see detailed **")
  1. D MES^XPDUTL(" ** list of charges released during post-init. **")
  1. Q
  1. ;