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

BWUPRNI.m

Go to the documentation of this file.
  1. BWUPRNI ;IHS/ANMC/MWR - UPLOAD: RESULTS 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. ;; CONVERTS NICHOL'S LAB RESULTS FROM FIXED TO VARIABLE, THEN FORMATS
  1. ;; REPORTS AND PLACES THEM IN BW PROCEDURE FILE (WP) WITH PATIENTS.
  1. ;
  1. ;---> * FOR CORNING LAB *
  1. ;
  1. ;---> CONVERSION AND TRANSFER OF RESULTS FOR * CORNING LAB *.
  1. ;---> THIS ROUTINE IS CALLED BY ^BWUPLD. "CVT" CONVERTS CORNING LAB
  1. ;---> FIXED LENGTH ASCII TEXT LAB RESULTS ABBREVIATIONS INTO VARIABLE
  1. ;---> RECORDS AND ADDS THEM TO THE "BW UPLD RESULTS TEMP (CORNING)"
  1. ;---> FILE.
  1. ;--->
  1. ;---> "TRANS" FORMATS AND TRANSFERS ENTRIES FROM THE "BW UPLD RESULTS
  1. ;---> TEMP (CORNING)" FILE INTO THE WP FIELD OF THE "BW PROCEDURE"
  1. ;---> FILE. MATCHING IS DONE ON THE BASIS OF THE ACCESSION#, THE "B"
  1. ;---> CROSSREFERENCE AND THEN CHART# FOR IHS, SSN# FOR NON-IHS.
  1. ;
  1. CVT(LINE,PIECE) ;EP
  1. ;---> COVERT FIXED LENGTH INTO "^" DELIMITED VARIABLE LENGTH.
  1. ;---> PIECE=1 SAYS PIECE BWLINE WHEN RETURNED TO BWUPLD.
  1. N Y,Z
  1. ;---> TRANSLATE ALL "^" INTO "`".
  1. S Y=$TR(LINE,"^","`")
  1. ;---> EXTRACT THE ACCESSION#, TRIM OFF ANY TRAILING SPACES.
  1. S Z=$$TRIM($E(Y,106,117))
  1. ;---> IF ACCESSION#="", SET ACC#=NICHOL'S REQUISITION#.
  1. S:Z']"" Z=$$TRIM($E(Y,47,62))
  1. ;---> EXTRACT THE PATIENT NAME, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,9,32))
  1. ;---> EXTRACT THE PATIENT SSN/ACCT#, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,33,46))
  1. ;---> EXTRACT THE REQUISITION#, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,47,62))
  1. ;---> EXTRACT THE DATE OF BIRTH.
  1. S Z=Z_U_$$TRIM($E(Y,63,72))
  1. ;---> EXTRACT THE AGE.
  1. S Z=Z_U_$$TRIM($E(Y,73,76))
  1. ;---> EXTRACT THE HOSPITAL ID#/CHART#, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,77,88))
  1. ;---> EXTRACT THE REFERRING PHYSICIAN, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,89,105))
  1. ;---> EXTRACT THE ACCOUNT#, TRIM TRAILING AND LEADING SPACES.
  1. S Z=Z_U_$$TRIM2($$TRIM($E(Y,1,8)))
  1. ;---> EXTRACT THE TEST NAME, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,118,139))
  1. ;---> EXTRACT THE COLLECTION DATE.
  1. S Z=Z_U_$$TRIM($E(Y,140,147))
  1. ;---> EXTRACT THE LOCATION.
  1. S Z=Z_U_$$TRIM($E(Y,148,153))
  1. ;---> EXTRACT THE SPECIMEN SOURCE, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,154,178))
  1. ;---> EXTRACT THE SPECIMEN ADEQUACY, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,179,203))
  1. ;---> EXTRACT THE GENERAL CATEGORIZATION, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,204,228))
  1. ;---> EXTRACT THE DESCRIPTIVE DIAGNOSIS, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,229,253))
  1. ;---> EXTRACT THE SQUAMOUS CELLS, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,254,278))
  1. ;---> EXTRACT THE GLANDULAR CELLS, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,279,303))
  1. ;---> EXTRACT THE REACTIVE/REPAIRATIVE, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,304,328))
  1. ;---> EXTRACT THE INFECTION, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,329,353))
  1. ;---> EXTRACT THE INFECTION NOTATION, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,354,378))
  1. ;---> EXTRACT THE HORMONAL EVALUATION, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,379,403))
  1. ;---> EXTRACT THE HORMONAL EVALUATION NOTATION, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,404,428))
  1. ;---> EXTRACT THE COMMENT, TRIM TRAILING SPACES.
  1. S Z=Z_U_$$TRIM($E(Y,429,453))
  1. ;---> EXTRACT THE REVIEWER, TRIM TRAILING SPACES.
  1. S LINE=Z_U_$$TRIM($E(Y,454,478)),PIECE=1
  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. ;---> "TRANS" FORMATS AND TRANSFERS ENTRIES FROM THE "BW UPLD RESULTS
  1. ;---> TEMP (CORNING)" FILE INTO THE WP FIELD OF THE "BW PROCEDURE"
  1. ;---> FILE. MATCHING IS DONE ON THE BASIS OF THE ACCESSION#, THE "B"
  1. ;---> CROSSREFERENCE.
  1. ;---> BWY WILL EQUAL THE IEN OF THE PROCEDURE, FILE 9002086.1.
  1. ;---> BWYY WILL EQUAL THE IEN OF THE LAB RESULT, FILE 9002086.82.
  1. N BWAGENCY,BWDFN,BWHRCN,BWSSN,BWY,BWYY
  1. S (BWMATCH,BWNOMAT)=0,BWTAB=" "
  1. W !?5,"Transferring to ""BW PROCEDURE"" FILE..." H 1
  1. S BWYY=0
  1. F S BWYY=$O(^BWRNI(BWYY)) Q:'BWYY D
  1. .;---> GET ACCESSION#, CHART#, AND SSN# FROM LAB RESULT.
  1. .S BWACC=$P(^BWRNI(BWYY,0),U),BWHRCN=$P(^(0),U,7),BWSSN=$P(^(0),U,3)
  1. .;
  1. .;---> GET IEN OF THE PROCEDURE, FILE 9002086.1, FOR THIS ACCESSION#.
  1. .S BWY=$O(^BWPCD("B",BWACC,0))
  1. .;
  1. .;---> XREF FAILED TO PRODUCE IEN IN PROCEDURE FILE (^BWPCD).
  1. .I BWY="" D NOMATCH^BWUPTRAN(BWYY,1) Q
  1. .I '$D(^BWPCD(BWY,0)) D NOMATCH^BWUPTRAN(BWYY,1) Q
  1. .;
  1. .;---> GET DFN AND AGENCY (IHS, STATE, OR VA).
  1. .S BWDFN=$P(^BWPCD(BWY,0),U,2)
  1. .S BWAGENCY=$$AGENCY^BWUTL5(DUZ(2))
  1. .;
  1. .;---> IF AGENCY IS IHS AND THE CHART# FOR THIS RESULT DOES NOT
  1. .;---> MATCH CHART# FOR THIS PATIENT, STORE RESULT AS UNMATCHED.
  1. .I BWAGENCY="i",$$HRCN1^BWUTL1(BWDFN,DUZ(2))'=+BWHRCN D Q
  1. ..D NOMATCH^BWUPTRAN(BWYY,3)
  1. .;
  1. .;---> FOR NON-IHS AGENCY, IF SSN# FOR THIS RESULT DOES NOT
  1. .;---> MATCH SSN# FOR THIS PATIENT, STORE RESULT AS UNMATCHED.
  1. .I BWAGENCY'="i",$$SSN^BWUTL1(BWDFN)'=+BWSSN D Q
  1. ..D NOMATCH^BWUPTRAN(BWYY,6)
  1. .;
  1. .;---> TEXT ALREADY STORED FOR THIS IEN IN PROCEDURE FILE (^BWPCD).
  1. .I $O(^BWPCD(BWY,1,0)) D NOMATCH^BWUPTRAN(BWYY,2) Q
  1. .;
  1. .;---> TRANSFER THIS LAB RESULT INTO IT'S PROCEDURE.
  1. .D TRANSFER^BWUPTRAN(BWYY,BWY)
  1. .;
  1. W !?5,"Number of results successfully matched: ",BWMATCH
  1. W !?5,"Number of results NOT matched.........: ",BWNOMAT,!
  1. Q