Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  Global Variables Directly Accessed |  Label References |  Local Variables |  Marked Items  | All
Print Page as PDF
Routine: TIUMOBJLM

Package: Text Integration Utility

Routine: TIUMOBJLM


Information

TIUMOBJLM ;XAN/AJB - MEDICATION OBJECT LIST MANAGER ;Aug 29, 2025@09:15:27

Source Information

Source file <TIUMOBJLM.m>

Call Graph

Call Graph

Call Graph Total: 16

Package Total Call Graph
Kernel 6 HOME^%ZIS  (CLEAN,CLEAR,IOXY,PREP)^XGF  ($$FMTE,$$NOW)^XLFDT  ($$CJ,$$REPLACE,$$RJ)^XLFSTR  DISP^XQORM1  EN^XUTMDEVQ  
List Manager 3 EN^VALM  ($$SETFLD,CLEAR,FULL)^VALM1  (CLEAN,SET)^VALM10  
Text Integration Utility 3 ($$CHKNAME,$$CROBJ)^TIUCROBJ  (MEDFIX,MEDREC,README,TIUDATE,UPDTMR)^TIUMOBJ2  (CLS,HKEYS,IOSL,LMHDR)^TIUMOBJLM  
VA FileMan 3 ^DIC  ^DIM  ^DIR  
Toolkit 1 $$GET^XPAR  

Caller Graph

Legends:

Legend of Colors

Package Component Superscript legend

action A extended action Ea event driver Ed subscriber Su protocol O limited protocol LP run routine RR broker B edit E server Se print P screenman SM inquire I

Caller Graph

Caller Graph Total: 10

