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

BTIUDDL.m

Go to the documentation of this file.
  1. BTIUDDL ; IHS/ITSC/LJF - LIST DOC DEFINITIONS ;
  1. ;;1.0;TEXT INTEGRATION UTILITIES;;NOV 04, 2004
  1. ;
  1. EN ; -- main entry point for BTIU LIST DOC DEFS
  1. D EN^VALM("BTIU LIST DOC DEFS")
  1. Q
  1. ;
  1. HDR ; -- header code
  1. S VALMHDR(1)=$$SP(10)_"CLINICAL DOCUMENTS HIERARCHY AT "_$$SITE
  1. Q
  1. ;
  1. INIT ; -- init variables and list array
  1. D MSG^BTIUU("COMPILING LIST OF DOCUMENTS TITLES...",2,0,0)
  1. NEW TIUCNT,TIULVL K ^TMP("BTIUDDL",$J)
  1. S (TIUCNT,TIULVL)=0
  1. D DOCNM(38),ITEMS(38),OBJECTS
  1. S VALMCNT=TIUCNT
  1. S VALMSG=$$VALMSG^BTIUU
  1. Q
  1. ;
  1. DOCNM(TIUN) ; -- sets up display line for item
  1. NEW TIUZ,TIUTM,X
  1. D ENP^XBDIQ1(8925.1,TIUN,".01:.04;.07","TIUZ(","I")
  1. I TIUZ(.04,"I")="CO"!(TIUZ(.04,"I")="O") Q ;components & objects
  1. I TIUZ(.04,"I")'="DOC",'$O(^TIU(8925.1,TIUN,10,0)) Q ;not used
  1. I TIUZ(.07)'="ACTIVE" Q ;must be active
  1. S LINE=$$PAD($$SP(TIULVL)_$E($$NAME,1,50),55)_$$SP(5)
  1. S LINE=LINE_$S($O(^TIU(8925.1,TIUN,"HEAD",0)):"YES",1:" ") ;okay to dictate
  1. D:(TIUZ(.04,"I")'="DOC") SET("") D:(TIUZ(.04,"I")="CL") SET("")
  1. D SET(LINE)
  1. Q
  1. ;
  1. ITEMS(TIUN) ; -- finds all items tied to document definition
  1. NEW TIUTM,TIUX,TIUZZ,Y
  1. S TIULVL=$G(TIULVL)+1 ;increment level
  1. S TIUTM=0 F S TIUTM=$O(^TIU(8925.1,TIUN,10,TIUTM)) Q:'TIUTM D
  1. . S TIUX=+^TIU(8925.1,TIUN,10,TIUTM,0) Q:'TIUX
  1. . S TIUZZ($$GET1^DIQ(8925.1,TIUX,.01))=TIUX ;put in alpha order
  1. ;
  1. S TIUX=0 F S TIUX=$O(TIUZZ(TIUX)) Q:TIUX="" D
  1. . S Y=TIUZZ(TIUX) D DOCNM(Y),ITEMS(Y) ;process this level
  1. S TIULVL=TIULVL-1 ;return to previous level
  1. Q
  1. ;
  1. OBJECTS ; -- list all available objects
  1. Q
  1. ;
  1. HELP ; -- help code
  1. S X="?" D DISP^XQORM1 W !!
  1. Q
  1. ;
  1. EXIT ; -- exit code
  1. Q
  1. ;
  1. EXPND ; -- expand code
  1. Q
  1. ;
  1. PAD(DATA,LENGTH) ; -- SUBRTN to pad length of data
  1. Q $E(DATA_$$REPEAT^XLFSTR(" ",LENGTH),1,LENGTH)
  1. ;
  1. SP(NUM) ; -- SUBRTN to pad spaces
  1. Q $$PAD(" ",NUM)
  1. ;
  1. SET(LINE) ; -- SUBRTN to set data line into ^tmp
  1. S TIUCNT=TIUCNT+1
  1. S ^TMP("BTIUDDL",$J,TIUCNT,0)=LINE
  1. S ^TMP("BTIUDDL",$J,"IDX",TIUCNT,TIUCNT)=""
  1. Q
  1. ;
  1. SITE() ; -- returns site name
  1. Q $$GET1^DIQ(4,+DUZ(2),.01)
  1. ;
  1. NAME() ; -- returns name
  1. Q TIUZ(.01)_$S(TIUZ(.04,"I")="CL":" CLASS",TIUZ(.04,"I")="DC":" DOCUMENT CLASS",1:"")