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

BWUPTNI.m

Go to the documentation of this file.
  1. BWUPTNI ;IHS/ANMC/MWR - UPLOAD: TABLE FROM CORNING;15-Feb-2003 22:13;PLS
  1. ;;2.0;WOMEN'S HEALTH;**8**;MAY 16, 1996
  1. ;;* MICHAEL REMILLARD, DDS * ALASKA NATIVE MEDICAL CENTER *
  1. ;; CONVERT AND STORE NICHOL'S ABBREVIATIONS TABLE.
  1. ;; CALLED BY BWUPLD.
  1. ;
  1. ;
  1. ;---> CONVERSION AND TRANSFER OF RESULTS TABLE FOR * CORNING LAB *.
  1. ;---> THIS ROUTINE IS CALLED BY ^BWUPLD. "CVT" CONVERTS CORNING LAB
  1. ;---> FIXED LENGTH ASCII TEXT LAB RESULTS ABBREVIATIONS AND TEXT
  1. ;---> INTO "^" DELIMITED VARIABLE LENGTH RECORDS.
  1. ;---> EACH CORNING RECORD CONTAINS AN ABBREVIATION, TEXT,
  1. ;---> AND A SEQUENCE NUMBER. MULTIPLE RECORDS RECORDS (OR LINES)
  1. ;---> FORMING ONE RESULT TEXT AND REPRESENTED BY THE SAME ABBREVIATION
  1. ;---> ARE GROUPED BY VIRTUE OF HAVING THE SAME ABBREVIATION, AND ARE
  1. ;---> ORDERED BY THEIR SEQUENCE NUMBERS.
  1. ;--->
  1. ;---> "TRANS" FORMATS AND TRANSFERS ENTRIES IN "BW UPLD TABLE TEMP
  1. ;---> (CORNING)" FILE INTO THE "BW UPLD TABLE PERM (ALL)" FILE.
  1. ;---> AS THE ENTRIES ARE TRANSFERED, RECORDS OF TEXT BELONGING TO
  1. ;---> THE SAME ABBREVIATION ARE GROUPED AND STORED IN A WP FIELD
  1. ;---> UNDER A SINGLE ENTRY FOR THAT ABBREVIATION (.01 FIELD).
  1. ;
  1. CVT(LINE,PIECE) ;EP
  1. ;---> COVERT FIXED LENGTH INTO "^" DELIMITED VARIABLE LENGTH.
  1. ;---> PIECE=0 SAYS DO NOT PIECE BWLINE WHEN RETURNED TO BWUPLD.
  1. I '$D(LINE) S LINE="" Q
  1. N Y,Z
  1. ;---> TRANSLATE ALL "^" INTO "`".
  1. S Y=$TR(LINE,"^","`")
  1. ;---> EXTRACT THE ABBREVIATION.
  1. S Z=$$TRIM($E(Y,1,6))
  1. ;---> EXTRACT THE SEQUENCE NUMBER.
  1. S Z=Z_U_$$TRIM2($E(Y,9,12))
  1. ;---> EXTRACT AND CONCATENATE THE TEXT.
  1. S LINE=Z_U_$$TRIM($E(Y,13,66)),PIECE=0
  1. S:$P(LINE,U,3)=""&($P(LINE,U)'="YYES") LINE=""
  1. Q
  1. ;
  1. TRIM(X) ;EP
  1. ;---> TRIM OFF ANY TRAILING SPACES.
  1. Q:'$D(X) ""
  1. N L S L=$L(X)
  1. F Q:$E(X,L)'=" " S L=L-1
  1. Q $E(X,1,L)
  1. ;
  1. TRIM2(X) ;EP
  1. ;---> TRIM OFF ANY LEADING SPACES.
  1. Q:'$D(X) ""
  1. N I,L S L=$L(X)
  1. F I=1:1 Q:$E(X,I)'=" "
  1. Q $E(X,I,L)
  1. ;
  1. ;
  1. TRANS ;EP
  1. ;---> * FOR CORNING LAB *
  1. ;---> GROUP AND COPY ENTRIES FROM "BW UPLD TABLE TEMP (CORNING)"
  1. ;---> FILE INTO THE "BW UPLD TABLE FINAL (CORNING)" FILE.
  1. D SETVARS^BWUTL5
  1. ;---> ZERO OUT PREVIOUS DATA IN TABLE FINAL FILE.
  1. D ZGBL^BWUTL8("^BWTFNI")
  1. W !?5,"Transferring to ""BW UPLD TABLE FINAL (CORNING)"" FILE..." H 1
  1. S BWABBV=0
  1. F S BWABBV=$O(^BWTNI("B",BWABBV)) Q:BWABBV="" D
  1. .;---> DIC LOOKUP/ADD OF NEW ABBREVIATION IN FINAL FILE.
  1. .D DIC^BWFMAN(9002086.85,"QML",.Y,"","","",BWABBV)
  1. .I Y<0 W ?10,"FAILED TO ADD/EDIT ",BWABBV,"!" Q
  1. .;---> NOW COPY TEMP TABLE ENTRIES INTO NEW FINAL TABLE ENTRY.
  1. .S (M,N)=0,Y=+Y
  1. .F S N=$O(^BWTNI("B",BWABBV,N)) Q:'N D
  1. ..S M=M+1,^BWTFNI(Y,1,M,0)=$P(^BWTNI(N,0),U,3)
  1. .S ^BWTFNI(Y,1,0)="^^"_M_U_M_U_DT
  1. Q