Fileman Documentation

From VistApedia
Revision as of 00:23, 16 February 2010 by Kdtop (talk | contribs) (Cross Reference Stuff)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Missing Documentation

Cross Reference Stuff

A sign that a cross reference exists is here:

 ^DD(filenumber,0,"IX",x-ref name,(sub)filenumber,field)=""

The details of the cross reference is stored here:

 ^DD(filenumber,field,1,Index#,0)=FileNumber^x-ref name^[MUMPS]
 ^DD(filenumber,field,1,Index#,1)=mumps code to set (create) xref entry for X
 ^DD(filenumber,field,1,Index#,2)=mumps code to kill (delete) xref entry for X
 ^DD(filenumber,field,1,Index#,3)=No delete message (optional)
 ^DD(filenumber,field,1,Index#,"%D",0)=header of description
 ^DD(filenumber,field,1,Index#,"%D",1,0)=<first line of description>
 ^DD(filenumber,field,1,Index#,"%D",2,0)=<second line of description>
 ^DD(filenumber,field,1,Index#,"DT")=modification date
 ...

There is a cross reference of cross references here. It tells which fields have cross references.

 ^DD(filenumber,"IX",field)=""

If a file contains a multiple field (i.e. a subfile), and that subfile has its own cross-references, then information about these will be stored at:

 ^DD(sub-filenumber,0,"IX",...
 ^DD(sub-filenumber,field,...


Q: How to specify a cross reference as NO DELETE:

A: (From Marianne) I don't see it in the documentation, but I found a few in files I have. Look at

 ^DD(file#,field#,1,crossref#,3). 

In my examples, it is set to text. I can't find the FileMan routine that references that right now to see if it is the mere existence or a $T to determine if the crossreference can be deleted, but I think it is just it's existence, since it is set using the Utility functions which prompts for "NO-DELETION MESSAGE", which is a field at ^DD(.1,3) and is a field in the CROSS-REFERENCE file.


More about answer above. File .1 (CROSS-REFERENCE) is defined in the Data dictionary. But It can't be examined with data dictionary tools. It is stored in ^DD(.1). That is to say that the file itself is stored there, I can't see that this file itself has a data dictionary definition. I believe this information is used by fileman during creating, deleting, or editing a cross-reference.

 ^DD(.1,.01) -- not sure what all this does
 ^DD(.1,1) -- holds information about SET'ing cross-references
 ^DD(.1,2) -- holds information about KILL'ong cross-references
 ^DD(.1,3) -- holds information about NO DELETE.