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

BARRSL4.m

Go to the documentation of this file.
  1. BARRSL4 ; IHS/SD/LSL - Selective Report Parameters-PART 2 ; 12/19/2008
  1. ;;1.8;IHS ACCOUNTS RECEIVABLE;**23,24**;OCT 26,2005;Build 69
  1. ; CODE EXTENSION OF BARRSL1
  1. ;
  1. ; IHS/SD/POTT 12/12 ADDED SELECTION OF CODING DX VERSION ICD-9 / ICD-10 - BAR1.8*23
  1. ; IHS/SD/POTT 06/13 FIXED FLAWS IN SELECTING ICD9/10 DX - BAR1.8*23
  1. ; IHS/SD/POTT 07/13 DO NOT ALLOW SELECT ICD10 WHEN INFRASTRUCTURE NOT PRESENT - BAR1.8*23
  1. ; IHS/SD/POTT HEAT150941 02/09/14 Allow ALL DX9/10 - BAR1.8*24
  1. ; if no DX selected: show ALL DX of ALL available coding systems - BAR1.8*24
  1. ;*******************************************************************************
  1. Q
  1. TRANTYP ; EP
  1. ;ASK FOR TRANSACTION TYPE
  1. K BARY("TRANS TYPE")
  1. K Y
  1. K DIR
  1. S DIR(0)="SO^1:PAYMENT;2:ADJUSTMENT"
  1. I BAR("OPT")="TSR" S DIR(0)="SO^1:PAYMENT;2:ADJUSTMENT;3:STATUS CHANGE" ;1.8*19 TMM
  1. S DIR("A")="Select ONE or MORE of the above INCLUSION PARAMETERS"
  1. S DIR("?")="The report can be restricted to one or more of the listed parameters. A parameter can be removed by reselecting it and making a null entry."
  1. S DIR("?",1)="If you choose PAYMENT you cannot chooose any adjustments and vise versa."
  1. D ^DIR
  1. I $D(DTOUT)!$D(DUOUT)!$D(DIRUT) S BARY("TRANS TYPE",40)="PAYMENT" Q
  1. ;40 = IEN OF 'PAYMENT' IN A/R TABLE ENTRY
  1. ;43 = IEN OF 'ADJUST ACCOUNT' IN A/R TABLE ENTRY
  1. ;993 = IEN OF 'SENT TO COLLECTIONS IN A/R TABLE ENTRY ;1.8*19 TMM
  1. S BARY("TRANS TYPE",$S(Y=1:40,Y=2:43,Y=3:993,1:43))=$S(Y=1:"PAYMENT",Y=2:"ADJUST ACCOUNT",Y=3:"STATUS CHANGE",1:"ADJUST ACCOUNT") ;M819_4*DEL*TMM*20100819
  1. K DIR
  1. I $G(BARY("TRANS TYPE",43))="ADJUST ACCOUNT"!(BAR("OPT")="PAY") D
  1. . K DIC,DIE,DR,DA
  1. . S DIC(0)="AEZ"
  1. . S DIC=90052.01
  1. . S DIC("S")="I "",3,4,13,14,15,16,19,20,21,22,""[("",""_Y_"","")"
  1. . S DIC("W")="N C,DINAME W "" "" W "" "",$P(^(0),U,2)"
  1. . D ^DIC
  1. . Q:Y'>0 ;bar*1.8*20
  1. . N BARCAT
  1. . I Y>0 S BARCAT=+Y,BARY("TRANS TYPE","ADJ CAT",BARCAT)=Y(0)
  1. . E Q
  1. . W !
  1. . K DIC,DIE,DR,DA
  1. . S DIC(0)="AEZ"
  1. . S DIC=90052.02
  1. . S DIC("S")="I $P(^(0),U,2)=BARCAT"
  1. . D ^DIC
  1. . K BARCAT
  1. . I Y>0 S BARY("TRANS TYPE","ADJ TYPE",+Y)=Y(0)
  1. I $G(BARY("TRANS TYPE",993))="STATUS CHANGE" D
  1. . K DIC,DIE,DR,DA
  1. . S DIC(0)="AEZ"
  1. . S DIC=90052.01
  1. . S DIC("S")="I "",25,""[("",""_Y_"","")"
  1. . S DIC("W")="N C,DINAME W "" "" W "" "",$P(^(0),U,2)"
  1. . D ^DIC
  1. . Q:Y'>0
  1. . N BARCAT
  1. . I Y>0 S BARCAT=+Y,BARY("TRANS TYPE","ADJ CAT",BARCAT)=Y(0)
  1. . E Q
  1. . W !
  1. . K DIC,DIE,DR,DA
  1. . S DIC(0)="AEZ"
  1. . S DIC=90052.02
  1. . S DIC("S")="I $P(^(0),U,2)=BARCAT"
  1. . D ^DIC
  1. . K BARCAT
  1. . I Y>0 S BARY("TRANS TYPE","ADJ TYPE",+Y)=Y(0)
  1. . ;END 1.8*19
  1. Q
  1. DT ; EP
  1. ; Select Date inclusion parameter
  1. K DIR,BARY("DT")
  1. I BARP("RTN")="BARRTAR" Q:$D(DIRUT) D
  1. . K BARY("BATCH"),BARY("ITEM")
  1. . S BARTYP=4
  1. E D Q:+BARDONE!(Y<1)
  1. . S DIR(0)="SO^1:Approval Date;2:Visit Date;3:Export Date"
  1. . S:BAR("OPT")="IPDR" DIR(0)="SO^1:Approval Date;2:Admission Date"
  1. . S:BAR("OPT")="TSR" DIR(0)="SO^1:Visit Date;2:Approval Date;3:Export Date;4:Transaction Date;5:Batch Date"
  1. . S:BAR("OPT")="PAY" DIR(0)="SO^1:Approval Date;2:Visit Date;3:Export Date;4:Transaction Date;5:Batch Date"
  1. . S:BAR("OPT")="DAYS" DIR(0)="SO^1:Visit Date"
  1. . S DIR("A")="Select TYPE of DATE Desired"
  1. . D ^DIR
  1. . K DIR
  1. . I $D(DUOUT)!$D(DTOUT) S BARDONE=1
  1. . S BARTYP=Y
  1. ;
  1. DTYP ;
  1. K DIRUT,DUOUT,DTOUT
  1. S BARY("DT")=$S(BARTYP=1:"A",BARTYP=3:"X",BARTYP=4:"T",1:"V")
  1. I BAR("OPT")="PAY" D
  1. . S BARY("DT")=$S(BARTYP=1:"A",BARTYP=2:"V",BARTYP=3:"X",BARTYP=4:"T",1:"B")
  1. I BAR("OPT")="TSR" D
  1. . S BARY("DT")=$S(BARTYP=1:"V",BARTYP=2:"A",BARTYP=3:"X",BARTYP=4:"T",1:"B")
  1. . I BARTYP=2 S BARTYP=1 Q
  1. . S:BARTYP=1 BARTYP=2
  1. I BAR("OPT")="DAYS" D
  1. . S BARY("DT")="V"
  1. . S BARTYP=12
  1. ;
  1. S BARDTYP="VISIT"
  1. S:BARTYP=1 BARDTYP="APPROVAL"
  1. S:BARTYP=3 BARDTYP="EXPORT"
  1. S:BARTYP=4 BARDTYP="TRANSACTION"
  1. I BARDTYP="VISIT",BAR("OPT")="IPDR" S BARDTYP="ADMISSION"
  1. S:BARTYP=5 BARDTYP="BATCH"
  1. ;END
  1. S BARDTYP=BARDTYP_" DATE"
  1. W !!," ============ Entry of ",BARDTYP," Range =============",!
  1. S DIR("A")="Enter STARTING "_BARDTYP_" for the Report"
  1. S DIR(0)="DOE"
  1. D ^DIR
  1. G DT:$D(DIRUT)
  1. S BARY("DT",1)=Y
  1. W !
  1. S DIR("A")="Enter ENDING DATE for the Report"
  1. S DIR(0)="DOE"
  1. D ^DIR
  1. K DIR
  1. G DT:$D(DIRUT)
  1. S BARY("DT",2)=Y
  1. I BARY("DT",1)>BARY("DT",2) W !!,*7,"INPUT ERROR: Start Date is Greater than the End Date, TRY AGAIN!",!! G DTYP
  1. Q
  1. PRV ; EP
  1. ; Select Provider Inclusion Parameter
  1. K BARY("PRV")
  1. W !
  1. S DIC("S")="I $D(^VA(200,""AK.PROVIDER"",$P(^(0),U)))" ;IHS/SD/TPF 5/22/2008 BAR*1.8*6 DD 4.1.5
  1. S DIC="^VA(200,"
  1. S DIC(0)="QEAM"
  1. D ^DIC
  1. I $D(DTOUT)!($D(DUOUT)) S BARDONE=1 Q
  1. K DIC
  1. S:+Y>0 BARY("PRV")=+Y
  1. Q
  1. ; *******************************
  1. AR ; EP
  1. ; Select A/R Clerk Inclusion Parameter
  1. K BARY("AR")
  1. W !
  1. S DIC("B")=DUZ ;IHS/SD/TPF 5/22/2008 BAR*1.8*6 DD 4.1.5
  1. S DIC="^VA(200,"
  1. S DIC(0)="ZQEAM"
  1. D ^DIC
  1. I $D(DTOUT)!($D(DUOUT)) S BARDONE=1 Q
  1. K DIC
  1. Q:+Y<1
  1. S BARY("AR")=+Y
  1. S BARY("AR","NM")=Y(0,0)
  1. Q
  1. ; ******************
  1. BATCH ; EP
  1. ; Select Collection Batch Inclusion Parameter
  1. K BARY("BATCH"),BARY("ITEM"),BARY("COLPT")
  1. W !
  1. S DIC="^BARCOL(DUZ(2),"
  1. S DIC(0)="ZQEAM"
  1. S DIC("A")="Select Collection Batch: "
  1. S DIC("W")="D BATW^BARPST"
  1. S DIC("S")="I $P(^(0),U,3)=""P""&($G(BARUSR(29,""I""))=$P(^(0),U,10))"
  1. D ^DIC
  1. I $D(DTOUT)!($D(DUOUT)) S BARDONE=1 Q
  1. K DIC
  1. Q:+Y<1
  1. S BARCOL=+Y ;BAR*1.8*6 ERROR WHEN TESTING IHS/SD/TPF 7/24/2008
  1. S BARY("BATCH")=+Y
  1. S BARY("BATCH","NM")=Y(0,0)
  1. Q
  1. ; *******
  1. ITEM ; EP
  1. ; Select Collection Batch Item Inclusion Parameter
  1. D BATCH
  1. I +BARDONE!(+Y<1) Q
  1. W !
  1. S DA(1)=BARY("BATCH")
  1. S DIC="^BARCOL(DUZ(2),"_DA(1)_",1,"
  1. S DIC(0)="ZQEAM"
  1. S DIC("A")="Select Collection Batch Item: "
  1. S DIC("W")="D DICW^BARPST"
  1. ; Screen out cancelled items
  1. S DIC("S")="I $P(^(0),U,17)'=""C""&($P(^(0),U,17)'=""R"")"
  1. D ^DIC
  1. I $D(DTOUT)!($D(DUOUT)) S BARDONE=1 Q
  1. K DIC
  1. Q:+Y<1
  1. S BARY("ITEM")=+Y
  1. S BARY("ITEM","NM")=Y(0,0)
  1. Q
  1. ; *************
  1. RTYP ; EP
  1. ; Select Report Type Inclusion Parameter
  1. K DIR,BARY("RTYP")
  1. S DIR(0)="SO^1:Detail;2:Summary;3:Detail and Summary"
  1. ; BAR*1.8*19 IHS/SD/PKD 6/01/10
  1. I BAR("OPT")="CXL" S DIR(0)="SO^1:Detail;2:Summary"
  1. S DIR("A")="Select TYPE of REPORT desired"
  1. S DIR("B")=1
  1. D ^DIR
  1. K DIR
  1. I $D(DUOUT)!$D(DTOUT) S BARDONE=1 Q
  1. S BARY("RTYP")=Y
  1. S BARY("RTYP","NM")=Y(0)
  1. Q
  1. ; *********************
  1. DSVC ; EP
  1. ; Select One Discharge Service
  1. ; FACILITY TREATING SPECIALTY File ^DIC(45.7)
  1. K BARY("DSVC"),DIC,DA
  1. S DIC="^DIC(45.7,"
  1. S DIC(0)="ZAEMQ"
  1. S DIC("A")="Select Discharge Service: "
  1. D ^DIC
  1. K DIC
  1. Q:$D(DTOUT)!($D(DUOUT))
  1. Q:+Y<1
  1. S BARY("DSVC")=+Y
  1. S BARY("DSVC","NM")=Y(0,0)
  1. Q
  1. ; ********************
  1. ASKICD() ; - BAR1.8*24
  1. K DIRUT,DIR,Y
  1. S Y=$$DIR^XBDIR("S^9:ICD-9;10:ICD-10;B:Both coding versions","Select ICD Version ","","","","",1)
  1. K DA
  1. Q Y
  1. CLNUPDX ;CLEAN UP DX
  1. ;K BARY("DXTYPE") HEAT150941
  1. K BARY("DX-ICDVER") ;- BAR1.8*24
  1. K BARY("DX9")
  1. K BARY("DX10")
  1. Q
  1. ;
  1. ;-------------EOR------------