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

BLRMIAUT.m

Go to the documentation of this file.
BLRMIAUT ; IHS/MSC/MKK - INCOMING HL7 MICRO AUTO INSTRUMENT PROGRAM  ; 22-Oct-2013 09:22 ; MKK
 ;;5.2;LA;**1033**;NOV 01, 1997
 ;
 ; Cloned from LAMIAUT0
 ;
EP ; EP
 D CLEAN,^LRPARAM S LRMIDEF=$P(^LAB(69.9,1,1),U,10),LRMIOTH=$P(^(1),U,11),LRINI=$P(^VA(200,DUZ,0),U,2),LRMICOM=$S($D(^DD(63.31,.01,0)):$P(^(0),U,5,99),1:"S Q9=""1,68,KM"" D COM^LRNUM"),LRMICOMS=$P($P(LRMICOM,",",3),"""",1)
 ;
 S LRTEC=LRINI,LAMIAUTO=1
 S ^TMP("BLRMIAUT",$J,"HL7")=""
 ;
ACCESS ; EP
 S TAB1="?20",TAB2="?30",TAB3="?35",LREND=0,LRFIFO=0
 ;
 NEW HEADER
 D ACCFILEL^BLRLAHGU    ; Get Date Range, AUTO INSTRUMENT, and LOAD/WORK LIST
 G:LRLL<1 CLEAN
 ;
 S LRFMT=$P(^LAB(69.9,1,0),U,11),LRFMT=$S(LRFMT="":"I",1:LRFMT)
 S LRVT="VS"
 S LRSS="MI"
 ;
 S (NOGO,LREND)=0
 F  Q:NOGO!(+$G(LREND))  D
 . D GETUID^BLRLAHGU(LRSDT,LRLDT)
 . Q:+$G(LREND)
 . ;
 . S (LRCAPMS,LRAAD,LRCAPWA)=LRAA
 . D AUTO^LRCAPV  Q:$G(LREND)
 . S LRADDF=LRAD
 . D LRANX
 . D:+$G(LREND)<1 ONGO^BLRLAHGU(.NOGO),PUTCOMPD
 ;
CLEAN ;
 LOCK
 K LRRB,LRSB,LRTREA,VA,XX,LAMIAUTO,LRCAPWA
 D @$S($$ISPIMS^BLRUTIL:"KVAR^VADPT",1:"KVAR^BLRDPT")
 K A,DD,GLB,LAYGO,LACAPMS,LRCDEF,LRCDEF0,LRCNT,LRCODE,LRCODEN,LRCSQ,LRCY,LRP,LRPN,LRQC,LRSSC,LRSSCX,LRSTD,LRSTR,LRT,LRTIME,LRTS,NODE,NODE0,ZTSK
 K %,LRTEC,%DT,%X,%Y,A,AGE,B,B1,B2,B3,DA,DFN,DIC,DIE,DOB,DR,I,II,J,K,LR1PASS,LR2ORMOR,LRAA,LRAAD,LRAADF,LRABVNT,LRACC,LRACCN,LRACNT,LRAD,LRADDF,LRAN,LRAO,LRBN,LRBUG,LRTEC
 K IR,IX,IXI,LRABCNT,LRLL,LRCNODE,LRD,LRDR,LRDRDX,LRINST,LRNAME,LRNTN,LRNX,LRODT,LRORGD,LRSUB,LRTEST,N,T1,X9,AA,LRDRD,LRCARD,LRDRNAME,LRALL,LRPHYN,LRCAPMS
 K LRCDT,LRCODE,LRCOMTAB,LRDCOM,LRDFN,LRDPF,LRDTR,LREAL,LREDIT,LREND,LRFLAG,LRFMT,LRI,LRIDT,LRIFN,LRINI,LRLL,LRLLOC,LRLLOC,LRMOVE,LRMICOM,LRMICOMS,LRMIDEF,LRMIOTH,LRODT
 K LRPTP,LRY,LRVT,LRTS,LRSCOM,LRSAME,LRCAPOK,LRFIFO,LRNB,LRTPT,LRBDUP
 K LRORG,LRORGCOM,LRORGN,LRPHY,LRRES,LRSAMP,LRSN,LRSPEC,LRSS,LRTCUP,LRTRAN,LRUNDO,LRWRD,LRWRDVEW,PNM,Q9,SEX,SSN,HRCN,TAB1,TAB2,TAB3,X,X1,X2,Y
 K ^TMP("BLRMIAUT",$J)
 Q
LRANX ;
 I '$D(^LAH(LRLL,1,LRIFN,0))#2 W !?7,"NO DATA FOR THIS NUMBER",! K ^LAH(LRLL,1,"C",LRAN,LRIFN) Q
 S LRAA=+$S($P(^LAH(LRLL,1,LRIFN,0),U,3):$P(^(0),U,3),1:LRAAD) I '$D(^LRO(68,LRAA,0)) D ACC Q:Y<1
 ;
DATE ;
 Q:'$D(^LRO(68,LRAA,0))#2  S Y(0)=^(0),LRADDF=$P(Y(0),U,2)
 S LRAD=+$S($P(^LAH(LRLL,1,LRIFN,0),U,4):$P(^(0),U,4),1:LRADDF) I $D(^LRO(68,LRAA,1,LRAD,1,LRAN)) G OK
 I '$D(^LRO(68,LRAA,1,Y)) W !!,$C(7)," THERE ARE NO ACCESSIONS FOR THIS DATE " S LRAN=0 Q
 ;
OK I '$D(^LRO(68,LRAA,1,LRAD,1,LRAN,0)) W !?7,"Not accessioned -- Would you like a list " S %=2 D YN^DICN G:%=1 SHOW Q
 S LRTCUP=$P(^LAH(LRLL,1,LRIFN,0),U)_";"_$P(^(0),U,2) D ^LAMIAUT1 LOCK  ;Lock is set in BB+4^LAMIAUT1
 ;
 D LABIHSMS^BLRRLMUM(LRAA,LRAD,LRAN)
 ;
 Q
 ;
LST ;
 W !!,$S(+X>0:" ( "_X_" ) DOES NOT EXIST ",1:"")," WOULD YOU LIKE A LIST " S %=1,LREND=0 D YN^DICN S:%<0 LREND=1 Q:%'=1
 ;
SHOW ;
 S LREND=0 F A=0:0 S A=$O(^LAH(LRLL,1,"C",A)) Q:LREND!(A<1)  D:$Y>(IOSL-4) WAIT Q:$D(X)&($E(X)="^")  W !?10,A,"  " I '$D(^LRO(68,LRAAD,1,LRADDF,1,A)) W "   NOT ACCESSIONED "
 Q
 ;
WAIT ; EP
 D ^XBFMK
 S DIR(0)="FO"
 S DIR("A")=$J("",5)_"PRESS RETURN FOR MORE "
 D ^DIR
 I +$G(DIRUT) S LREND=1 Q
 W @IOF
 Q
 ;
ACC ; EP
 K DIC,Y S DIC("B")=$S($D(LRAADF):LRAADF,1:""),DIC=68,DIC(0)="AQEZM",DIC("S")="I $P(^(0),U,2)=""MI""" D ^DIC Q:Y<1  S LRAA=+Y,LRAADF=$P(Y,U,2)
 Q
 ;
 ; Put Complete Date on Accession
PUTCOMPD ; EP
 NEW ERRS,FDA,LRDFN,LRIDT,ORG,RELDATE,ORGDATE
 S LRDFN=+$G(^LRO(68,LRAA,1,LRAD,1,LRAN,0)),LRIDT=$P($G(^(3)),"^",5)
 S (ORG,RELDATE)=0
 F  S ORG=$O(^LR(LRDFN,"MI",LRIDT,3,ORG))  Q:ORG<1  D
 . S ORGDATE=+$P($G(^LR(LRDFN,"MI",LRIDT,3,ORG,"IHSOBX")),"^",5)
 . S:ORGDATE>RELDATE RELDATE=ORGDATE
 ;
 Q:RELDATE<1
 ;
 S ^TMP("BLRMIAUT",$J,"PUTCOMPD",$H,LRAA,LRAD,LRAN)=RELDATE
 ;
 S FDA(68.02,LRAN_","_LRAD_","_LRAA_",",13)=RELDATE
 D UPDATE^DIE("S","FDA","ERRS")
 Q