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

LRRS12.m

Go to the documentation of this file.
  1. LRRS12 ;SLC/DCM,BA/DALOI/FHS/DRH - INTERIM REPORT BY LOCATION (MANUAL QUEUE) ;2/19/91 11:39
  1. ;;5.2T9;LR;**1018**;Nov 17, 2004
  1. ;;5.2;LAB SERVICE;**1,283**;Sep 27, 1994
  1. ;from option LRRS
  1. BEGIN ;
  1. K LRLLOC
  1. S LRPRTPG=0
  1. D:'$D(LRPARAM) ^LRPARAM
  1. G:$G(LREND) ^LRRK Q:$G(LREND)
  1. S:'$D(LRSINGLE) LRSINGLE=0
  1. ASKPG I 'LRPRTPG D
  1. .S DIR(0)="Y",DIR("A")="Print address page",DIR("B")="NO"
  1. .D ^DIR K DIR
  1. .I Y S LRPRTPG=1
  1. D LOC
  1. END ;
  1. D ^LRRK
  1. K LRLOCXY,LRX1,LRY1,OK,LRX13
  1. Q
  1. LOC ;
  1. K LRLLOC
  1. S (LREND,LRSTOP)=0
  1. S (LRONETST,LRONESPC,LRLLOC,LRFLOC)=""
  1. S LRELOC="ZZZZZZZZ"
  1. S LRLAB=$S($D(LRLABKY):1,1:0)
  1. K DTOUT,DUOUT
  1. S LREND=0
  1. D DTRANG Q:$G(LREND)
  1. D CHKLOC Q:$G(LREND)
  1. Q
  1. QUIT ;
  1. S LREND=1
  1. Q
  1. DTRANG ;
  1. K LRX13
  1. S LREDT="T-7"
  1. D ^LRWU3
  1. S:($D(DUOUT))!($D(DTOUT)) LREND=1 Q:LREND
  1. ;I LRSDT=LREDT S X1=LREDT,X2=1 D C^%DTC S LREDT=X
  1. S LRSDT=LRSDT-.5
  1. I LREDT=LRSDT S LRX13=1
  1. S LRSWTCH=LRSDT,LRSDT=LREDT,LREDT=LRSWTCH K LRSWTCH
  1. ;I LRSDT=LREDT S X1=LREDT,X2=1 D C^%DTC S LREDT=X
  1. S LRODT=LRSDT
  1. S LRDT=LRODT,LRDTXX=LRODT
  1. S LRBDT=LRODT
  1. S LRSD=LRODT,LRLAST=LREDT
  1. ;S X1=LRLAST,X2=1 D C^%DTC S LRLAST=X
  1. DTSINGL ;
  1. Q
  1. ;EDITED 1-18-94
  1. CHKLOC ;
  1. K LRNGCHK
  1. D CHOOSE
  1. Q:$G(LREND)
  1. D @$S(LRLOC="S":"SELECT",LRLOC="R":"RANGE",1:"QUE")
  1. Q
  1. CHOOSE ;
  1. N Y
  1. S LREND=0
  1. K DIR
  1. S DIR("A")="Please select one of the following"
  1. S DIR(0)="S^S:Selected Locations;R:A Range of locations;A:All locations"
  1. S DIR("?")="Enter the letter that cooresponds to what you want."
  1. D ^DIR
  1. S:($D(DUOUT))!($D(DTOUT)) LREND=1 Q:LREND
  1. S LRLOC=Y
  1. Q
  1. QUER ;
  1. ;D QUE
  1. Q
  1. NODATA ;
  1. S LRNOD=1
  1. W !,"No Reports for ",$$DTF^LRAFUNC1(LRODT),! Q
  1. Q
  1. DIS ;
  1. N I
  1. F I=1:1:LRCNT W !,I,?4,LRLOCX(I) S I=I+1 Q:I>LRCNT!($G(LREND)) D
  1. . W:$D(LRLOCX(I)) ?39," ",I,?44,LRLOCX(I)
  1. W ! Q
  1. Q
  1. Q
  1. RANGE ;
  1. S (DTOUT,DUOUT)=""
  1. K LRLLOC1,LRLLOC
  1. S LRNGCHK=1
  1. N Y
  1. K DIC
  1. S DIC=44,DIC(0)="AEMQZ"
  1. S DIC("A")="Select Starting Location: "
  1. D ^DIC
  1. I $D(DUOUT)!($D(DTOUT))!(Y=-1) S LREND=1 Q:LREND
  1. S:Y'=-1 LRY7=$L($P(Y(0),U))
  1. I $D(LRY7) S LRY8=$E($P(Y(0),U),LRY7,LRY7) D
  1. . S LRY8=$A(LRY8)
  1. . S LRY8=$C(LRY8-1)
  1. . S LRY7=LRY7-1
  1. . S LRFLOC=$E($P(Y,"^",2),1,LRY7)_LRY8
  1. I '$D(LRFLOC) G RANGE
  1. S DIC("A")="Select Ending Location: "
  1. S (DTOUT,DUOUT)=""
  1. ENDING D ^DIC
  1. I $D(DUOUT)!($D(DTOUT)) S LREND=1 Q:LREND
  1. I Y=-1 G END
  1. S:Y'=-1 LRELOC=$P(Y(0),U)_"Z"
  1. K LRY7,LRY8,LRLOCXY
  1. I +LRFLOC=0&(+LRELOC=0)&($A($E(LRFLOC,1,1))>$A($E(LRELOC,1,1))) D
  1. . S LX8=1 D HELP QUIT
  1. I +LRFLOC>0&(+LRELOC>0)&(LRFLOC>LRELOC) S LX9=1 D HELP QUIT
  1. S LRX1=LRFLOC
  1. F S LRX1=$O(^SC("B",LRX1)) Q:LRX1=""!(LRX1]LRELOC) D
  1. . S LRY1=$O(^SC("B",LRX1,"0")) S LRY1=$P(^SC(LRY1,0),U,2) Q:LRY1=""
  1. . S LRLLOC(LRY1)=LRY1
  1. S OK=0,LRODT=LRDTXX-.5
  1. D QUE
  1. QUIT
  1. SELECT ;
  1. K ^TMP("LR",$J)
  1. S LRSCRN=24
  1. N LRNOD,LRTAC
  1. S LRLLOC=""
  1. S LRDT=LRODT
  1. D READ
  1. S LRODT=LRDT D QUE
  1. Q
  1. READ ;
  1. S OK=0
  1. K DIC
  1. S DIC=44,DIC(0)="QAEZNM"
  1. S DIC("S")="I $L($P(^(0),U,2))"
  1. S X1=LRODT,X2=-1 D C^%DTC S LRODT=X
  1. D ^DIC
  1. Q:Y<0
  1. S Y1=$P(Y(0),U,2)
  1. S LRLLOC(Y1)=Y1
  1. K DIC
  1. G READ
  1. Q
  1. HELP ;
  1. W !!,"I cannot search a range of locations that are not in"
  1. W " sequential order"
  1. I $D(LX8) W !,"Please enter the starting and ending locations in" D
  1. . W " ALPHABETICAL order" K LX8
  1. I $D(LX9) W !,"Please enter the starting and ending locations in" D
  1. . W " NUMERICAL order" K LX9
  1. W !
  1. G RANGE
  1. Q
  1. QUE S %ZIS="MQ",ZTSAVE("^TMP(""LR"",$J,")="",ZTRTN="DQ^LRRS13" D IO^LRWU
  1. Q