source: cprs/branches/tmg-cprs/Server_KIDS/TMG-CPRS-TEXTOBJ-FMFLD-1.0-1.TXT@ 810

Last change on this file since 810 was 792, checked in by Kevin Toppenberg, 14 years ago

Uploaded kids package for search functionality in TMG-CPRS

File size: 10.0 KB
Line 
1$TXT Created by TOPPENBERG,KEVIN at FAMILY PHYSICANS OF GREENEVILLE (KIDS) on Sunday, April 18, 2010
2============================================================================
3Run Date: APR 18,2010 Designation: TMG-CPRS-TEXTOBJ-FMFLD*1.0*1
4Package : TMG - FAMILY PHYSICANS OF GREENEVILLE Priority: Optional
5Version : 1 SEQ #1 Status: Released
6============================================================================
7
8
9Subject: Patch to provide custom TIU TEXT OJBECT from CPRS
10
11Category:
12 - Routine
13
14Dependancies:
15============
16 1. TMG-CPRS-TEXTOBJ-PARAM*1.0*1 is required for the installation of this patch.
17 2. TMG-CPRS version of CPRS client is required.
18
19License:
20============
21 This patch is copyright 04/18/2010. GNU Lessor General Public License (LGPL) applies.
22
23Authors:
24============
25 Kevin Toppenberg, Greeneville Family Physicians, PC
26
27Description:
28============
29 This patch provides a TIU TEXT object that can be included
30on templates in CPRS. This object will allow fetching the
31value of any field from the PATIENT file.
32
33Usage:
34 |TMG PATIENT FLD{Field(s)^Flags^FormatString}|
35
36Field(s) -- required. Options for input:
37 - A single field number or name
38 - A list of field numbers (or names), separated by semicolons
39 - A range of field numbers (or names), in the form M:N,
40 where M and N are the end points of the inclusive range.
41 All field numbers within this range are retrieved.
42 - A '*' for all fields at the top level (no sub-multiple record).
43 - A '**' for all fields including all fields and data in sub-multiple fields.
44 - Field number (or name) of a multiple followed by an * to indicate all
45 fields and records in the sub-multiple for that field.
46 Note: Invalid field names will be ignored
47
48Flags -- Optional.
49 - 'F' -- include field name in results with value. e.g. "AGE: 43" instead of
50 just "43"
51 - This flag is ignored if a FormatString is provided (see below)
52 - 'S' -- Keep all data values on a single line, separated by ';'.
53 - If flag not provided, and multiple data fields are requested,
54 - then the default is that each data value will be separated by a
55 - CRLF [$C(13)_$C(10)]
56 - This flag is ignored if a FormatString is provided (see below)
57 - 'R' -- Resolve fields to NAMES, even if a field NUMBER was used for input request
58 - Note: this will affect the sorting order of the output (see
59 FormatString info below). I.e. if R not specified, and field NUMBERS
60 are used for input, then results will be returned in numerical field
61 number order by default.
62 - If R is specified, then field numbers are converted to field NAMES,
63 and that is used to determine the order of output.
64 - 'N' -- Don't return values for empty fields. This is helpful if ALL fields
65 - were requested via '*'
66
67FormatString -- A string to determine how results are passed back....
68 NOTE: without a format string, results will be passed back in the order
69 returned by fileman. I.e. if user requested fields "SEX;.01;AGE", then
70 Fileman will place results into an array, which MUMPS will sort
71 alphabetically, e.g. .01, then AGE, then SEX. If "*" fields are
72 requested, it would be even more complex. A format string will
73 allow the user to specify ORDER.
74 Format: e.g. "Any arbitrary text %FieldNameOrNum% more text %FieldNameOrNum%..."
75 (The goal was to follow the method used by printf in the c language.)
76 - Any arbitrary text can be included.
77 - Field numbers or names should be enclosed by the '%' character
78 These will be replaced with actual data values.
79 - '\n' can be included to specify line breaks
80 - '%%' will be used to show a '%' in the output text
81 - Invalid, or non-matching, field names/numbers will be ignored.
82
83Results: returns a string that will be sent back to CPRS, to be included in a text note
84
85
86Examples of usage from CPRS:
87============================
88Simple examples:
89 |TMG PATIENT FLD{.01}| -- returns .01 field, which is the patients NAME, e.g. "SMITH,JOHN A"
90 |TMG PATIENT FLD{NAME}| -- returns same value as above, e.g. "SMITH,JOHN A"
91 |TMG PATIENT FLD{NAME^F}| -- e.g result "NAME: SMITH,JOHN A"
92
93More complex examples:
94 |TMG PATIENT FLD{NAME;SEX;AGE^F}|
95 --> "AGE: 34"_$C(13)_$C(10)_"NAME: SMITH,JOHN A"_$C(13)_$C(10)_"SEX: MALE"
96 And in CPRS, will show as:
97 AGE: 34
98 NAME: SMITH,JOHN A
99 SEX: MALE
100 **Notice that results are returned in alphabetical order, based on field name,
101 not on order of requested fields.
102
103 |TMG PATIENT FLD{NAME;SEX;AGE^S}|
104 --> "34; SMITH,JOHN A; MALE"
105 **Notice that results are returned in alphabetical order, based on field name
106
107 |TMG PATIENT FLD{NAME;SEX;AGE^^NAME: %NAME%, %AGE% yrs., %SEX%}|
108 --> "NAME: SMITH,JOHN A, 34 YRS., MALE"
109 **Notice that use of format string allows results to be returned in expected order
110
111NOTE:
112============
113 The code has been developed on a GT.M mumps system. Every attempt was made to use coding
114 techniques that would be cross-platform to Cache'. But the patch has NOT been tested on 'Cache'.
115
116INSTALLATION INSTRUCTIONS:
117==========================
118 This patch should cause minimal impact on live systems, as it provides only 1 routine,
119 Installation will take less than 1 minute. Users may remain on the system in roll-and-
120 scroll mode.
121
122 NOTE HOWEVER: All CPRS applications should be exited before installing the patch. Otherwise
123 CPRS users will find that the RPC call has been redirected to a routine that does not yet
124 exist in their instance. In GT.M, recompilation of routines etc only occurrs with a client
125 first connects to the server. We are not sure if this behavior applies to Cache' systems. But
126 the safest approach would be to have all users of CPRS exit their applications, and restart
127 after application of the patch.
128
129 Note: the follow instructions were copied from another KIDS install and modified. There may be
130 some discrepancies.
131
132 The following are instructions for those using the Packman method:
133 ------------------------------------------------------------------
134 1. Use the INSTALL/CHECK MESSAGE option on the PackMan menu.
135
136 2. Review your mapped set. If any of the routines listed in the
137 ROUTINE SUMMARY section are mapped, they should be removed
138 from the mapped set at this time.
139
140 3. From the Kernel Installation and Distribution System Menu, select
141 the Installation menu.
142
143 4. From this menu, you may elect to use the following options
144 (when prompted for INSTALL NAME, enter TMG-CPRS-TEXTOBJ-FMFLD*1.0*1:
145 a. Backup a Transport Global
146 b. Compare Transport Global to Current System
147 c. Verify Checksums in Transport Global
148
149 5. Use the Install Package(s) option and select the package TMG-CPRS-TEXTOBJ-FMFLD*1.0*1
150
151 6. When prompted 'Want KIDS to INHIBIT LOGONs during the install? YES//'
152 respond NO.
153
154 7. When prompted 'Want to DISABLE Scheduled Options, Menu Options, and
155 Protocols? YES//', respond NO.
156
157 8. If routines were unmapped as part of step 2, they should be returned
158 to the mapped set once the installation has run to completion.
159
160 9. (See step 9 below)
161
162 The following are instructions for those loading the patch via Host File System:
163 ---------------------------------------------------------------------------------
164 1. Navigate the menu option path to reach the Kernel Installation and Distribution
165 System Menu. Or, the menu option XPD MAIN may be entered directly.
166
167 2. Next, at the menu displaying:
168 Edits and Distribution ...
169 Utilities ...
170 Installation ... <---------- pick this one.
171
172 3. Next, at the menu displaying the options as below, choose each of the options
173 in a step-by-step fashion, in numerical order (i.e. 1, 2, 3 etc.) Step #1 will
174 prompt the user to enter the file path on the host file system where the source
175 file is stored. The filename to enter is TMG-CPRS-TEXTOBJ-FMFLD*1.0*1.KIDS, but add the
176 appropriate path. E.g. /tmp/TMG-CPRS-TEXTOBJ-FMFLD*1.0*1.KIDS
177
178 1 Load a Distribution
179 2 Verify Checksums in Transport Global
180 3 Print Transport Global
181 4 Compare Transport Global to Current System
182 5 Backup a Transport Global
183 6 Install Package(s)
184 Restart Install of Package(s)
185 Unload a Distribution
186
187 4. From this menu, you may elect to use the following options
188 (when prompted for INSTALL NAME, enter TMG-CPRS-TEXTOBJ-FMFLD*1.0*1
189 a. Backup a Transport Global
190 b. Compare Transport Global to Current System
191 c. Verify Checksums in Transport Global
192
193 5. Use the Install Package(s) option and select the package TMG-CPRS-TEXTOBJ-FMFLD*1.0*1
194
195 6. When prompted 'Want KIDS to INHIBIT LOGONs during the install? YES//'
196 respond NO.
197
198 7. When prompted 'Want to DISABLE Scheduled Options, Menu Options, and
199 Protocols? YES//', respond NO.
200
201 8. If routines were unmapped as part of step 2, they should be returned
202 to the mapped set once the installation has run to completion.
203
204
205=============================================================================
206User Information:
207Entered By : TOPPENBERG,KEVIN Date Entered : Apr 18,2010
208Completed By: TOPPENBERG,KEVIN Date Completed: Apr 18,2010
209Released By : TOPPENBERG,KEVIN Date Released : Apr 18,2010
210=============================================================================
211
212Packman Mail Message:
213=====================
214
215$END TXT
Note: See TracBrowser for help on using the repository browser.