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

FBCKDIS1.m

Go to the documentation of this file.
  1. FBCKDIS1 ;AISC/CMR - OUTPUT BY CHECK # cont. ;20APR94
  1. ;;3.5;FEE BASIS;;JAN 30, 1995
  1. ;;Per VHA Directive 10-93-142, this routine should not be modified.
  1. D OPT,INPT,PHARM,TRAV
  1. Q
  1. OPT ;find outpatient payments for check #
  1. Q:'$D(^FBAAC("ACK",FBCN))
  1. S FBPROG="OPT",FBCNT=0
  1. S FB1=0 F S FB1=$O(^FBAAC("ACK",FBCN,FB1)) Q:'FB1 S FB2=0 F S FB2=$O(^FBAAC("ACK",FBCN,FB1,FB2)) Q:'FB2 S FB3=0 F S FB3=$O(^FBAAC("ACK",FBCN,FB1,FB2,FB3)) Q:'FB3 S FB4=0 F S FB4=$O(^FBAAC("ACK",FBCN,FB1,FB2,FB3,FB4)) Q:'FB4 D
  1. .Q:$S('$D(^FBAAC(FB1,1,FB2,1,FB3,1,FB4,0)):1,'$D(^FBAAC(FB1,1,FB2,1,FB3,1,FB4,2)):1,'$D(^FBAAC(FB1,1,FB2,1,FB3,0)):1,1:0)
  1. .S FBCNT=FBCNT+1,FBDA=FB1_"^"_FB2_"^"_FB3_"^"_FB4,DFN=FB1,FBV=FB2
  1. .D SETMP
  1. D CLN Q
  1. INPT ;find inpatient payments for check #
  1. Q:'$D(^FBAAI("ACK",FBCN))
  1. S (FBCNTCH,FBCNTCNH)=0
  1. S FB1=0 F S FB1=$O(^FBAAI("ACK",FBCN,FB1)) Q:'FB1 D
  1. .Q:$S('$D(^FBAAI(FB1,0)):1,'$D(^FBAAI(FB1,2)):1,1:0)
  1. .S FBA=^FBAAI(FB1,0),DFN=$P(FBA,U,4),FBV=$P(FBA,U,3)
  1. .S FBPROG=$S($P(FBA,U,12)=6:"CH",$P(FBA,U,12)=7:"CNH",1:"") Q:FBPROG']""
  1. .I FBPROG="CH" S FBCNTCH=FBCNTCH+1,FBCNT=FBCNTCH
  1. .I FBPROG="CNH" S FBCNTCNH=FBCNTCNH+1,FBCNT=FBCNTCNH
  1. .S FBDA=FB1
  1. .D SETMP
  1. D CLN Q
  1. PHARM ;find pharmacy payments for check #
  1. Q:'$D(^FBAA(162.1,"ACK",FBCN))
  1. S FBCNT=0,FBPROG="PHAR"
  1. S FB1=0 F S FB1=$O(^FBAA(162.1,"ACK",FBCN,FB1)) Q:'FB1 S FB2=0 F S FB2=$O(^FBAA(162.1,"ACK",FBCN,FB1,FB2)) Q:'FB2 D
  1. .Q:$S('$D(^FBAA(162.1,FB1,"RX",FB2,0)):1,'$D(^FBAA(162.1,FB1,"RX",FB2,2)):1,'$D(^FBAA(162.1,FB1,0)):1,1:0)
  1. .S FBCNT=FBCNT+1
  1. .S FBA=^FBAA(162.1,FB1,"RX",FB2,0),DFN=$P(FBA,U,5),FBV=$P(^FBAA(162.1,FB1,0),U,4)
  1. .S FBDA=FB1_"^"_FB2
  1. .D SETMP
  1. D CLN Q
  1. TRAV ;find travel payments for check #
  1. Q:'$D(^FBAAC("ACKT",FBCN))
  1. S FBCNT=0,FBPROG="TRAV"
  1. S FB1=0 F S FB1=$O(^FBAAC("ACKT",FBCN,FB1)) Q:'FB1 S FB2=0 F S FB2=$O(^FBAAC("ACKT",FBCN,FB1,FB2)) Q:'FB2 D
  1. .Q:'$D(^FBAAC(FB1,3,FB2,0))
  1. .S FBCNT=FBCNT+1
  1. .S DFN=FB1,FBV="R"
  1. .S FBDA=FB1_"^"_FB2
  1. .D SETMP
  1. D CLN Q
  1. SETMP ;set up tmp global
  1. S ^TMP($J,"FBCK",FBPROG,FBV,DFN,FBCNT)=FBDA
  1. Q
  1. CLN K FB1,FB2,FB3,FB4,FBA,FBCNT,DFN,FBCNTCH,FBCNTCNH,FBPROG Q
  1. SUSP ;get suspense code
  1. S FBSUSP=$S(FBSUSP="":"",$D(^FBAA(161.27,FBSUSP,0)):^FBAA(161.27,FBSUSP,0),1:"")
  1. Q