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

AZLPTLAB.m

Go to the documentation of this file.
  1. AZLPTLAB ;PROGRAM TO LOAD LAB CODES TO GLOBAL FILE [ 12/10/85 1:25 PM ]
  1. ;READS TAPE FROM LAB LIBRARIAN FILE TBLEF04 (DPSC,DFM)
  1. D INIT
  1. C UDEV
  1. O UDEV:("EFU":81:81)
  1. U UDEV W *5
  1. ;READ TO SKIP TAPE MARK
  1. U UDEV R REC
  1. F I=0:0 D RD1 Q:REC=""
  1. U 0 W !!,"E N D O F B U I L D "
  1. U 0 W !,"NUMBER OF RECORDS READ= ",RI
  1. U 0 W !,"BEGINING COUNT-RECORDS IN GLOBAL",DFN
  1. U 0 W !,"RECORDS ADDED TO GLOBAL",RTG
  1. C UDEV
  1. W !!,"TOTAL RECORDS IN GLOBAL= ",DA
  1. I NEXT>0 W !,"ERRORS HAVE OCCURED, D ^%GL FOR ^DFMELAB"
  1. K F1,F2,BC1,BC2,EC1,EC2,RI,REC,UDEV,DFN,RG,GCD,DG,RTG,NEXT
  1. Q
  1. RD1 U UDEV R REC
  1. S RI=RI+1
  1. Q:REC=""
  1. I $E(REC,3,4)'="DC" G RD1
  1. S V1=$E(REC,BC1,EC1)
  1. U 0 W !,"CURRENT TAPE CODE",V2
  1. S V2=$E(REC,BC2,EC2)
  1. ESPCS ; ELIMINATE TRAILING SPACES AND LEADING ZEROES
  1. F I=$L(V1):-1:1 I $E(V1,I)'=" " S V1=$E(V1,1,I) S:V1=" " V1="" Q
  1. I V2<GCD G WGLOBL
  1. I V2=GCD U 0 W !,"SKIP CODE ALREADY ON FILE",GCD G RD1
  1. F I2=0:0 D RDG Q:GCD'<V2
  1. I V2=GCD U 0 W !,"SKIP CODE ALREADY ON FILE",GCD G RD1
  1. WGLOBL ; ADD NEW CODE TO GLOBAL
  1. S DA=DA+1,RTG=RTG+1
  1. S DR=F1_V1_F2_V2
  1. D ^DIE
  1. D:$D(Y)'=0 ERROR
  1. U 0 W !,"RECORD INSERTED ",$E(REC,8,42)
  1. Q
  1. RDG ;READ NEXT GLOBAL RECORD
  1. I RG>DFN S GCD=999999 Q
  1. S RG=RG+1,GCD=$P(^AUTTLAB(RG,0),"^",2)
  1. U 0 W !,"CURRENT GLOBAL CODE",GCD
  1. Q
  1. ERROR ; THIS ROUTINE WILL LOAD AN ERROR GLOBAL
  1. S NEXT=NEXT+1,^DFMELAB(NEXT)=REC
  1. Q
  1. INIT ;ROUTINE TO SET UP VARIABLES
  1. K F1,F2,F3,F4,BC1,BC2,BC3,BC4,EC1,EC2,EC3,RI,REC,NEXT,UDEV,DFN,DG,GCD,RTG,^DFMELAB
  1. S BC1=13,EC1=42,BC2=8,EC2=12
  1. S F1=".01///",F2=";.02///"
  1. S DFN=$P(^AUTTLAB(0),"^",4),DG=0,RG=1,RTG=0,GCD="",RI=0,DA=DFN,NEXT=0
  1. S UDEV=48
  1. S DIE="^AUTTLAB("
  1. Q