Skip to main content

Specifying Globals and Subscript Ranges to Check

Specifying Globals and Subscript Ranges to Check

DataCheck lets you specify global names and subscript ranges to include in or exclude from checking using the options detailed in the following.

Note:

Only literal values are accepted as global names and subscripts when specifying global and subscript ranges.

  • Check All Globals in All [Mapped / Mirrored] Databases — Checks all globals in all mapped databases in non-mirror-based configurations; in mirror-based configurations, checks all globals in all mirrored databases.

  • Include/Exclude Some Globals/Databases — Checks globals in the selected database based on the specified mask(s). Subscripts are not allowed.

    You can add/edit a mask or comma-separated list of masks, as follows:

    • * — Checks all globals (default).

    • * as the last character — Checks all globals starting with the preceding character(s).

    • ' before a mask — Excludes globals from being checked.

    For example:

    • ABC* — all global names starting with ABC

    • A:D — all global names from A to D

    • A:D,Y* — all global names from A to D, and starting with Y

    • *,'C*,'D* — all globals except those starting with C or D

    • '* — exclude all globals

    In addition to defining a global selection mask for specific databases, you can explicitly set a “default global selection mask” that is used for databases for which no global selection mask has been defined. Initially, the default mask to set to *.

    Note:

    For mirror-based DataCheck, newly added mirrored databases are included in the next check. Therefore, if you do not want newly added mirrored databases to be checked automatically, set the default mask to '*.

    For example, to specify a default mask for all databases for which no mask is defined (*,'^DontCheckMe) as well as specify a global selection mask (A:D) specifically for the USER and USER2 databases, do the following from the Edit Configuration submenu of the ^DATACHECK routine (see ^DATACHECK Routine, later in this chapter):

    1) Import Settings from a Shadow
    2) Connection Settings
    3) Database Mappings
    4) Globals to Check
    5) Performance Settings
    6) Manage Workflow
     
    Option? 4
     
    1) Check All Globals in All Mapped Databases
    2) Include/Exclude Some Globals/Databases
    3) Include/Exclude Some Globals/Databases and Subscript Ranges
     
    Option? 1 => 2
    Save changes? Yes =>
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
     
    Option? 2
    Enter a mask string, * to include all, '* to exclude all, ? for help
    Mask: * => *,'^DontCheckMe
    Save changes? Yes =>
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
     
    Option? 3
     
    1) C:\InterSystems\IRIS\mgr\docbook\ [no mask defined, use default]
    2) C:\InterSystems\IRIS\mgr\user\ [no mask defined, use default]
    3) C:\InterSystems\IRIS\mgr\user2\ [no mask defined, use default]
     
    Database (multiple selections allowed): 2,3
    Enter a mask string, * to include all, '* to exclude all, ? for help
                         ! to delete this mask and revert to default
    Mask: A:D
     
    1) C:\InterSystems\IRIS\mgr\docbook\ [no mask defined, use default]
    2) C:\InterSystems\IRIS\mgr\user\ [A:D]
    3) C:\InterSystems\IRIS\mgr\user2\ [A:D]
     
    Database (multiple selections allowed):
    Save changes? Yes =>
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
     
    Option?
    
  • Include/Exclude Some Globals/Databases and Subscript Ranges — In addition to letting you perform the same tasks as the Include/Exclude Some Globals/Databases option, this option lets you identify subscript ranges in specific globals; global subscript ranges marked for inclusion are included whether or not the global is included in the global selection mask. For all subscript ranges within DataCheck, the beginning of a range is inclusive and the end exclusive.

    Note:

    DataCheck may mark data in an excluded range as matched if this is determined in the course of its operation. Discrepancies in excluded ranges, however, are never marked.

    For example, continuing with the preceding example, in which you specified a global selection mask (A:D) for the USER2 database; you can include a subscript range in the ^NAME global by responding to the prompts, as follows:

    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
     
    Option? 1
     
    1) Check All Globals in All Mapped Databases
    2) Include/Exclude Some Globals/Databases
    3) Include/Exclude Some Globals/Databases and Subscript Ranges
     
    Option? 2 => 3
    Save changes? Yes =>
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
    5) Add/Edit Subscript Ranges for a Global
    6) Delete All Subscript Ranges for a Global
    7) Delete All Subscript Ranges
    8) View Defined Subscript Ranges
     
    Option? 5
     
    1) C:\InterSystems\IRIS\mgr\docbook\
    2) C:\InterSystems\IRIS\mgr\user\
    3) C:\InterSystems\IRIS\mgr\user2\
     
    Database: 3 C:\InterSystems\IRIS\mgr\user2\
    Global Name: ^NAME
    There are no subscript ranges defined for this global.
    You may start by including all or excluding all subscripts.
    Answer YES to include, NO to exclude: no
     
    C:\InterSystems\IRIS\mgr\user2\        ^NAME
            ^NAME --Excluded--> [end]
     
    From (inclusive):  ?
     
      Enter a global reference with or without subscripts or null for end.
      The leading ^ may be omitted.  For subscripted references the entire
      global name may be omitted and simply begin with open parentheses
     
    From (inclusive):  (10)
    To (exclusive):  (20)
    Answer YES to include, NO to exclude: yes
     
    C:\InterSystems\IRIS\mgr\user2\        ^NAME
            ^NAME --Excluded--> ^NAME(10)
            ^NAME(10) --Included--> ^NAME(20)
            ^NAME(20) --Excluded--> [end]
     
    From (inclusive):
    Continue editing subscript ranges for this global? Yes => no
     
    C:\InterSystems\IRIS\mgr\user2\        ^NAME
            ^NAME --Excluded--> ^NAME(10)
            ^NAME(10) --Included--> ^NAME(20)
            ^NAME(20) --Excluded--> [end]
     
    Save changes? Yes =>
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
    5) Add/Edit Subscript Ranges for a Global
    6) Delete All Subscript Ranges for a Global
    7) Delete All Subscript Ranges
    8) View Defined Subscript Ranges
     
    Option? 
    

    You can view the mask information as follows:

    Option? 4
    The default include/exclude mask is:
        *,'^DontCheckMe
     
    The following databases are using non-default global selection criteria
     
      C:\InterSystems\IRIS\mgr\user\
        A:D
      C:\InterSystems\IRIS\mgr\user2\
        * Has additional global subscript ranges to include/exclude that apply
          regardless of whether those globals are included in this mask.
        A:D
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
    5) Add/Edit Subscript Ranges for a Global
    6) Delete All Subscript Ranges for a Global
    7) Delete All Subscript Ranges
    8) View Defined Subscript Ranges
     
    Option? 
    

    Since the mask information includes a note about subscript ranges, you can display that information, as follows:

    Option? 8
    Device:
    Right margin: 80 =>
     
    DataCheck Destination System: GLOBTEST
    Global Selection Subscript Ranges
     
    C:\InterSystems\IRIS\mgr\user2\        ^NAME
            ^NAME --Excluded--> ^NAME(10)
            ^NAME(10) --Included--> ^NAME(20)
            ^NAME(20) --Excluded--> [end]
     
    1) Options for selecting globals to check
    2) Set default include/exclude mask for databases with no mask defined
    3) Add or remove include/exclude mask for databases
    4) View include/exclude masks
    5) Add/Edit Subscript Ranges for a Global
    6) Delete All Subscript Ranges for a Global
    7) Delete All Subscript Ranges
    8) View Defined Subscript Ranges
     
    Option?
    
FeedbackOpens in a new tab