Package Total Caller Graph
Text Integration Utility 9 TIUMOBJ MENU  TIUMOBJ CREATE OBJECT  TIUMOBJ DISPLAY OBJECT  TIUMOBJ MANAGER  TIUMOBJ MED REC OBJECT  TIUMOBJ README  TIUMOBJ UTILITY  TIUMOBJ2  
TIUMOBJLM  
Kernel 1 ^ORD(101  

Entry Points

Name Comments DBIA/ICR reference
ASK(ACT) ; list manager default entry for numeric input
EN ; main entry point
LMEXIT ; exit
LMHELP(VALMANS) ; help
LMHDR ; header
LMINIT(VAR,VALMCNT) ; build list
HKEYS ; hidden menu keys
CROBJ ; create object
EX
CHGSTAT(IEN,N) ;
DISPLAY(IEN) ; detailed display
D2 ; redisplay
MEDREC ; med rec auto fix
README ;
TEST(IEN) ; test medication object
UPDATE(IEN) ; update medication object
EXU
CLS
DHDR(N) ; object detailed display
DPAR(P) ; display parameter values
EXTRACT(IEN,N,P) ; parameters from method
; returns N(0),N(9) nodes
; P(1)=patient,P(2)=return loc,P(3)=csv of med parameters
; P("Name")=object name
; P("Method")=object method
; P("Parameters")=complete med parameters only
FMR(DIR,PRM,DEF,HLP,SCR) ; FM reader, PRM format: <#>Prompt to auto indent #
GETPT() ; prompt user for patient
HELP(COL,ROW,MSG) ; general help
IOSL
OASK(COL,ROW) ; prompt user for object name
PARAMETERS ;A^D^M^O^SC^SU^MR; medication object parameters
PASK(P,PS) ; prompt user for medication object parameters, ps=parameter start
; returns P(<parameter>)=individual parameter value
; P=csv of selected parameters
POBJ(IEN,PARS) ; print object
REBLD ; rebuild list & header
SETSTR(S,V,X,L)
UP(X)
VALIDM(X) ; validate object method
A ;;2
D ;;1
M ;;7
O ;;1
SC ;;2
SU ;;1
MR ;;1

External References

Name Field # of Occurrence
HOME^%ZIS EN+2
^DIC GETPT+2
^DIM VALIDM+1
^DIR FMR+9
$$CHKNAME^TIUCROBJ OASK+4
$$CROBJ^TIUCROBJ CROBJ+14
MEDFIX^TIUMOBJ2 MEDREC+3
MEDREC^TIUMOBJ2 CROBJ+2
README^TIUMOBJ2 README+1
TIUDATE^TIUMOBJ2 CROBJ+5
UPDTMR^TIUMOBJ2 UPDATE+7
CLS^TIUMOBJLM LMHELP+2, LMHELP+11
HKEYS^TIUMOBJLM LMHELP+11
IOSL^TIUMOBJLM LMHELP+11
LMHDR^TIUMOBJLM LMHELP+11
EN^VALM EN+4
$$SETFLD^VALM1 LMINIT+4
CLEAR^VALM1 CLS
FULL^VALM1 ASK+1
CLEAN^VALM10 REBLD+1
SET^VALM10 LMINIT+5
CLEAN^XGF LMEXIT+1
CLEAR^XGF CROBJ+12, CROBJ+15, MEDREC+12, HELP+4, OASK+2
IOXY^XGF CROBJ+7, CROBJ+9, CROBJ+12, CROBJ+15, CHGSTAT+1, D2+9, D2+11, MEDREC+11, MEDREC+12, MEDREC+20
, HELP+1, HELP+3, HELP+5, OASK+3, OASK+4, PASK+6, PASK+7
PREP^XGF EN+2
$$FMTE^XLFDT MEDREC+5, UPDATE+2
$$NOW^XLFDT MEDREC+5, UPDATE+2
$$CJ^XLFSTR LMHDR+1, LMHDR+2, CROBJ+4, MEDREC+1, MEDREC+8, UPDATE+9
$$REPLACE^XLFSTR MEDREC+18, UPDATE+8, UPDATE+11, UPDATE+12, EXTRACT+13, EXTRACT+15
$$RJ^XLFSTR MEDREC+7, UPDATE+9
$$GET^XPAR LMHDR+2
DISP^XQORM1 HKEYS+3
EN^XUTMDEVQ D2+11

Interaction Calls

Name Line Occurrences
Function Call: WRITE
  • Prompt: "Selectable Actions:",!!,HV1_"Create Medication Object:"_HV0_" Prompts user for medication parameters and creates",!," a new object without requiring programmer access.",!!
  • Line Location: LMHELP+3
Function Call: WRITE
  • Prompt: HV1_"Med Rec Object Auto Fix:"_HV0_" Prompts user to automatically set the new",!," Med Rec/TIUDATE parameter for only Med Rec Objects.",!
  • Line Location: LMHELP+4
Function Call: WRITE
  • Prompt: " After entering 'YES', prompts for desired parameter",!," value and confirmation to begin update.",!!
  • Line Location: LMHELP+5
Function Call: WRITE
  • Prompt: HV1_"Detailed Display/Edit:"_HV0_" Displays object information and allows user to update",!," the status, print the details, test the output, and",!
  • Line Location: LMHELP+6
Function Call: WRITE
  • Prompt: " update the medication specific parameters.",!!,HV1_"Parameter TIUMOBJ On/Off:"_HV0_" Toggles the TIUMOBJ STATUS parameter On/Off.",!
  • Line Location: LMHELP+7
Function Call: WRITE
  • Prompt: " This alters the behavior of objects to use the ",!," original TIULMED* routines [OFF] or the updated",!
  • Line Location: LMHELP+8
Function Call: WRITE
  • Prompt: " TIUMOBJ routine [ON]. 'Indication' will only be",!," shown when the paremter value is set to ON.",!!
  • Line Location: LMHELP+9
Function Call: WRITE
  • Prompt: HV1_"Readme.txt:"_HV0_" Medication Objects 101 + Developer's Notes."
  • Line Location: LMHELP+10
Function Call: WRITE
  • Prompt: !,"The following actions are also available:"
  • Line Location: HKEYS+1
Function Call: WRITE
  • Prompt: UL1_$$CJ^XLFSTR("Medication Object Creator",IOM)_UL0,!!
  • Line Location: CROBJ+4
Function Call: WRITE
  • Prompt: "Selected Parameter Values",!,"=========================",!
  • Line Location: CROBJ+6
Function Call: WRITE
  • Prompt: P("Name")_" object created successfully."
  • Line Location: CROBJ+15
Function Call: WRITE
  • Prompt: !!?1,$P(P("IEN"),U,2)
  • Line Location: CROBJ+16
Function Call: WRITE
  • Prompt: !,RV1_$$SETSTR(" 'def' indicates no parameter value set, default shown","",0,80)_RV0,!,$$SETSTR("Test Object"," Change Status",45,11)
  • Line Location: D2+6
Function Call: WRITE
  • Prompt: !,$$SETSTR("Update Parameters"," Print Object",45,17),!
  • Line Location: D2+7
Function Call: WRITE
  • Prompt: UL1_$$CJ^XLFSTR("Medication Reconciliation Auto Fix",IOM)_UL0,!!
  • Line Location: MEDREC+1
Function Call: WRITE
  • Prompt: HV1_"Object Method Update"_HV0,$$RJ^XLFSTR(NOW,IOM-20),!
  • Line Location: MEDREC+7
Function Call: WRITE
  • Prompt: UL1_$$CJ^XLFSTR("Medication Reconciliation Auto Fix",IOM)_UL0,!!
  • Line Location: MEDREC+8
Function Call: WRITE
  • Prompt: " # of Medication",!," Reconciliation Objects:",?30,VAR("medRec"),!!
  • Line Location: MEDREC+9
Function Call: WRITE
  • Prompt: " Med Rec/TIUDATE Fix Value:",?30,P("MR")_$S(P("MR"):" Include TIUDATE [default]",1:" Exclude TIUDATE")
  • Line Location: MEDREC+10
Function Call: WRITE
  • Prompt: "Objects Complete: ",?30,NUM
  • Line Location: MEDREC+20
Function Call: WRITE
  • Prompt: " Done."
  • Line Location: MEDREC+21
Function Call: WRITE
  • Prompt: "Syntax error in method."
  • Line Location: TEST+5
Function Call: WRITE
  • Prompt: @X@(Y,0),!
  • Line Location: TEST+9
Function Call: WRITE
  • Prompt: HV1_"Object Method Update"_HV0,$$RJ^XLFSTR(NOW,IOM-20),!!,UL1_$$CJ^XLFSTR("Object "_P("Name"),IOM)_UL0,!!,"Current Method:",!!
  • Line Location: UPDATE+9
Function Call: WRITE
  • Prompt: $$REPLACE^XLFSTR(P("Method"),.REP),!!,"Updated Method:",!!,$$REPLACE^XLFSTR(P("Update"),.REP),!
  • Line Location: UPDATE+11
Function Call: WRITE
  • Prompt: !,"No updates needed."
  • Line Location: UPDATE+12
Function Call: WRITE
  • Prompt: " Done."
  • Line Location: UPDATE+14
Function Call: WRITE
  • Prompt: @Y,!
  • Line Location: DHDR+11
Function Call: WRITE
  • Prompt: ?$S($L(PAR)=1:2,1:1),PAR,"=",$S(P(PAR)="":"def",1:P(PAR)),?9
  • Line Location: DPAR+3
Function Call: WRITE
  • Prompt: $S(P(PAR)=4:"Clinic",P(PAR)=5:"Inpatient & Clinic",P(PAR)=6:"Outpatient & Clinic",P(PAR)=7:"Non-VA")_" Medications"
  • Line Location: DPAR+7
Function Call: WRITE
  • Prompt: " and Display Class in Header"
  • Condition for execution: P(PAR)=2
  • Line Location: DPAR+9
Function Call: WRITE
  • Prompt: $S(P(PAR)=""!(P(PAR)):"Include",1:"Exclude")_" TIUDATE value when calling OCL^PSOORRL"
  • Line Location: DPAR+11
Function Call: WRITE
  • Prompt: !
  • Line Location: DPAR+12
Function Call: WRITE
  • Prompt: MSG
  • Line Location: HELP+1
Function Call: WRITE
  • Prompt: !?30,MSG(X)
  • Line Location: HELP+2
Function Call: WRITE
  • Prompt: !
  • Line Location: IOSL+0
Function Call: WRITE
  • Prompt: $$SETSTR(RESULT_" is already in use.","",2,IOM)
  • Line Location: OASK+4
Function Call: WRITE
  • Prompt: "Parameter "_PNUM_" (of "_$L(PLIST,U)_"):"
  • Line Location: PASK+6
Function Call: WRITE
  • Prompt: LINE
  • Line Location: PASK+7
Routine Call
  • %ZIS
  • Line Location:
    • EN+2
Routine Call
  • DIC
  • Line Location:
    • GETPT+2
Routine Call
  • DIR
  • Line Location:
    • FMR+9
Routine Call
  • VALM
  • Line Location:
    • EN+4

Global Variables Directly Accessed

Name Line Occurrences  (* Changed,  ! Killed)
^ORD(101 - [#101] LMHDR+4, HKEYS+2
^TIU(8925.1 - [#8925.1] LMINIT+1, LMINIT+2, CHGSTAT+3*, DISPLAY+1, MEDREC+19*, TEST+1, TEST+4, UPDATE+1, UPDATE+14*, EXTRACT+7
, EXTRACT+8

Label References

Name Line Occurrences
$$FMR ASK+2, CROBJ+2, CROBJ+8, CROBJ+13, CHGSTAT+2, D2+9, MEDREC+4, MEDREC+11, UPDATE+13, IOSL+1
, OASK+3, PASK+9
$$GETPT TEST+2
$$OASK CROBJ+10
$$SETSTR LMHDR+2, D2+6, D2+7, FMR+3, OASK+4
$$UP D2+9, OASK+3
$$VALIDM TEST+5
@( ASK+4
CHGSTAT D2+10
CLS CROBJ+1, CROBJ+2, CROBJ+3, CROBJ+9, D2+1, D2+10, MEDREC+1, MEDREC+6, TEST+3, PASK+11
D2 D2+12
DHDR D2+5, POBJ+4
DPAR CROBJ+7, D2+5, POBJ+4
EX CROBJ+8, CROBJ+11, CROBJ+13, CROBJ+16
EXTRACT D2+2, MEDREC+15, UPDATE+3, POBJ+2
EXU UPDATE+12
IOSL EXMEDREC+22, TEST+5, TEST+11, EXU, POBJ+4
LMHDR REBLD+1
LMINIT REBLD+1
MEDREC ASK+1
PARAMETERS D2+3, DPAR+2, PASK+4
PASK CROBJ+1, MEDREC+6, UPDATE+3
REBLD CROBJ+17, DISPLAY+1, TEST+1, UPDATE+1
TEST D2+10
UPDATE D2+10

Local Variables

Legend:

>> Not killed explicitly
* Changed
! Killed
~ Newed

Name Field # of Occurrence
% EN+1~
%DT EN+1~
%H GETPT+1~
%I GETPT+1~
ACT ASK~, ASK+1, ASK+3*, ASK+4
ACT(1 ASK+2*, ASK+3
C EN+1~
COL HELP~, HELP+1, OASK~
DEF FMR~, FMR+4, PASK+5~, PASK+8*, PASK+9
DFN TEST+2~*
DIC GETPT+1~, GETPT+2*
DIC("A" GETPT+2*
DIC(0 GETPT+2*
DILOCKTM GETPT+1~
DIR FMR~, FMR+2*, FMR+8*
DIR("?" FMR+5*
DIR("A" FMR+3*
DIR("B" FMR+4*
DIR("L" FMR+7*
DIR("S" FMR+6*
DIR(0 FMR+2*, FMR+7
DIROUT FMR+1~
DIRUT FMR+1~
DISYS EN+1~, GETPT+1~
DTOUT FMR+1~, GETPT+1~
DUOUT FMR+1~, GETPT+1~
HLP FMR~, FMR+5, FMR+7, FMR+8
HV0 EN+1~, EN+3*, LMHELP+3, LMHELP+4, LMHELP+6, LMHELP+7, LMHELP+10, MEDREC+3, MEDREC+7, UPDATE+9
HV1 EN+1~, EN+3*, LMHELP+3, LMHELP+4, LMHELP+6, LMHELP+7, LMHELP+10, MEDREC+3, MEDREC+7, UPDATE+9
IEN LMINIT+1~*, LMINIT+2, LMINIT+3, LMINIT+5, CHGSTAT~, CHGSTAT+3, DISPLAY~, DISPLAY+1, D2+2, D2+10
D2+11, MEDREC+13~*, MEDREC+15, MEDREC+19, TEST~, TEST+1, TEST+4, UPDATE~, UPDATE+1, UPDATE+3
, UPDATE+14, EXTRACT~, EXTRACT+7, EXTRACT+8, POBJ~, POBJ+2
INPUT DISPLAY+2~, D2+8, D2+9*, D2+10, D2+12
IOINHI EN+1~, EN+3
IOINORM EN+1~, EN+3
IOM CROBJ+4, CROBJ+15, MEDREC+1, MEDREC+7, MEDREC+8, UPDATE+9, OASK+2, OASK+4
IORVOFF EN+1~, EN+3
IORVON EN+1~, EN+3
IOSL IOSL
IOST POBJ+4
IOUOFF EN+1~, EN+3
IOUON EN+1~, EN+3
L SETSTR~
LINE PASK+5~*, PASK+7
LNUM PASK+5~*, PASK+6, PASK+7
MSG HELP~, HELP+1
MSG( HELP+2
MSG("" HELP+2
N LMINIT+2~, LMINIT+4*, LMINIT+5, CHGSTAT~, DISPLAY+2~, D2+2, D2+5, D2+10, UPDATE+2~, UPDATE+3
, DHDR~, EXTRACT~, POBJ+1~, POBJ+2, POBJ+4
N(0 LMINIT+2*, LMINIT+4, CHGSTAT+2, CHGSTAT+3, EXTRACT+7*
N(9 LMINIT+2*, LMINIT+3, LMINIT+4, EXTRACT+8*, EXTRACT+9
NAME LMINIT+1~*
NOW MEDREC+2~, MEDREC+5*, MEDREC+7, UPDATE+2~*, UPDATE+9
NUM MEDREC+13~*, MEDREC+14*, MEDREC+20
OPT DISPLAY+2~, D2+7*
ORULT HKEYS+2~
P CROBJ+1~, CROBJ+2, CROBJ+7, DISPLAY+2~, D2+2, D2+5, MEDREC+2~, MEDREC+6, MEDREC+14~, MEDREC+15
, UPDATE+2~, UPDATE+3, UPDATE+5, UPDATE+7, DPAR~, EXTRACT~, PASK~, PASK+10*, PASK+12!, POBJ+1~
, POBJ+2, POBJ+4
P( D2+4*, DPAR+3, DPAR+4, DPAR+5, DPAR+6, DPAR+7, DPAR+8, DPAR+9, DPAR+10, DPAR+11
, PASK+4, PASK+9*, PASK+10, PASK+12, POBJ+3*
P("A" DPAR+13, DPAR+14
P("D" DPAR+13, DPAR+14
P("IEN" CROBJ+14*, CROBJ+15, CROBJ+16
P("M" DPAR+13, DPAR+14
P("MR" MEDREC+6, MEDREC+10, DPAR+13, DPAR+14
P("Method" MEDREC+18, UPDATE+7, UPDATE+8, UPDATE+11, UPDATE+12, EXTRACT+8*
P("Name" CROBJ+10*, CROBJ+11, CROBJ+14, CROBJ+15, UPDATE+9, EXTRACT+7*
P("O" DPAR+13, DPAR+14
P("OBJM" CROBJ+14, DPAR+13*, DPAR+14*
P("Parameters" MEDREC+17, UPDATE+5, EXTRACT+12*
P("SC" DPAR+13, DPAR+14
P("SU" DPAR+13, DPAR+14
P("TIUDATE" CROBJ+5, DPAR+13
P("Update" MEDREC+18*, MEDREC+19, UPDATE+8*, UPDATE+11, UPDATE+12, UPDATE+14
P(1 MEDREC+17, UPDATE+5, UPDATE+10, EXTRACT+12*, EXTRACT+13*
P(2 MEDREC+17, UPDATE+5, UPDATE+10, EXTRACT+12*, EXTRACT+14*, EXTRACT+15*
P(3 D2+4, MEDREC+16*, MEDREC+17, EXTRACT+12*, EXTRACT+16*, PASK+3*, PASK+8, POBJ+3
PAR DISPLAY+2~, D2+4*, MEDREC+2~, MEDREC+6*, MEDREC+16, DPAR+1~, DPAR+2*, DPAR+3, DPAR+4, DPAR+5
, DPAR+6, DPAR+7, DPAR+8, DPAR+9, DPAR+10, DPAR+11, EXTRACT+6~, EXTRACT+9*, EXTRACT+10*, EXTRACT+11*
, EXTRACT+12, EXTRACT+13*, EXTRACT+14, EXTRACT+15*, EXTRACT+16, PASK+3~, PASK+4*, PASK+8, PASK+9, PASK+10
, PASK+12, POBJ+1~, POBJ+3*
PARS DISPLAY+2~, D2+3*, D2+4, D2+11, POBJ~, POBJ+3
PLIST DPAR+1~, DPAR+2*, PASK+3~, PASK+4*, PASK+6
PNUM DISPLAY+2~, D2+4*, DPAR+1~, DPAR+2*, PASK+3~, PASK+4*, PASK+6, PASK+8, PASK+10, POBJ+1~
, POBJ+3*
POP EN+1~
PRM FMR~, FMR+3
PS PASK~, PASK+3*, PASK+4
REP MEDREC+14~, MEDREC+18, UPDATE+2~, UPDATE+7, UPDATE+8!, UPDATE+11, UPDATE+12, EXTRACT+6~, EXTRACT+13!, EXTRACT+15!
REP( MEDREC+17*, UPDATE+5*, UPDATE+10*, EXTRACT+13*, EXTRACT+15*
REP("""" UPDATE+10*
REP("^TIUMOBJ(" UPDATE+6*
RESULT OASK+1~, OASK+3*, OASK+4!, OASK+5
RNG PASK+5~, PASK+8*, PASK+9
ROW HELP~, HELP+1, HELP+3, HELP+4, HELP+5, OASK~, OASK+2, OASK+3, OASK+4
RV0 EN+1~, EN+3*, LMHDR+2, D2+6
RV1 EN+1~, EN+3*, LMHDR+2, D2+6
S SETSTR~
SCR FMR~, FMR+6
U LMHDR+4, LMINIT+2, LMINIT+4, HKEYS+2, CROBJ+16, CHGSTAT+2, CHGSTAT+3, D2+4, DPAR+2, EXTRACT+7
, FMR+7, PASK+4, PASK+6, PASK+9, PASK+12, POBJ+3
UL0 EN+1~, EN+3*, CROBJ+4, MEDREC+1, MEDREC+8, UPDATE+9
UL1 EN+1~, EN+3*, CROBJ+4, MEDREC+1, MEDREC+8, UPDATE+9
V SETSTR~
VALMANS LMHELP~, LMHELP+1*, LMHELP+11*
>> VALMAR ASK+3
>> VALMBCK LMHELP+11*
VALMCNT ASK+1, LMHDR+4, LMINIT~, LMINIT+1*, LMINIT+3*, LMINIT+4, LMINIT+5, REBLD+1
>> VALMHDR(2 LMHDR+1*
>> VALMHDR(3 LMHDR+2*
>> VALMKEY HKEYS+2
>> VALMLST ASK+2
>> VALMSG LMHDR+3*
VAR EN+1~, LMINIT~, REBLD+1
VAR("medRec" LMINIT+1*, LMINIT+3*, MEDREC+9, MEDREC+13
X EN+1~, DISPLAY+2~, TEST+2~, TEST+4*, TEST+5, TEST+7, TEST+8*, TEST+9, TEST+10, DHDR+11~*
, FMR+1~, GETPT+1~, HELP+2~*, SETSTR~, UP~, VALIDM~, VALIDM+2
XPARSYS EN+1~
XQORM HKEYS+2~*, HKEYS+3
XQORM("#" LMHDR+4*
XQORM("??" LMHDR+4*
>> XQORNOD(0 ASK+2
XQXFLG EN+1~
Y TEST+2~, TEST+8*, TEST+9*, DHDR+11~*, FMR+1~, FMR+10, GETPT+1~, GETPT+3, HELP+2~*
ZTSAVE D2+11~
ZTSAVE("IEN" D2+11*
ZTSAVE("PARS" D2+11*

Marked Items

Name Field # of Occurrence
$T(@PAR PASK+8
$T(@PAR+LNUM PASK+5
$T(DHDR+X DHDR+11
$T(PARAMETERS D2+3, DPAR+2, PASK+4
Info |  Source |  Call Graph |  Caller Graph |  Entry Points |  External References |  Interaction Calls |  Global Variables Directly Accessed |  Label References |  Local Variables |  Marked Items  | All