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

ACHSEOBY.m

Go to the documentation of this file.
  1. ACHSEOBY ; IHS/ITSC/TPF/PMF - CHECK STATUS OF BCBS EOBR REPORTS ;
  1. ;;3.1;CONTRACT HEALTH MGMT SYSTEM;**21,22**;JUN 11, 2001;Build 43
  1. ;
  1. I '$L($$AOP^ACHS(2,1)) D NODIR Q
  1. K ACHSUNMS,ACHSUFLS
  1. S ACHSLCTR=0
  1. ;I $$LIST^%ZISH($$AOP^ACHS(2,1),"bcbseob*",.ACHSUFLS) S ACHSEMSG="M10" D ERROR^ACHSTCK1 G ABEND ;ACHS*3.1*21
  1. I $$LIST^%ZISH($$AOP^ACHS(2,1),"bcbseob*",.ACHSUFLS) S ACHSEMSG="M15" D ERROR^ACHSTCK1 G END ;ACHS*3.1*21
  1. S ACHSI=0
  1. C1 ;
  1. S ACHSI=$O(ACHSUFLS(ACHSI))
  1. G C1A:+ACHSI=0
  1. S ACHSXX=ACHSUFLS(ACHSI),ACHSUFLS(ACHSI)=ACHSUFLS(ACHSI)_"^"
  1. D TESTEX,^%ZISC
  1. G C1
  1. ;
  1. C1A ;
  1. G FILDEL
  1. ;
  1. TESTEX ;
  1. I $$OPEN^%ZISH($$AOP^ACHS(2,1),ACHSXX,"R") S ACHSEMSG="M10" D ERROR^ACHSTCK1 G ABEND
  1. S ACHSLMT=100,ACHSRCT=0
  1. TESTRD ;
  1. U IO
  1. R ACHSXX:1 ;SAC-FILE READ
  1. Q:'$T
  1. G EOF:$$STATUS^%ZISH
  1. ;I ACHSISAO S ACHSXX=$E(ACHSXX,3,85) ;ACHS*3.1*21
  1. I ACHSISAO S ACHSXX=$S($$OS^ACHS=2:$E(ACHSXX,1,82),1:$E(ACHSXX,3,85)) ;ACHS*3.1*21
  1. S ACHSRCT=ACHSRCT+1
  1. I ACHSRCT>ACHSLMT G EOF
  1. I $E(ACHSXX,1,2)'="$$" G TESTRD
  1. S ACHSERDT=$E(ACHSXX,3,8),ACHSERRC=+$E(ACHSXX,10,18)
  1. ;ACHS*3.1*22 ADDED TO VIEW THE FILE WITH ICD9 FIXES
  1. ;S $P(ACHSUFLS(ACHSI),U,3)=$E(ACHSXX,3,8),$P(ACHSUFLS(ACHSI),U,4)=+$E(ACHSXX,10,18),$P(ACHSUFLS(ACHSI),U,5)=+$E(ACHSXX,20,22)
  1. S $P(ACHSUFLS(ACHSI),U,3)=$E(ACHSXX,3,8),$P(ACHSUFLS(ACHSI),U,4)=+$E(ACHSXX,10,18),$P(ACHSUFLS(ACHSI),U,5)=$S($E(ACHSXX,20,22)?1N.N:+$E(ACHSXX,20,22),1:$E(ACHSXX,20,22))
  1. S $P(ACHSUFLS(ACHSI),U,6)=$E(ACHSXX,25,30) ;ACHS*3.1*22 ADDED FOR ICD9 FILE
  1. S $P(ACHSUFLS(ACHSI),U,2)="OK"
  1. Q
  1. ;
  1. EOF ;
  1. S $P(ACHSUFLS(ACHSI),U,2)=""
  1. Q
  1. ;
  1. FILDEL ; Delete HFS files.
  1. S ACHSI=""
  1. FILDELA ;
  1. S ACHSI=$O(ACHSUFLS(ACHSI))
  1. G FILDELC:+ACHSI=0
  1. S ACHSDATE=$P(ACHSUFLS(ACHSI),U,3)
  1. G FILDELA:$L(ACHSDATE)=0
  1. S X=ACHSDATE,X=$E(X,5,6)_$E(X,1,4),X=$S($E(X,1,2)>50:2,1:3)_X
  1. S ACHSDATE=X,ACHSRDAT=9999999-ACHSDATE,ACHSUFLS("C",ACHSRDAT,ACHSI)=""
  1. G FILDELA
  1. ;
  1. FILDELC ;
  1. S (ACHSR,ACHSRR,ACHSDELD,ACHSCNT,ACHSDSAV)=0
  1. FILDELC1 ;
  1. S ACHSR=$O(ACHSUFLS("C",ACHSR))
  1. G FILDELF:+ACHSR=0
  1. FILDELC2 ;
  1. S ACHSRR=$O(ACHSUFLS("C",ACHSR,ACHSRR))
  1. G FILDELC1:+ACHSRR=0
  1. S ACHSCNT=ACHSCNT+1
  1. I ACHSCNT=6 S ACHSDELD=9999999-ACHSR
  1. G FILDELC2
  1. ;
  1. FILDELF ;
  1. G FILDEND:+ACHSDELD=0
  1. S Y=$$FMTE^XLFDT(ACHSDELD)
  1. U IO(0)
  1. S Y=$$DIR^XBDIR("Y","Delete ALL FI EOBR FILES With Process Date BEFORE "_Y,"Y","","","",2)
  1. I Y=1 G FILDELK
  1. G FILDEND
  1. ;
  1. FILDELK ;
  1. S ACHSR=9999999-ACHSDELD
  1. FILDELK1 ;
  1. S ACHSR=$O(ACHSUFLS("C",ACHSR))
  1. G FILDEND:+ACHSR=0
  1. S ACHSRR="",ACHSRR=$O(ACHSUFLS("C",ACHSR,ACHSRR))
  1. G FILDELK1:+ACHSRR=0
  1. I $$AOP^ACHS(2,9)<10,$P(ACHSUFLS(ACHSRR),U,5)>990 G FILDELK2
  1. G FILDELK1:$P(ACHSUFLS(ACHSRR),U,5)'<$$AOP^ACHS(2,9)
  1. FILDELK2 ;
  1. G FILDELK1:$P(ACHSUFLS(ACHSRR),U,5)=$$AOP^ACHS(2,9)
  1. FILDELK3 ;
  1. S ACHSZFN=$P(ACHSUFLS(ACHSRR),U,1)
  1. I '$$DEL^%ZISH($$AOP^ACHS(2,1),ACHSZFN) U IO(0) W !!?10,ACHSZFN," has been DELETED" K ACHSUFLS("C",ACHSR,ACHSRR),ACHSUFLS(ACHSRR)
  1. G FILDELK1
  1. ;
  1. FILDEND ;
  1. Q
  1. ;
  1. END ; ;ACHS*3.1*21 NEW SUB
  1. U IO(0)
  1. D CLOSEALL^ACHS
  1. Q
  1. ABEND ;
  1. U IO(0)
  1. W *7,!!,$$C^XBFUNC("JOB ENDED WITH ERROR(S) - NOTIFY SUPERVISOR"),!
  1. D CLOSEALL^ACHS
  1. I $$DIR^XBDIR("E","Enter <RETURN> to CONTINUE")
  1. Q
  1. ;
  1. NODIR ;
  1. U IO(0)
  1. W *7,!,$$C^XBFUNC("Your EOBR IMPORT DIRECTORY is not defined in your")
  1. W !,$$C^XBFUNC("CHS AREA OFFICE PARAMETERS file.")
  1. W !,$$C^XBFUNC("The directory is usually"),!,$$C^XBFUNC("/usr/spool/chsdata"),!,$$C^XBFUNC("for unix systems, and"),!,$$C^XBFUNC("c:\usr\spool\chsdata"),!,$$C^XBFUNC("for DOS systems.")
  1. G ABEND
  1. ;