VA FileMan V. 22.0 Getting Started HTML Manual Banner


 

Main Chapter Getting Started Manual Programmer Manual

Relational Navigation


Multiline Return Values

When you use extended pointer syntax, a lookup is performed in the navigated-to file. This lookup usually evaluates to a single value. However, in some situations, extended pointer syntax can end up returning a Multiple-valued or "Multiline" result. Multiline responses can be generated by:

You cannot use extended pointer syntax that can evaluate to a Multiline value at VA FileMan's "SORT BY:" and "SEARCH FOR FIELD:" prompts. Some of the ways in which you can use extended pointers that evaluate to a Multiline value are:


WORD-PROCESSING Field

WORD-PROCESSING field names (or field numbers preceded with a #) are allowed as elements in extended pointer expressions. For example, in the PATIENT file the HISTORY field is in the DIAGNOSIS Multiple. You can define this computed expression:

    "B-12 Deficiency" IN DIAGNOSIS FILE:HISTORY

This Multiline computed expression would signify the WORD-PROCESSING HISTORY field text associated with a patient's B-12 Deficiency DIAGNOSIS. A lookup is done on the DIAGNOSIS Multiple using "B-12 Deficiency" as the lookup value. If the patient does not have that DIAGNOSIS (or no HISTORY is associated with it), the value of this extended pointer expression would be null.


Multiples

You can use the simple pointer syntax to get data from Multiples of files pointed to by other files. The RADIOLOGY EXAM file described above points to the PATIENT file by way of the EXAMINEE field. In the PATIENT file there is a DIAGNOSIS Multiple. You could obtain a list of diagnoses associated with RADIOLOGY EXAM file entries by doing the following:

Select OPTION: PRINT FILE ENTRIES

OUTPUT FROM WHAT FILE: RADIOLOGY EXAM// 
SORT BY: NAME//           
START WITH NAME: FIRST//            
FIRST PRINT FIELD: TEST NUMBER   
THEN PRINT FIELD: EXAMINEE:DIAGNOSIS
THEN PRINT FIELD:              
HEADING: RADIOLOGY EXAM LIST// 
STORE PRINT LOGIC IN TEMPLATE: Exam Diagnoses

For each entry in the RADIOLOGY EXAM file, EXAMINEE points to an entry in the PATIENT file. The diagnoses associated with that patient are returned as the Multiline output of the expression EXAMINEE:DIAGNOSIS.


Backward Pointer

The following example shows how you can use the cross-referenced backward pointer that yields a Multiline response in an INPUT template:

INPUT TO WHAT FILE: PATIENT 

EDIT WHICH FIELD: ALL// NAME
THEN EDIT FIELD: RADIOLOGY EXAM:
   By 'RADIOLOGY EXAM', do you mean the RADIOLOGY EXAM File,
       pointing via its 'EXAMINEE' Field? YES//   (YES)

WILL TERMINAL USER BE ALLOWED TO SELECT PROPER ENTRY IN 'RADIOLOGY  EXAM' FILE?  YES//    (YES) 
DO YOU WANT TO PERMIT ADDING A NEW 'RADIOLOGY EXAM' ENTRY? NO// 
   EDIT WHICH RADIOLOGY EXAM FIELD: DATE OF EXAM 
   THEN EDIT WHICH RADIOLOGY EXAM FIELD: RESULTS 
   THEN EDIT WHICH RADIOLOGY EXAM FIELD: 
THEN EDIT FIELD: ATTENDING PHYSICIAN
THEN EDIT FIELD: 
STORE THESE FIELDS IN TEMPLATE: PATIENT-EXAM 

To use this template you:

  1. Specify the patient's name to edit.

  2. Select one of the RADIOLOGY EXAM file's entries that point back to that patient.

  3. Edit data within that selected entry in the RADIOLOGY EXAM file.

  4. Return to edit another field in the PATIENT file.

A sample editing session using this INPUT template looks like this:

INPUT TO WHAT FILE: PATIENT

EDIT WHICH FIELD: ALL// [PATIENT-EXAM

Select PATIENT NAME: BROWN,JOE 
NAME:  BROWN,JOE// 
Select RADIOLOGY EXAM: ?  
CHOOSE FROM: 
  1.    DEC 4, 1984 
  2.    OCT 1, 1985 
CHOOSE 1-2: 2 
  DATE OF EXAM:  OCT 1, 1985// 
  RESULTS: NORMAL
ATTENDING PHYSICIAN:  SMITH// 

As indicated by this example, the only RADIOLOGY EXAM file entries you were allowed to choose were the two that pointed back to the selected patient (BROWN,JOE).

Each file, for the purpose of this editing sequence, is considered a subfile of the original, so that when no more fields within the second file are specified, the dialogue falls back to the original file. Having navigated over to a second file, you can use another extended pointer to move to still a third file.

You cannot cross file boundaries on input unless you have WRITE access to the file to which you move. This restriction applies to the individual who created this Patient-Exam INPUT template.

 


Reviewed/Updated: March 4, 2007