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

BARRTAR3.m

Go to the documentation of this file.
  1. BARRTAR3 ; IHS/SD/LSL - Transaction report ;08/20/2008
  1. ;;1.8;IHS ACCOUNTS RECEIVABLE;**1,7**;MAR 27,2007
  1. ;
  1. ; IHS/ASDS/LSL - 10/06/00 - Routine created
  1. ; Summary print of Transaction report
  1. ;
  1. ; IHS/SD/LSL - 07/10/02 - V1/6 Patch 2
  1. ; Modified to print missing clinics and missing visit types
  1. ;
  1. ; IHS/SD/LSL - 10/24/02 - V1.7 - PAB-1002-90130
  1. ; Modified to accomodate DUZ(2) subscript
  1. ;
  1. ; IHS/SD/RTL - 5/23/05 - V1.8 Patch 1 - IM17362
  1. ; TAR report bombing - missing collection batch
  1. ; MODIFIED XTMP FILE NAME TO TMP TO MEET SAC REQUIREMENTS;MRS:BAR*1.8*7 IM29892
  1. Q
  1. ; *********************************************************************
  1. ;
  1. SUMM ; EP
  1. S BAR("COL")="W !,""A/R Account"",?15,""PAY-AMT"",?26,""PRV-CRD"",?37,""REFUND"",?48,""PAYMENT"",?59,""BILL AMT"",?70,""ADJUSTMENT"""
  1. S BAR("HD",0)="SUMMARY Transaction"_$P(BAR("HD",0),"Transaction",2,99)
  1. D HDB^BARRTAR2
  1. S BARDASH=" ---------- ---------- ---------- ---------- ---------- ----------"
  1. S BAREQUAL=" ========== ========== ========== ========== ========== =========="
  1. S (BAR("0TOTA"),BAR("0TOTB"),BAR("0TOTC"),BAR("0TOTD"),BAR("0TOTE"),BAR("0TOTF"))=0
  1. S (BAR("OL"),BAR("OB"),BAR("OIT"),BAR("OS"))=""
  1. I '$D(^TMP($J,"BAR-TARS")) D Q
  1. . W !!!,"*** NO DATA TO PRINT ***"
  1. . D EOP^BARUTL(0)
  1. S (BAR("AR"),BAR("OAR"))=""
  1. F S BAR("AR")=$O(^TMP($J,"BAR-TARS",BAR("AR"))) Q:BAR("AR")']""!($G(BAR("F1"))) D
  1. . I +BAR("AR") W !!,"A/R Entry Clerk: ",$P(^VA(200,BAR("AR"),0),U)
  1. . S BAR("DUZ")=0
  1. . F S BAR("DUZ")=$O(^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"))) Q:'+BAR("DUZ")!($G(BAR("F1"))) D
  1. . . S (BAR("L"),BAR("OL"))=""
  1. . . F S BAR("L")=$O(^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"),BAR("L"))) Q:BAR("L")=""!($G(BAR("F1"))) D LOC
  1. Q:$G(BAR("F1"))
  1. W !,BAREQUAL
  1. W !,"REPORT TOTAL"
  1. W ?15,$J($FN(BAR("0TOTA"),",",2),10)
  1. W ?26,$J($FN(BAR("0TOTB"),",",2),10)
  1. W ?37,$J($FN(BAR("0TOTC"),",",2),10)
  1. W ?48,$J($FN(BAR("0TOTD"),",",2),10)
  1. W ?59,$J($FN(BAR("0TOTE"),",",2),10)
  1. W ?70,$J($FN(BAR("0TOTF"),",",2),10)
  1. Q
  1. ; *********************************************************************
  1. ;
  1. LOC ;
  1. S BAR("B")=""
  1. F S BAR("B")=$O(^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"),BAR("L"),BAR("B"))) Q:BAR("B")=""!($G(BAR("F1"))) D BATCH
  1. Q:$G(BAR("F1"))
  1. W !,BARDASH
  1. W !,"Location Tot:"
  1. W ?15,$J($FN(BAR("1TOTA"),",",2),10)
  1. W ?26,$J($FN(BAR("1TOTB"),",",2),10)
  1. W ?37,$J($FN(BAR("1TOTC"),",",2),10)
  1. W ?48,$J($FN(BAR("1TOTD"),",",2),10)
  1. W ?59,$J($FN(BAR("1TOTE"),",",2),10)
  1. W ?70,$J($FN(BAR("1TOTF"),",",2),10)
  1. Q
  1. ; *********************************************************************
  1. ;
  1. BATCH ;
  1. S BAR("IT")=""
  1. F S BAR("IT")=$O(^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"),BAR("L"),BAR("B"),BAR("IT"))) Q:BAR("IT")=""!($G(BAR("F1"))) D ITEM
  1. Q:$G(BAR("F1"))
  1. W !,BARDASH
  1. W !," Batch Tot:"
  1. W ?15,$J($FN(BAR("2TOTA"),",",2),10)
  1. W ?26,$J($FN(BAR("2TOTB"),",",2),10)
  1. W ?37,$J($FN(BAR("2TOTC"),",",2),10)
  1. W ?48,$J($FN(BAR("2TOTD"),",",2),10)
  1. W ?59,$J($FN(BAR("2TOTE"),",",2),10)
  1. W ?70,$J($FN(BAR("2TOTF"),",",2),10)
  1. Q
  1. ; *********************************************************************
  1. ;
  1. ITEM ;
  1. S BAR("S")=""
  1. F S BAR("S")=$O(^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"),BAR("L"),BAR("B"),BAR("IT"),BAR("S"))) Q:BAR("S")=""!($G(BAR("F1"))) D SORT
  1. Q:$G(BAR("F1"))
  1. W !,BARDASH
  1. W !," Item Tot:"
  1. W ?15,$J($FN(BAR("3TOTA"),",",2),10)
  1. W ?26,$J($FN(BAR("3TOTB"),",",2),10)
  1. W ?37,$J($FN(BAR("3TOTC"),",",2),10)
  1. W ?48,$J($FN(BAR("3TOTD"),",",2),10)
  1. W ?59,$J($FN(BAR("3TOTE"),",",2),10)
  1. W ?70,$J($FN(BAR("3TOTF"),",",2),10)
  1. Q
  1. ; *********************************************************************
  1. ;
  1. SORT ;
  1. S BAR("ACCT")=""
  1. F S BAR("ACCT")=$O(^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"),BAR("L"),BAR("B"),BAR("IT"),BAR("S"),BAR("ACCT"))) Q:BAR("ACCT")=""!($G(BAR("F1"))) D ACCT
  1. Q:$G(BAR("F1"))
  1. W !,BARDASH
  1. I BARY("SORT")="C" W !," Clinic Tot:"
  1. E W !," Visit Tot:"
  1. W ?15,$J($FN(BAR("4TOTA"),",",2),10)
  1. W ?26,$J($FN(BAR("4TOTB"),",",2),10)
  1. W ?37,$J($FN(BAR("4TOTC"),",",2),10)
  1. W ?48,$J($FN(BAR("4TOTD"),",",2),10)
  1. W ?59,$J($FN(BAR("4TOTE"),",",2),10)
  1. W ?70,$J($FN(BAR("4TOTF"),",",2),10)
  1. Q
  1. ; *********************************************************************
  1. ;
  1. ACCT ;
  1. Q:$G(BAR("F1"))
  1. I $Y>(IOSL-5) D HD^BARRTAR2 Q:$G(BAR("F1"))
  1. I BAR("OL")'=BAR("L") W ! D HD1 W !
  1. E I BAR("OB")'=BAR("B") W ! D HD2 W !
  1. E I BAR("OIT")'=BAR("IT") W ! D HD3 W !
  1. E I BAR("OS")'=BAR("S") W ! D HD4 W !
  1. S BAR("DATA")=^TMP($J,"BAR-TARS",BAR("AR"),BAR("DUZ"),BAR("L"),BAR("B"),BAR("IT"),BAR("S"),BAR("ACCT"))
  1. W !,$E(BAR("ACCT"),1,14) ; A/R Account
  1. W ?15,$J($FN($P(BAR("DATA"),U,2),",",2),10) ; Pay Amt
  1. W ?26,$J($FN($P(BAR("DATA"),U,3),",",2),10) ; Prev Credit
  1. W ?37,$J($FN($P(BAR("DATA"),U,4),",",2),10) ; Refunds
  1. W ?48,$J($FN($P(BAR("DATA"),U,5),",",2),10) ; payment
  1. W ?59,$J($FN($P(BAR("DATA"),U,6),",",2),10) ; bill amt
  1. W ?70,$J($FN($P(BAR("DATA"),U,7),",",2),10) ; adjustments
  1. F I=0:1:4 D ; Accumulate totals
  1. . S Y=1
  1. . F X="TOTA","TOTB","TOTC","TOTD","TOTE","TOTF" D
  1. . . S Y=Y+1
  1. . . S BARV=I_X
  1. . . S BARV2="BAR("""_BARV_""")"
  1. . . S @BARV2=@BARV2+$P(BAR("DATA"),U,Y)
  1. K I,X,Y
  1. Q
  1. ; *********************************************************************
  1. ;
  1. HD1 ;
  1. W !?10,"Visit Location.......: ",BAR("L")
  1. S BAR("OL")=BAR("L")
  1. S (BAR("1TOTA"),BAR("1TOTB"),BAR("1TOTC"),BAR("1TOTD"),BAR("1TOTE"),BAR("1TOTF"))=0
  1. D HD2
  1. Q
  1. ; *********************************************************************
  1. ;
  1. HD2 ;
  1. W !?10,"Collection Batch.....: "
  1. ;I +BAR("B") W $P(^BARCOL(DUZ(2),BAR("B"),0),U)
  1. I +BAR("B"),$P($G(^BARCOL(DUZ(2),BAR("B"),0)),U)'="" D
  1. .W $P(^BARCOL(DUZ(2),BAR("B"),0),U) ;IM17362
  1. E W BAR("B")
  1. S BAR("OB")=BAR("B")
  1. S (BAR("2TOTA"),BAR("2TOTB"),BAR("2TOTC"),BAR("2TOTD"),BAR("2TOTE"),BAR("2TOTF"))=0
  1. D HD3
  1. Q
  1. ; *********************************************************************
  1. ;
  1. HD3 ;
  1. W !?10,"Collection Batch Item: ",BAR("IT")
  1. S BAR("OIT")=BAR("IT")
  1. S (BAR("3TOTA"),BAR("3TOTB"),BAR("3TOTC"),BAR("3TOTD"),BAR("3TOTE"),BAR("3TOTF"))=0
  1. D HD4
  1. Q
  1. ; *********************************************************************
  1. ;
  1. HD4 ;
  1. W !?10
  1. I BARY("SORT")="C" D
  1. . W "Clinic Type..........: "
  1. . I BAR("S")=99999 W "NO CLINIC" Q
  1. . W $P(^DIC(40.7,BAR("S"),0),U)
  1. I BARY("SORT")="V" D
  1. . W "Visit Type...........: "
  1. . I BAR("S")=99999 W "NO VISIT TYPE" Q
  1. . W $P(^ABMDVTYP(BAR("S"),0),U)
  1. S BAR("OS")=BAR("S")
  1. S (BAR("4TOTA"),BAR("4TOTB"),BAR("4TOTC"),BAR("4TOTD"),BAR("4TOTE"),BAR("4TOTF"))=0
  1. Q