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

LRAP.m

Go to the documentation of this file.
  1. LRAP ;DALOI/STAFF - ANATOMIC PATH UTILITY ;02/10/17 09:41
  1. ;;5.2;LAB SERVICE;**72,248,259,350,462,479**;Sep 27, 1994;Build 8
  1. ;
  1. ; Called by many routines in AP package
  1. D END,CK G:Y=-1 END D LRDICS G:Y B
  1. S DIC=68,DIC(0)="AEOQMZ"
  1. S DIC("A")="Select ANATOMIC PATHOLOGY SECTION: "
  1. ;
  1. ;
  1. S DIC("S")="I LRDICS[$P(^(0),U,2),$P(^(0),U,2)]"""",$D(^(3,""B"",DUZ(2)))"
  1. ;
  1. D ^DIC
  1. K DIC,LRDICS
  1. G:Y<1 END
  1. ;
  1. B ;
  1. S X=$P(Y,U,2) D ^LRUTL G:Y=-1 END
  1. Q
  1. ;
  1. ;
  1. AU ; log-in autopsy
  1. Q ;see routine LRAUAW
  1. ;
  1. ;
  1. CY ; log-in cytopath
  1. S (LRMD,LRSIT)=""
  1. ;
  1. D GETDEF
  1. ;
  1. S DR=".08///"_$S(LRLLOC["?":"UNKNOWN",1:LRLLOC)
  1. S DR=DR_";.07;D:X P^LRUA;.011//^S X=LRPRAC(1);.012;.1//NOW"
  1. S DR=DR_";S LRRC=X;.02;.99;S LRC(5)=X;1"
  1. S DR(2,63.902)=".01;S LR(63.902)=X;.06R//^S X=LRSPTOP(0);S:X LRSPTOP=X,LRSPTOP(0)=$P(^LAB(61,LRSPTOP,0),U)"
  1. S DR(2,63.902)=DR(2,63.902)_";.07R//^S X=LRSAMP(0);S:X LRSAMP=X,LRSAMP(0)=$P(^LAB(62,LRSAMP,0),U);S:'LRCAPA Y=""@2"";.02;@2"
  1. Q
  1. ;
  1. ;
  1. EM ; log-in electron microscopy
  1. S (LRMD,LRSIT)=""
  1. ;
  1. D GETDEF
  1. ;
  1. S DR=".08///"_$S(LRLLOC["?":"UNKNOWN",1:LRLLOC)
  1. S DR=DR_";.07;D:X P^LRUA;.011//^S X=LRPRAC(1);.012;.1//NOW;S LRRC=X"
  1. S DR=DR_";.02;.021;.99;S LRC(5)=X"
  1. S DR(2,63.202)=".01;.06R//^S X=LRSPTOP(0);S:X LRSPTOP=X,LRSPTOP(0)=$P(^LAB(61,LRSPTOP,0),U)"
  1. S DR(2,63.202)=DR(2,63.202)_";.07R//^S X=LRSAMP(0);S:X LRSAMP=X,LRSAMP(0)=$P(^LAB(62,LRSAMP,0),U)"
  1. Q
  1. ;
  1. ;
  1. SP ; log-in surg path
  1. S (LRMD,LRSIT)=""
  1. S LR("FS")=+$G(^LAB(69.9,1,11))
  1. ;
  1. D GETDEF
  1. ;
  1. S DR=".08///"_$S(LRLLOC["?":"UNKNOWN",1:LRLLOC)
  1. S DR=DR_";.07//^S X=LR(.07);D:X P^LRUA;.011//^S X=LRPRAC(1);.012;.1//NOW"
  1. S DR=DR_";S LRRC=X;.02;.99;S LRC(5)=X;S:'LR(""FS"") Y=""@1"";1.3;@1"
  1. S DR(2,63.812)=".01;.06R//^S X=LRSPTOP(0);S:X LRSPTOP=X,LRSPTOP(0)=$P(^LAB(61,LRSPTOP,0),U)"
  1. S DR(2,63.812)=DR(2,63.812)_";.07R//^S X=LRSAMP(0);S:X LRSAMP=X,LRSAMP(0)=$P(^LAB(62,LRSAMP,0),U)"
  1. ;
  1. S:LRABV'["SP" LR("FS")=""
  1. Q
  1. ;
  1. ;
  1. M ; edit path report parameters
  1. W !
  1. S DIC="^LRO(69.2,",DIC(0)="AEOQM"
  1. S DIC("S")="I ""AUCYEMSP""[$P(^(0),U,2)&($P(^(0),U,2)]"""")"
  1. D ^DIC K DIC G:Y<1 END S DA=+Y
  1. L +^LRO(69.2,DA):5 I '$T D G M
  1. . S MSG="This entry is locked by another user. Please try again later."
  1. . D EN^DDIOL(MSG,"","!!") K MSG,DIE,DR,DA
  1. . D END
  1. S DR="[LRAPHDR]",DIE="^LRO(69.2,"
  1. D ^DIE
  1. L -^LRO(69.2,DA)
  1. K DIE,DR,DA
  1. G M
  1. ;
  1. ;
  1. D ; Edit path descriptions
  1. W ! S DIC="^LAB(62.5,",DIC(0)="AEQLM"
  1. S DLAYGO=62.5,DIC("S")="I ""ESCI""[$P(^(0),U,4)"
  1. D ^DIC K DIC,DLAYGO G:X=""!(X[U) END S DA=+Y
  1. S DIE("NO^")="",DIE="^LAB(62.5,"
  1. L +^LAB(62.5,DA):5 I '$T D G D
  1. . S MSG="This entry is locked by another user. Please try again later."
  1. . D EN^DDIOL(MSG,"","!!") K MSG,DIE,DR,DA
  1. . D END
  1. S DR=".01;1;5;I ""ESCI""'[X W $C(7),!,""Enter E, S, C, or I"" S Y=5;10"
  1. D ^DIE
  1. L -^LAB(62.5,DA)
  1. K DIE,DR,DA
  1. G D
  1. ;
  1. ;
  1. V ; input transform DD(63.08,.11,0)
  1. I $D(LRH(2)),LRH(2)'=$E(X,1,3) K X W !,"Year received must be same as log-in year (",LRH(2)+1700,") "
  1. Q
  1. ;
  1. ;
  1. CK ;
  1. S Y=1
  1. I '$D(DUZ(2)) D Q
  1. . W !,$C(7)," Something is wrong..."
  1. . W !!,"I can't tell if you're really here..."
  1. . W !!,"Ask your IRM why you don't have a DUZ(2) variable defined!",!
  1. . S Y=-1
  1. ;
  1. S LRAA(4)=$P($G(^DIC(4,+DUZ(2),0)),U)
  1. I LRAA(4)="" D Q
  1. . W $C(7),!!,"I can't tell what DIVISION you are from. Contact your IRM "
  1. . S Y=-1
  1. Q
  1. ;
  1. ;
  1. LRDICS ;
  1. S Y=0,X=$G(LRDICS)
  1. I $L(X)=2,"SPCYEMAU"[X D C I Y K LRDICS Q
  1. S LRDICS=$S($L($G(LRDICS)):LRDICS,1:"SPCYEMAU")
  1. Q
  1. ;
  1. ;
  1. C ;
  1. I $D(LRDICS(2)) G CC
  1. S (A,B)=0
  1. F S A=$O(^LRO(68,A)) Q:'A I $P($G(^LRO(68,A,0)),"^",2)=LRDICS,$G(^(3,DUZ(2),0)) S B=B+1,B(B)=A
  1. I B=1 S Y=B(1)_U_$P(^LRO(68,B(1),0),U) K A,B Q
  1. I B>1,$D(LRDICS(1)) S Y=B(1)_U_$P(^LRO(68,B(1),0),U) K A,B
  1. Q
  1. ;
  1. ;
  1. CC ;
  1. S (A,B)=0
  1. F S A=$O(^LRO(68,A)) Q:'A I $P($G(^LRO(68,A,0)),"^",2)=LRDICS S B=B+1,B(B)=A Q
  1. I B=1 S Y=B(1)_U_$P(^LRO(68,B(1),0),U) K A,B
  1. Q
  1. ;
  1. ;
  1. END ;
  1. D V^LRU
  1. Q
  1. ;
  1. ;
  1. GETDEF ; Get defaults for specimen login
  1. ;
  1. ; Default values for collection sample/specimen and lab test
  1. ;
  1. N X
  1. ;
  1. ; Default value for collection sample
  1. S X=$$GET^XPAR("USR^DIV^PKG","LR ACCESSION DEFAULT COL SAMP","`"_LRAA,"B")
  1. S LRSAMP=$P(X,"^"),LRSAMP(0)=$P(X,"^",2)
  1. ;
  1. ; Default value for specimen(topography)
  1. S X=$$GET^XPAR("USR^DIV^PKG","LR ACCESSION DEFAULT SPECIMEN","`"_LRAA,"B")
  1. S LRSPTOP=$P(X,"^"),LRSPTOP(0)=$P(X,"^",2)
  1. ;
  1. ; Default value for laboratory test
  1. S X=$$GET^XPAR("USR^DIV^PKG","LR ACCESSION DEFAULT LAB TEST","`"_LRAA,"B")
  1. S LRTST=$P(X,"^"),LRTST(0)=$P(X,"^",2)
  1. Q