STANDARD DATA DICTIONARY #409.64 -- QUERY OBJECT FILE                                                             3/24/25    PAGE 1
STORED IN ^SD(409.64,  (1 ENTRY)   SITE: WWW.BMIRWIN.COM   UCI: VISTA,VISTA                                        (VERSION 5.3)   

DATA          NAME                  GLOBAL        DATA
ELEMENT       TITLE                 LOCATION      TYPE
-----------------------------------------------------------------------------------------------------------------------------------
 This table contains the query object definition for a specific database 
 file supported by a custodial package. This definition specifies any specific 
 mehtods and properties that are needed beyond the generic methods and 
 properties available.  
 
 Using this query object interface, custodial packages can allow access 
 to internal data entries to other packages without direct global access 
 and integration agreements.  
 


              DD ACCESS: @
              RD ACCESS: @
              WR ACCESS: @
             DEL ACCESS: @
           LAYGO ACCESS: @
           AUDIT ACCESS: @

CROSS
REFERENCED BY: NAME(B)



409.64,.01    NAME                   0;1 FREE TEXT (Required)

              INPUT TRANSFORM:  K:$L(X)>40!($L(X)<3)!'(X'?1P.E) X
              LAST EDITED:      JUL 21, 1997 
              HELP-PROMPT:      Answer must be 3-40 characters in length. 
              DESCRIPTION:       This property contains the name of the query object being defined.  
                                 
                                 The name should be namespaced.  

              CROSS-REFERENCE:  409.64^B 
                                1)= S ^SD(409.64,"B",$E(X,1,30),DA)=""
                                2)= K ^SD(409.64,"B",$E(X,1,30),DA)


409.64,.02    FILE                   0;2 POINTER TO FILE FILE (#1)

              LAST EDITED:      AUG 14, 1997 
              DESCRIPTION:       This property contains the name of the file associated with this query object 
                                 definition.  
                                 
                                 (Note: It is possible to have a file associated with more than 
                                        one query object definition.) 


409.64,.03    SUBSCRIPTS IN GLOBAL ROOT 0;3 NUMBER

              INPUT TRANSFORM:  K:+X'=X!(X>9)!(X<0)!(X?.E1"."1N.N) X
              LAST EDITED:      AUG 04, 1997 
              HELP-PROMPT:      Type a Number between 0 and 9, 0 Decimal Digits 
              DESCRIPTION:       This property contains the number of subscripts in the global root for 
                                 the file associated with this query object definition.  
                                 
                                 Examples:   
                                   
                                    Global Root            Level 
                                    -----------            -----
                                     ^SCE                   0 
                                     ^SCPT(404.42)          1 
                                             
                                 
                                 This property is needed by some methods when the intrinic $QSUBCRIPT 
                                 function is executed.  


409.64,.04    $STORAGE LIMIT         0;4 NUMBER

              INPUT TRANSFORM:  K:+X'=X!(X>300000)!(X<5000)!(X?.E1"."1N.N) X
              LAST EDITED:      SEP 25, 1997 
              HELP-PROMPT:      Type a Number between 5000 and 300000, 0 Decimal Digits 
              DESCRIPTION:       This property indicates the trigger value of $STORAGE that causes 
                                 the query object data to be stored in ^TMP global instead of a local array.  
                                 (The local variable is the default.) 
                                 
                                 If the $STORAGE is less than the Property value then store in global.  
                                 
                                 Examples: 
                                           $Storage Value     Property Value     Query Stored in...  
                                           ==============     ==============     ==================
                                                30000             10000               local 
                                                 5000             10000               global 
                                 
                                 

              TECHNICAL DESCR:
                                See DESCRIPTION field.  


409.64,.07    OK TO TRANSPORT?       0;7 SET

                                '0' FOR NOT OK; 
                                '1' FOR OK; 
              LAST EDITED:      JUL 21, 1997 
              DESCRIPTION:       This field indicates to the transport utility if this 
                                 query template should be distributed.  
                                 


409.64,101    OPEN METHOD            OPEN;E1,245 MUMPS

              INPUT TRANSFORM:  K:$L(X)>245 X D:$D(X) ^DIM
              LAST EDITED:      JUL 21, 1997 
              HELP-PROMPT:      This is Standard MUMPS code. 
              DESCRIPTION:       This property contains any query specific open logic that the 
                                 custodial pacakge needs performed. This logic is executed 
                                 after the generic open logic is performed.  

              WRITE AUTHORITY:  @

409.64,102    CLOSE METHOD           CLOSE;E1,245 MUMPS

              INPUT TRANSFORM:  K:$L(X)>245 X D:$D(X) ^DIM
              LAST EDITED:      JUL 21, 1997 
              HELP-PROMPT:      This is Standard MUMPS code. 
              DESCRIPTION:       This property contains any query specific close logic that the 
                                 custodial pacakge needs performed. This logic is executed 
                                 before the generic close logic is performed.  
                                 

              WRITE AUTHORITY:  @

409.64,103    SCAN METHOD            SCAN;E1,245 MUMPS (Required)

              INPUT TRANSFORM:  K:$L(X)>245 X D:$D(X) ^DIM
              LAST EDITED:      JUL 24, 1997 
              HELP-PROMPT:      This is Standard MUMPS code. 
              DESCRIPTION:       This property contains query object specific logic that the custodial 
                                 package must specify that allows the use of the Scan method by 
                                 developers.  
                                 
                                 This scan logic typically hard codes references to supported indexes.  
                                 There is a significant performance reasons for the custidial packages 
                                 to develop this logic. The Next/Eof scanning approach is much slower then 
                                 using Scan/Scan Callback approach.  
                                 
                                 
                                 For more information, see API definitions for the following: 
                                    Scan 
                                    Scan Callback 
                                    Next 
                                    EOF 
                                    Prior 
                                    BOF 

              WRITE AUTHORITY:  @

409.64,104    ZERO NODE METHOD       ZERO;E1,245 MUMPS

              INPUT TRANSFORM:  K:$L(X)>245 X D:$D(X) ^DIM
              LAST EDITED:      JUL 30, 1997 
              HELP-PROMPT:      This is Standard MUMPS code. 
              DESCRIPTION:       This property contains any query specific logic that the 
                                 custodial pacakge needs performed to screen out unsupported 
                                 fields on the zero node.  
                                 
                                 Various methods of the query object need to make available to 
                                 developers the zero node of an entry. For example, during the execution 
                                 of the filters and scan callbacks, the zero node is made available 
                                 to developers in the variable Y0.  
                                 
                                 If the custodial package does not support all fields on the zero 
                                 node, then logic similar to the following needs to be specified 
                                 in this property: 
                                 
                                         S Y0=$$Y0^XXUTL(Y) 
                                                           ...where Y is the internal entry number 

              WRITE AUTHORITY:  @

409.64,200    SUPPORTED INDEXES      INDEX;0 Multiple #409.641

              DESCRIPTION:       This multiple contains index definitions that are supported 
                                 by the custodial package when the developer uses this query object 
                                 definition.  


409.641,.01     INDEX                  0;1 FREE TEXT (Multiply asked)

                INPUT TRANSFORM:  K:$L(X)>30!($L(X)<3) X
                LAST EDITED:      JUL 21, 1997 
                HELP-PROMPT:      Answer must be 3-30 characters in length. 
                DESCRIPTION:       This property is the name on the index supported by the custodial 
                                   package.  
                                   
                                   
                                   Note: This is not the name of the cross reference being used 
                                         internally. This is a easy to understand text that 
                                         describes the content of the cross reference.  
                                   
                                         For example: 
                                                      File: Patient 
                                           Cross Reference: B 
                                                     Index: PATIENT NAME 

                CROSS-REFERENCE:  409.641^B 
                                  1)= S ^SD(409.64,DA(1),"INDEX","B",$E(X,1,30),DA)=""
                                  2)= K ^SD(409.64,DA(1),"INDEX","B",$E(X,1,30),DA)


