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

LEXMUCUM.m

Go to the documentation of this file.
  1. LEXMUCUM ;SLC/PKR - UCUM APIs. ;09/04/2015
  1. ;;2.0;LEXICON UTILITY;**102**;Sep 23, 1996;Build 20
  1. ;
  1. ;==================
  1. UCUMCODE(IEN) ;Given an IEN return the UCUM CODE.
  1. N UCUMCODE
  1. S UCUMCODE=$P($G(^LEX(757.5,IEN,1)),U,1)
  1. I UCUMCODE="" Q "{unit not defined}^The entry with IEN "_IEN_" does not exist."
  1. Q $TR(UCUMCODE,"10*","10^")
  1. ;
  1. ;==================
  1. UCUMDATA(IDEN,UCUMDATA) ;Given an identifier, which can be an IEN, a
  1. ;Description, or a UCUM code return all the fields for that entry.
  1. N IEN,IENL,UCUMCODE,UPIDEN
  1. I IDEN=+IDEN S IENL(+IDEN)=""
  1. S UPIDEN=$$UP^XLFSTR(IDEN)
  1. I '$D(IENL) S IEN=0 F S IEN=+$O(^LEX(757.5,"B",IDEN,IEN)) Q:IEN=0 S IENL(IEN)=""
  1. I '$D(IENL) S IEN=0 F S IEN=+$O(^LEX(757.5,"UPB",UPIDEN,IEN)) Q:IEN=0 S IENL(IEN)=""
  1. I '$D(IENL) S IEN=0 F S IEN=+$O(^LEX(757.5,"C",IDEN,IEN)) Q:IEN=0 S IENL(IEN)=""
  1. I '$D(IENL) S IEN=0 F S IEN=+$O(^LEX(757.5,"UPC",UPIDEN,IEN)) Q:IEN=0 S IENL(IEN)=""
  1. I '$D(IENL) S UCUMDATA("ERROR")="The entry identified by "_IDEN_" does not exist." Q
  1. S IEN=""
  1. F S IEN=$O(IENL(IEN)) Q:IEN="" D
  1. . S UCUMDATA(IEN,"IEN")=IEN
  1. . I '$D(^LEX(757.5,IEN)) S UCUMDATA(IEN,"ERROR")="The entry identified by "_IDEN_" does not exist." Q
  1. . S UCUMDATA(IEN,"DESCRIPTION")=^LEX(757.5,IEN,0)
  1. . S UCUMCODE=$P(^LEX(757.5,IEN,1),U,1)
  1. . S UCUMCODE=$TR(UCUMCODE,"10*","10^")
  1. . S UCUMDATA(IEN,"UCUM CODE")=UCUMCODE
  1. . S UCUMDATA(IEN,"ROW")=$P(^LEX(757.5,IEN,1),U,2)
  1. . S UCUMDATA(IEN,"COMMENTS")=$G(^LEX(757.5,IEN,2))
  1. Q
  1. ;
  1. ;==================
  1. VERSION(VERDATA) ;Return the version information.
  1. S VERDATA("NAME")="Table of Example UCUM Codes for Electronic Messaging"
  1. S VERDATA("VERSION")="Version 1.3"
  1. S VERDATA("DATE")="09/26/2014"
  1. Q
  1. ;