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

BARBAD1.m

Go to the documentation of this file.
  1. BARBAD1 ; IHS/SD/LSL - Posting and Adjustments ;
  1. ;;1.8;IHS ACCOUNTS RECEIVABLE;**19,21**;OCT 26, 2005
  1. ;
  1. EN() ; EP
  1. ; Batch Posting entry
  1. K BARPAT,BARZ
  1. D SELBILL
  1. Q:$D(DTOUT)!$D(DIROUT)!$D(DUOUT) 0
  1. I $G(BARZ) Q BARZ
  1. D ASKPAT
  1. Q:$D(DTOUT)!$D(DIROUT)!$D(DUOUT) 0
  1. I $G(BARZ) Q BARZ
  1. D GETBIL
  1. I $G(BARZ) Q BARZ
  1. Q 0
  1. ; *********************************************************************
  1. ;
  1. TOP(BARV) ; EP
  1. ; Select Batch
  1. W !!!
  1. W "Select Batch: "_$P(BARCOL(0),U,1)
  1. S Y=+BARCOL
  1. D BATW^BARBAD
  1. D BBAL^BARBAD(BARCOL)
  1. W !!,"Select Item: "_BARITM
  1. S Y=+BARITM
  1. D DICW^BARBAD
  1. D IBAL^BARBAD(BARITM)
  1. I $G(BAREOB) D
  1. .N DA
  1. .W !!
  1. .W "Select Visit Location: "
  1. .S DA=BAREOB
  1. .S DA(1)=+BARITM
  1. .S DA(2)=+BARCOL
  1. .W $$VAL^XBDIQ1(90051.1101601,.DA,.01)
  1. .D EBAL^BARBAD(BAREOB)
  1. Q:'BARV
  1. W !!
  1. W "Select Patient: "_$P(BARPAT(0),U,1)
  1. Q
  1. SELBILL ; EP
  1. ; select bill
  1. ;IHS/SD/TPF BAR*1.8*21 8/3/2011 HEAT20490
  1. I $$NOTOPEN^BARUFUT(.DUZ,$G(UFMSESID)) Q ;IS SESSION STILL OPEN
  1. ;IM24235 BAR*1.8*1
  1. I '$D(^BARBL(DUZ(2))) D Q
  1. .W !!,$P(^DIC(4,DUZ(2),0),U)," DOES NOT HAVE ANY BILLS TO LIST!"
  1. .K DIR
  1. .S DIR(0)="E"
  1. .D ^DIR
  1. ;END IM24235
  1. K DIC
  1. S DIC=90050.01
  1. ; IHS/SD/PKD 10/22/10 Selection Display-more info
  1. S DIC("W")="D DISP^BARPUTL"
  1. S DIC(0)="AEMQZ"
  1. D ^DIC
  1. Q:+Y<0
  1. Q:$D(DTOUT)!$D(DIROUT)!$D(DUOUT)!(Y="")!(Y=" ")
  1. S BARPAT=$P(^BARBL(DUZ(2),+Y,1),"^",1)
  1. S BARSTART=$P(^BARBL(DUZ(2),+Y,1),"^",2)
  1. S BAREND=$P(^BARBL(DUZ(2),+Y,1),"^",3)
  1. S:BAREND="" BAREND=BARSTART
  1. S BARPAT(0)=$P($G(^DPT(+BARPAT,0)),"^",1)
  1. S BARZ=BARPAT_"^"_BARSTART_"^"_BAREND
  1. Q
  1. ; *********************************************************************
  1. ;
  1. GETBIL ;EP
  1. ;IHS/SD/TPF BAR*1.8*21 8/3/2011 HEAT20490
  1. I $$NOTOPEN^BARUFUT(.DUZ,$G(UFMSESID)) Q ;IS SESSION STILL OPEN
  1. ;
  1. W !
  1. S DIC="^BARBL(DUZ(2),"
  1. S DIC(0)="AEQZ"
  1. S DIC("A")="Select Bill DOS: "
  1. S D="E"
  1. D IX^DIC
  1. K DIC
  1. Q:+Y<0
  1. Q:$D(DTOUT)!$D(DIROUT)!$D(DUOUT)!(Y="")!(Y=" ")
  1. S BARPAT=$P(^BARBL(DUZ(2),+Y,1),"^",1)
  1. S BARSTART=$P(^BARBL(DUZ(2),+Y,1),"^",2)
  1. S BAREND=$P(^BARBL(DUZ(2),+Y,1),"^",3)
  1. S BARPAT(0)=$P($G(^DPT(+BARPAT,0)),"^",2)
  1. W " ",BARPAT(0)
  1. S BARZ=BARPAT_"^"_BARSTART_"^"_BAREND
  1. Q
  1. ; *********************************************************************
  1. ;
  1. ASKPAT ;EP - select patient
  1. ;IHS/SD/TPF BAR*1.8*21 8/3/2011 HEAT20490
  1. I $$NOTOPEN^BARUFUT(.DUZ,$G(UFMSESID)) Q ;IS SESSION STILL OPEN
  1. ;
  1. K DIC,BARZ
  1. S DIC="^AUPNPAT("
  1. S DIC(0)="IAEMQZ"
  1. S DIC("S")="Select Patient: "
  1. S DIC("S")="I $D(^BARBL(DUZ(2),""ABC"",Y))"
  1. D ^DIC
  1. K DIC
  1. Q:+Y<0
  1. Q:$D(DTOUT)!$D(DIROUT)!$D(DUOUT)!(Y="")!(Y=" ")
  1. S BARPAT=+Y
  1. S BARPAT(0)=Y(0)
  1. S BARPAT(0)=$P($G(^DPT(+BARPAT,0)),"^",1)
  1. D GETDOS
  1. I '$G(BAROK) K BARPAT Q
  1. S BARZ=BARPAT_"^"_BARSTART_"^"_BAREND
  1. Q
  1. ; *********************************************************************
  1. ;
  1. GETDOS ; EP
  1. ; dates of service
  1. K BARSTART,BAREND,BAROK
  1. W !
  1. S BARSTART=$$DATE^BARDUTL(1)
  1. Q:BARSTART<0
  1. S %DT("B")=$$MDT2^BARDUTL(BARSTART)
  1. S BAREND=$$DATE^BARDUTL(2)
  1. Q:BAREND<0
  1. I BAREND<BARSTART D G GETDOS
  1. .W *7
  1. .D EOP^BARUTL(2)
  1. .W !,"The END date must not be before the START date.",!
  1. S BAROK=1
  1. Q