409.641,.02     CROSS REFERENCE        0;2 FREE TEXT

                INPUT TRANSFORM:  K:$L(X)>30!($L(X)<1) X
                LAST EDITED:      JUL 21, 1997 
                HELP-PROMPT:      Answer must be 1-30 characters in length. 
                DESCRIPTION:       This property indicates the specific internal VA FileMan cross reference 
                                   associated with the index being defined.  


409.641,.03     TYPE                   0;3 SET

                                  '1' FOR REGULAR; 
                                  '2' FOR REGULAR DATE/TIME; 
                                  '3' FOR COMPOSITE; 
                                  '4' FOR COMPOSITE DATE/TIME; 
                LAST EDITED:      JUL 21, 1997 
                DESCRIPTION:       This property indicates the type of index being defined. Based 
                                   on this type, various query object method will execute generic 
                                   logic that applies to all indexes of the specified type.  
                                   
                                   Note: Currently, 8/97, the 'COMPOSITE' type is not supported.  
                                   
                                   
                                   Examples: 
                                   
                                        Index                           Type 
                                        -----                           ----
                                        ^SCE("C",DFN,DA)                REGULAR 
                                        ^SCE("B",DATETIME,DA)           REGULAR DATE/TIME 
                                        ^SCE("ADFN",DFN,DATETIME,DA)    COMPOSITE DATE/TIME 


409.641,101     CUSTOM NODE VALIDATOR  VALIDATOR;E1,245 MUMPS

                INPUT TRANSFORM:  K:$L(X)>245 X D:$D(X) ^DIM
                LAST EDITED:      JUL 21, 1997 
                HELP-PROMPT:      This is Standard MUMPS code. 
                DESCRIPTION:       This property contains any query specific validator logic that the 
                                   custodial pacakge needs performed. This logic is executed 
                                   after the various methods execute the intrinic $QUERY function.  
                                   Normally, the generic validator associated with the index type is 
                                   sufficient and no custom logic is required.  
                                   
                                   The validator checks to see if $QUERY returns a value that is 
                                   beyond the scope of the query object's properties. For example, 
                                   if your query is for a specific patient, the validator will 
                                   check if a new patient has been reached by $QUERY.  

                WRITE AUTHORITY:  @




      FILES POINTED TO                      FIELDS

FILE (#1)                         FILE (#.02)



INPUT TEMPLATE(S):

PRINT TEMPLATE(S):

SORT TEMPLATE(S):

FORM(S)/BLOCK(S):