Kernel 8.0 APIs Banner
Office of Information and Technology (OIT) Banner
[skip navigation]

MAIN^XUMFP(): Master File Parameters

Reference Type: Controlled Subscription, Category: Institution File, ICR#: 3354

Description

The MAIN^XUMFP API sets up required parameters used by the HL7 Master File Message Builder Interface and the HL7 Master File message handler. The interface defines required parameters and serves as a common interface for parameter initialization. This interface is the enabling component of the Master File Server (MFS) mechanism allowing VA FileMan Master Files to be maintained by server including files with multiple fields and extended references.

The developer can set any param parameter before or after the interface call and override the default value.

Format

  MAIN^XUMFP(ifn,ien,type,param,error)

Input Parameters

ifn:

(required) Internal File Number (IFN).

ien:

(required) Internal Entry Number (IEN).

Single entry (pass by value).

Example:

  • IEN=1

Multiple entries (pass by reference).

Example:

  • IEN(1)=""

  • IEN(2)=""

ALL national entries (pass by value).

Example:

  • IEN="ALL"

NEW entry (pass by value).

Example:

  • IEN="NEW"
type:

(required) Message TYPE. Possible values are:

  • 0—MFN: Unsolicited update.

  • 1—MFQ: Query particular record and file.

  • 3—MFQ: Query particular record in array.

  • 5—MFQ: Query group records file.

  • 7—MFQ: Query group records array.

  • 11—MFR: Query response particular record file.

  • 13—MFR: Query response particular record array.

  • 15—MFR: Query response group records file.

  • 17—MFR: Query response group records array.

Input / Output Parameters

param:

