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

ACHSHVRC.m

Go to the documentation of this file.
  1. ACHSHVRC ; IHS/ITSC/PMF - CHECK STATUS OF HV VENDOR NOTIFICATION REPORTS (1/2) ; [ 10/16/2001 8:16 AM ]
  1. ;;3.1;CONTRACT HEALTH MGMT SYSTEM;;JUN 11, 2001
  1. ;
  1. D HOME^%ZIS
  1. S ACHSHMD=IO(0)
  1. I $$DEL^%ZISH("/usr/spool/3780/","achshv.reports")
  1. S ACHSHCMD="cd "_$$AOP^ACHS(2,1)_"; ls -l achshv.* | awk '{print $9,$5}' > /usr/spool/3780/achshv.reports"
  1. S ACHSRTCD=$$TERMINAL^ACHSHCMD(ACHSHCMD)
  1. K ACHSUNMS,ACHSUFLS
  1. ;
  1. S (ACHSLCTR,ACHSL1FD)=0
  1. S ACHSZFN="/usr/spool/3780/achshv.reports"
  1. I $$OPEN^%ZISH("/usr/spool/3780/","achshv.reports","R") S ACHSEMSG="M10" D ERROR^ACHSTCK1 G ABEND^ACHSHVR2
  1. S ACHSHFS1=IO
  1. F ACHSI=1:1 R ACHSXX:1 G C0:'$T G C0:$$STATUS^%ZISH S ACHSUFLS(ACHSI)=ACHSXX
  1. C0 ;
  1. I $D(ACHSHFS1) S IO=ACHSHFS1 S IONOFF="" D ^%ZISC
  1. S ACHSI=0
  1. C1 ;
  1. S ACHSI=$O(ACHSUFLS(ACHSI))
  1. G C1A:+ACHSI=0
  1. S ACHSXX=ACHSUFLS(ACHSI)
  1. S ACHSUFLS(ACHSI)=ACHSUFLS(ACHSI)_"^"
  1. D TESTEX
  1. G C1
  1. ;
  1. C1A ;
  1. I $D(ACHSHFS1) S IO=ACHSHFS1 S IONOFF="" D ^%ZISC
  1. G FILDELB^ACHSHVR2
  1. ;
  1. TESTEX ;
  1. S ACHSFNAM=$$AOP^ACHS(2,1)_$P(ACHSXX," ",1),ACHSFSIZ=+$P(ACHSXX," ",2),ACHSVPT=""
  1. S ACHSZFN=ACHSFNAM
  1. I $$OPEN^%ZISH($$AOP^ACHS(2,1),$P(ACHSXX," ",1),"R") S ACHSEMSG="M10" D ERROR^ACHSTCK1 G ABEND^ACHSHVR2
  1. S ACHSHFS1=IO,ACHSLMT=5,ACHSRCT=0
  1. TESTRD ;
  1. U ACHSHFS1
  1. R ACHSXX:1
  1. Q:'$T
  1. G EOF:$$STATUS^%ZISH
  1. S ACHSRCT=ACHSRCT+1
  1. I ACHSRCT>ACHSLMT G EOF
  1. I $E(ACHSXX,1,3)="PCC" S X=$E(ACHSXX,40,65) D VENDLK
  1. I $E(ACHSXX,1,4)="LHHS" G REPREAD
  1. G TESTRD
  1. ;
  1. REPREAD ;
  1. S Y=$E(ACHSXX,40,62),ACHSHVNM=$P(Y," ",1)
  1. S Z=$F(ACHSXX,"FOR",75),X=$E(ACHSXX,Z,Z+8)
  1. S ACHSHVDT=X
  1. D ^%DT
  1. S:+Y>0 $P(ACHSUFLS(ACHSI),U,2)=Y
  1. S $P(ACHSUFLS(ACHSI),U,3)=ACHSHVNM
  1. S $P(ACHSUFLS(ACHSI),U,5)=ACHSVPT
  1. G EOJCHK
  1. ;
  1. EOF ;
  1. S $P(ACHSUFLS(ACHSI),U,2)=""
  1. Q
  1. ;
  1. VENDLK ;
  1. F ACHSJ=$L(X):-1:1 Q:$E(X,ACHSJ,ACHSJ)'=" " I $E(X,ACHSJ,ACHSJ)=" " S X=$E(X,1,ACHSJ-1)
  1. S ACHSVPT=""
  1. S DIC="^AUTTVNDR(",DIC(0)="ZM",D="AKA"
  1. D IX^DIC
  1. I +Y<1 U ACHSHMD W !?10,"VENDOR NOT FOUND FOR ",X Q
  1. S ACHSVPT=+Y
  1. Q
  1. ;
  1. EOJCHK ;
  1. I $D(ACHSHFS1) S IO=ACHSHFS1 S IONOFF="" D ^%ZISC
  1. S ACHSZFN=$P($P(ACHSUFLS(ACHSI),U,1)," ",1)
  1. ;
  1. S ACHSHCMD="cd "_$$AOP^ACHS(2,1)_"; tail -50 "_ACHSZFN_" > eof.achshv"
  1. S ACHSRTCD=$$TERMINAL^ACHSHCMD(ACHSHCMD)
  1. ;
  1. S ACHSZFN=$$AOP^ACHS(2,1)_"eof.achshv"
  1. I $$OPEN^%ZISH($$AOP^ACHS(2,1),"eof.achshv","R") S ACHSEMSG="M10" D ERROR^ACHSTCK1 G ABEND^ACHSHVR2
  1. S ACHSHFS1=IO,ACHSLMT=5,ACHSRCT=0
  1. K ACHSERR
  1. EOJRD ;
  1. U ACHSHFS1
  1. R ACHSXX:1
  1. Q:'$T
  1. G EOFB:$$STATUS^%ZISH
  1. I $E(ACHSXX,1,6)'="TOTAL " G EOJRD
  1. S ACHSHVPC=$E(ACHSXX,17,$L(ACHSXX))
  1. NOCHK ;
  1. F J=1:1 I $E(ACHSHVPC,1,1)=" " S ACHSHVPC=$E(ACHSHVPC,2,$L(ACHSHVPC)) Q:$E(ACHSHVPC,1,1)
  1. I +ACHSHVPC>0 S $P(ACHSUFLS(ACHSI),U,4)=+ACHSHVPC
  1. EOFB ;
  1. S IO=ACHSHFS1,IONOFF=""
  1. D ^%ZISC
  1. I $P(ACHSUFLS(ACHSI),U,4)<1!(+$P(ACHSUFLS(ACHSI),U,2)<2900000) S ACHSHCMD=$$DEL^%ZISH($$AOP^ACHS(2,1),$P($P(ACHSUFLS(ACHSI),U,1)," ",1)) K ACHSUFLS(ACHSI)
  1. S ACHSDATE=$P(ACHSUFLS(ACHSI),U,2)
  1. S ACHSVPT=$P(ACHSUFLS(ACHSI),U,5)
  1. S ACHSRDAT=9999999-ACHSDATE
  1. S ACHSUFLS("C",ACHSVPT,ACHSRDAT,ACHSI)=""
  1. Q
  1. ;