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

ACRFSPL2.m

Go to the documentation of this file.
  1. ACRFSPL2 ;IHS/OIRM/DSD/AEF - DHR-SPLITOUT [ 10/27/2004 4:18 PM ]
  1. ;;2.1;ADMIN RESOURCE MGT SYSTEM;**13**;NOV 05, 2001
  1. ;
  1. EN(ACRD0) ;EP ; ACR*2.1*13.01 IM13574
  1. ;----- MAIN ENTRY POINT
  1. ;
  1. ; ACRD0 = COLOR BATCH IEN FROM DHR DATA RECORDS FILE TO BE
  1. ; EXPORTED
  1. ; ACRCTR = WHAT KIND OF EXPORT, I.E., ARM, BCS, PCC
  1. ;
  1. N %DEV,ACROUT
  1. D HFS(.%DEV) ;ACR*2.1*13.01 IM13574
  1. Q:$G(ACROUT)
  1. D CLOSE(ACRD0) ;ACR*2.1*13.01 IM13574
  1. Q:$G(ACROUT)
  1. D DATA(ACRD0) ;ACR*2.1*13.01 IM13574
  1. Q:'$D(^TMP("ACRDHR-EXP",$J))
  1. D EXP(%DEV) ;ACR*2.1*13.01 IM13574
  1. D CLOSE^ACRFZISH("FILE") ;ACR*2.1*13.01 IM13574
  1. Q
  1. CLOSE(ACRD0) ;----- SET EXPORT DATE
  1. ;
  1. N DA,DIE,DR,X,Y
  1. L +^AFSHRCDS(ACRD0):1
  1. I '$T W !,*7,"Users are active in this batch - TRY LATER" S ACROUT=1
  1. I $P(^AFSHRCDS(ACRD0,0),U,2) W !,*7,"This batch has already been exported" S ACROUT=1
  1. I '$G(ACROUT) D
  1. .S DIE="^AFSHRCDS("
  1. .S DA=ACRD0
  1. .D NOW^%DTC
  1. .S DR=".21///^S X=%"
  1. .D ^DIE
  1. L -^AFSHRCDS(ACRD0)
  1. Q
  1. EXP(%DEV) ;----- EXPORT DHR DATA TO UNIX FILE ; ACR*2.1*13.01 IM13574
  1. ;
  1. N X1,X2
  1. S X1=0
  1. F S X1=$O(^TMP("ACRDHR-EXP",$J,X1)) Q:'X1 D
  1. . F X2=1:1:5 D
  1. . . U %DEV
  1. . . W ^TMP("ACRDHR-EXP",$J,X1,X2)
  1. Q
  1. DATA(ACRD0) ;----- GATHER DHR DATA AND PUT INTO ^TMP GLOBAL ; ACR*2.1*13.01 IM13574
  1. ;
  1. ;N ACRAMT,ACRCNT,ACRD1,ACRD2,ACRD3,AMT,CNT,DATA,X,Y,Z
  1. K ^TMP("ACRDHR",$J)
  1. S (ACRD1,ACRCNT)=0
  1. F S ACRD1=$O(^AFSHRCDS(ACRD0,"D",ACRD1)) Q:'ACRD1 D
  1. . S ACRD2=0
  1. . F S ACRD2=$O(^AFSHRCDS(ACRD0,"D",ACRD1,"I",ACRD2)) Q:'ACRD2 D
  1. . . S DATA=^AFSHRCDS(ACRD0,"D",ACRD1,"I",ACRD2,0)
  1. . . S (ACRD3,AMT,CNT)=0
  1. . . F S ACRD3=$O(^AFSHRCDS(ACRD0,"D",ACRD1,"I",ACRD2,"S",ACRD3)) Q:'ACRD3 D
  1. . . . S ACRCNT=ACRCNT+1
  1. . . . S CNT=CNT+1
  1. . . . S X=^AFSHRCDS(ACRD0,"D",ACRD1,"I",ACRD2,"S",ACRD3,0)
  1. . . . S Y=ACRD0_U_ACRD1_U_$P(DATA,U)_U_ACRD3_U_$P(DATA,U,7)_U_ACRCNT
  1. . . . I $P(Y,U,5)="" S $P(Y,U,5)=$G(DUZ)
  1. . . . S AMT=$P(X,U,15)
  1. . . . I $P(X,U,5)=2 S AMT=0-AMT
  1. . . . S $P(^TMP("ACRDHR",$J,ACRD0,0),U)=ACRCNT
  1. . . . S $P(^TMP("ACRDHR",$J,ACRD0,0),U,2)=$P(^TMP("ACRDHR",$J,ACRD0,0),U,2)+AMT
  1. . . . S $P(^TMP("ACRDHR",$J,ACRD0,ACRD1,$P(DATA,U),0),U)=CNT
  1. . . . S $P(^TMP("ACRDHR",$J,ACRD0,ACRD1,$P(DATA,U),0),U,2)=$P(^TMP("ACRDHR",$J,ACRD0,ACRD1,$P(DATA,U),0),U,2)+AMT
  1. . . . D DATA^ACRFSPL6(X,Y)
  1. Q
  1. HFS(%DEV) ;----- CREATE/OPEN UNIX FILE ; ACR*2.1*13.06 IM14144
  1. N ACRFILE,X,Y,ZISH1 ; ACR*2.1*13.06 IM14144
  1. D FILE(.ACRFILE) ; ACR*2.1*13.06 IM14144
  1. Q:$G(ACROUT) ; ACR*2.1*13.06 IM14144
  1. S ZISH1=$$ARMSDIR^ACRFSYS(1) ; ACR*2.1*13.06 IM14144
  1. Q:ZISH1']"" ; ACR*2.1*13.06 IM14144
  1. D HFS^ACRFZISH(ZISH1,ACRFILE,"W",.%DEV) ; VERBOSE ; ACR*2.1*13.01 IM13574
  1. I $G(%DEV)']"" S ACROUT=1 ; ACR*2.1*13.01 IM13574
  1. Q
  1. FILE(FILE) ;----- GET FILE NAME
  1. ;
  1. N DIC,I,Q,X,Y,Z
  1. L +^ACRF(9002196.3):4
  1. S FILE=""
  1. S Z=$S(ACRD0=1:"afsdhpb",ACRD0=2:"afsdhpr",ACRD0=3:"afsdhcb",ACRD0=4:"afsdhcr",ACRD0=5:"afsdhab",ACRD0=6:"afsdhar",1:"")
  1. I Z="" S ACROUT=1 Q
  1. F I=97:1:122 S Q=$C(I) I '$D(^ACRF(9002196.3,"B",Z_Q_"."_$E(DT,2,3)_$$JDT^XBFUNC(DT))) S FILE=Z_Q_"."_$E(DT,2,3)_$$JDT^XBFUNC(DT) Q
  1. I FILE="" S ACROUT=1 L -^ACRF(9002196.3) Q
  1. K DD,DO
  1. S DIC="^ACRF(9002196.3,"
  1. S DIC(0)=""
  1. S X=FILE
  1. S DIC("DR")=".02///^S X=DT"
  1. D FILE^DICN
  1. I Y'>0 S ACROUT=1
  1. L -^ACRF(9002196.3)
  1. Q