Ignore:
Timestamp:
Apr 19, 2010, 7:05:32 PM (15 years ago)
Author:
Kevin Toppenberg
Message:

Fixed instructions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cprs/branches/tmg-cprs/Server_KIDS/TMG-CPRS-TEXTOBJ-FMFLD-1.0-1.TXT

    r737 r739  
    66============================================================================
    77
    8 Associated patches: None
    9 
    10 Subject: Patch to support custom lookups in CPRS (does not require TMG-CPRS)
     8
     9Subject: Patch to provide custom TIU TEXT OJBECT from CPRS
    1110
    1211Category:
     
    1514Dependancies:
    1615============
    17 
    18   TMG-CPRS-TEXTOBJ-PARAM*1.0*1 is required for the installation of this patch.
     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.
    1918
    2019License:
     
    2827Description:
    2928============
    30 
    3129  This patch provides a TIU TEXT object that can be included
    3230on templates in CPRS.  This object will allow fetching the
    3331value of any field from the PATIENT file.
    3432
    35 Usage
    36    |TMG PATIENT FLD{Field(s)^Flags^FormatString}
    37 
    38             Field(s) -- required.  Options for input:
    39                 -  A single field number or name
    40                 -  A list of field numbers (or names), separated by semicolons
    41                 -  A range of field numbers (or names), in the form M:N,
    42                          where M and N are the end points of the inclusive range.
    43                          All field numbers within this range are retrieved.
    44                 -  A '*' for all fields at the top level (no sub-multiple record).
    45                 -  A '**' for all fields including all fields and data in sub-multiple fields.
    46                 -  Field number (or name) of a multiple followed by an * to indicate all
    47                          fields and records in the sub-multiple for that field.
    48                 Invalid field names will be ignored
    49             Flags -- Optional.
    50                 -  'F' -- include field name in results with value.  e.g. "AGE: 43" instead of                                    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                                             FormatString info below).  I.e. if R not specified, and field NUMBERS                                   are used for input, then results will be returned in numerical field                                    number order by default.   
    59                 -         If R is specified, then field numbers are converted to field NAMES,                                     and that is used to determine the order of output.
    60                 -  'N' -- Don't return values for empty fields.  This is helpful if ALL fields
    61                 -         were requested via '*'
    62             FormatString -- A string to determine how results are passed back....
    63                 NOTE: without a format string, results will be passed back in the order                                         returned by fileman.  I.e. if user requested fields "SEX;.01;AGE", then                                 Fileman will place results into an array, which MUMPS will sort                                 alphabetically, e.g. .01, then AGE, then SEX.  If "*" fields are                                        requested, it would be even more complex.  A format string will                                   allow the user to specify ORDER.   
    64                 Format: e.g. "Any arbitrary text %FieldNameOrNum% more text   
    65                         %FieldNameOrNum%..."
    66                   (The goal was to follow the method used by printf in the c language.)
    67                   -  Any arbitrary text can be included.
    68                   -  Field numbers or names should be enclosed by the '%' character
    69                        These will be replaced with actual data values.
    70                   - '\n' can be included to specify line breaks
    71                   - '%%' will be used to show a '%' in the output text
    72                   - Invalid, or non-matching, field names/numbers will be ignored.
     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.
    7382
    7483Results: returns a string that will be sent back to CPRS, to be included in a text note
    7584
    7685
     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
     101  |TMG PATIENT FLD{NAME;SEX;AGE^S}|
     102        --> "34; SMITH,JOHN A; MALE"
     103        **Notice that results are returned in alphabetical order, based on field name
     104
     105  |TMG PATIENT FLD{NAME;SEX;AGE^^NAME: %NAME%, %AGE% yrs., %SEX%}|
     106        --> "NAME: SMITH,JOHN A, 34 YRS., MALE"
     107        **Notice that use of format string allows results to be returned in expected order
     108
     109NOTE:
     110============
    77111  The code has been developed on a GT.M mumps system.  Every attempt was made to use coding
    78   techniques that would be cross-platform to Cache'.  But the patch has NOT been tested on   'Cache'.
    79    
    80   INSTALLATION INSTRUCTIONS:
    81   ==========================
     112  techniques that would be cross-platform to Cache'.  But the patch has NOT been tested on 'Cache'.
     113   
     114INSTALLATION INSTRUCTIONS:
     115==========================
    82116  This patch should cause minimal impact on live systems, as it provides only 1 routine,
    83117  Installation will take less than 1 minute.  Users may remain on the system in roll-and-
     
    88122  exist in their instance.  In GT.M, recompilation of routines etc only occurrs with a client
    89123  first connects to the server.  We are not sure if this behavior applies to Cache' systems.  But
    90   the safest approach would be to have all users of CPRS exit their applications, and restart     after application of the patch.
     124  the safest approach would be to have all users of CPRS exit their applications, and restart
     125  after application of the patch.
    91126
    92127  Note: the follow instructions were copied from another KIDS install and modified.  There may be
Note: See TracChangeset for help on using the changeset viewer.