Parameter array:

  • PARAM("PROTOCOL")IEN PROTOCOL (#101) file.

  • PARAM("BROADCAST")Broadcast message to all VistA sites.

  • PARAM("LLNK")Logical link in HLL("LINKS",n) format.

QRD: Query Definition

Parameter HL7 Sequence HL7 Data Type
PARAM("QDT") Query Date/Time TS
PARAM("QFC") Query Format Code ID
PARAM("QP") Query Priority ID
PARAM("QID") Query ID ST
PARAM("DRT") Deferred Response Type ID
PARAM("DRDT") Deferred Response Date/Time TS
PARAM("QLR") Quantity Limited Request CQ
PARAM("WHO") Who Subject Filter XCN
PARAM("WHAT") What Subject Filter CE
PARAM("WDDC") What Department Data Code CE
PARAM("WDCVQ") What Data Code Value Qual. CM
PARAM("QRL") Query Results Level ID

 

XCN Data Type of QRD WHO Parameter

Component Value Description
1ST component is one of the following:   One of the following:
NAME       Value of NAME (#.01) field for Internal Entry Number (IEN).
ALL       String represents all national entries.
IEN ARRAY       String represents entries passed in IEN array.
9th component D Source table (VA FileMan cross-reference).
10th component 045A4 Assigning authority.

 

CE Data Type of QRD WHAT Parameter

Component Value Description
1ST component 4 Identifier
2nd component IFN Text
3rd component VA FM Name of coding system

 

MFI: Master File Identification

Parameter Description
PARAM("MFI") Master File Identifier
PARAM("MFAI") Master File Application Identifier
PARAM("FLEC") File-Level Event Code
PARAM("ENDT") Entered Data/Time
PARAM("MFIEDT") Effective Date/Time
PARAM("RLC") Response Level Code

 

MFE: Master File Entry

Parameter Description
PARAM("RLEC") Record-Level Event Code
PARAM("MFNCID") MFN Control ID
PARAM("MFEEDT") Effective Date/Time
PARAM("PKV") Primary Key Value

 

[Z...] Segments Parameters

Parameter Description
PARAM("SEG",SEG)="" HL7 segment name
PARAM("SEG",SEG,"SEQ",SEQ,FLD#) segment sequence # and field

NOTE: If any special processing is required, in addition to the external value passed by VA FileMan, set the FLD# node equal to a formatting function:

    n^$$TAG^RTN(X)

Where:

  • n is the component sequence number.

  • X is the external value from VA FileMan.

    $P(segment_sequence,HLCS,n)=FM_external_value

 

Files Involving Sub-Records and Extended Reference

Parameter Description
PARAM("SEG",SEG,"SEQ",SEQ,"FILE") See VA FileMan documentation.
PARAM("SEG",SEG,"SEQ",SEQ,"IENS") $$GET1^DIQ() for value.
PARAM("SEG",SEG,"SEQ",SEQ,"FIELD") of FILE, IENS, & FIELD.
PARAM("SEG",SEG,"SEQ",SEQ,"KEY") .01 value.
PARAM("SEG",SEG,"SEQ",SEQ,"FORMAT") format non ST data types.

NOTE: Query group records store PARAM in the ^TMP global with the following root:

    ^TMP("XUMF MFS",$J,"PARAM",IEN)

For example: MFE PKV node is:

    ^TMP("XUMF MFS",$J,"PARAM",IEN,"PKV")

Output

error:

Returns:

    1^Error message text

Example

The following example is a query (MFQ) for a group records array:

>D MAIN^XUMFP(4,"ALL",7,.PARAM,.ERROR)

Since query group records store PARAM in the ^TMP global, display the ^TMP global to see the PARAM values:

>D ^%G

Global ^TMP("XUMF MFS",$J
        TMP("XUMF MFS",$J
^TMP("XUMF MFS",539017563,"PARAM","DRDT") = 
^TMP("XUMF MFS",539017563,"PARAM","DRT") = 
^TMP("XUMF MFS",539017563,"PARAM","ENDT") = 
^TMP("XUMF MFS",539017563,"PARAM","FLEC") = UPD
^TMP("XUMF MFS",539017563,"PARAM","MFAI") = 
^TMP("XUMF MFS",539017563,"PARAM","MFEEDT") = 20010212110654
^TMP("XUMF MFS",539017563,"PARAM","MFI") = Z04
^TMP("XUMF MFS",539017563,"PARAM","MFIEDT") = 
^TMP("XUMF MFS",539017563,"PARAM","MFNCID") = 
^TMP("XUMF MFS",539017563,"PARAM","POST") = POST^XUMFP4C
^TMP("XUMF MFS",539017563,"PARAM","PRE") = PRE^XUMFP4C
^TMP("XUMF MFS",539017563,"PARAM","PROTOCOL") = 2233
^TMP("XUMF MFS",539017563,"PARAM","QDT") = 20010212110654
^TMP("XUMF MFS",539017563,"PARAM","QFC") = R
^TMP("XUMF MFS",539017563,"PARAM","QID") = Z04 ARRAY
^TMP("XUMF MFS",539017563,"PARAM","QLR") = RD~999
^TMP("XUMF MFS",539017563,"PARAM","QP") = I
^TMP("XUMF MFS",539017563,"PARAM","QRL") = 
^TMP("XUMF MFS",539017563,"PARAM","RLC") = NE
^TMP("XUMF MFS",539017563,"PARAM","RLEC") = MUP
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",1,.01) = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",2,99) = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",3,11) = ID
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",4,13) = CE^~FACILITY TYPE~VA
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",5,100) = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",6,101) = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",7,.02) = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",8,"DTYP") = CE^~VISN~VA
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",8,"FIELD") = 1
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",8,"FILE") = 4.014
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",8,"IENS") = 1,?+1,
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",9,"DTYP") = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",9,"FIELD") = 1:99
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",9,"FILE") = 4.014
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",9,"IENS") = 2,?+1,
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",10,"DTYP") = DT
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",10,"FIELD") = .01
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",10,"FILE") = 4.999
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",11,"DTYP") = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",11,"FIELD") = .06:99
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",11,"FILE") = 4.999
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",12,"DTYP") = DT
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",12,"FIELD") = .01
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",12,"FILE") = 4.999
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",13,"DTYP") = ST
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",13,"FIELD") = .05:99
^TMP("XUMF MFS",539017563,"PARAM","SEG","ZIN","SEQ",13,"FILE") = 4.999
^TMP("XUMF MFS",539017563,"PARAM","SEGMENT") = ZIN
^TMP("XUMF MFS",539017563,"PARAM","WDCVQ") = 
^TMP("XUMF MFS",539017563,"PARAM","WDDC") = INFRASTRUCTURE~INFORMATION INFRASTRUCTURE ~VA TS
^TMP("XUMF MFS",539017563,"PARAM","WHAT") = 4~IFN~VA FM
^TMP("XUMF MFS",539017563,"PARAM","WHO") = ALL~~~~~~~~D~045A4