Controlling Domain Lists

Idea created by mmounzer-esristaff Employee on Apr 4, 2013
    • chadburn
    • mwawryk
    • BlairServicessLLC
    Esri Software Enhancement Request
    From Southwest Gas
    Enhancement title: Domain Values Viewing and Selection

    During the life of any given Feature Class, the domain values of various attributes may evolve over time.  Some values may be retired and removed from the database, while other values may no longer be current but cannot be removed from the database, because older features in the database still have these values.  Some other domain values may not be available for certain period and available for other periods. 
    Under normal circumstances, values that have not been removed from the database may be required to be displayed, but not be available for selection for new features during an editing session.  These may need to be greyed-out so end users can see them but not be able to select them during an editing session.  Some selected users, or supervisors, may want to have the ability to edit these values when required, and they want these to be made available for them, so they can select them from the domain list (making them selectable).
    Following is a concrete example of this discussion:
    Feature Class—Gas Distribution Main
    Attribute Field –Material
    •           Material Domain:           
      •                     Steel
      •                     PE 8100
      •                     PE8000 
      •                     PE7000
      •                     PVC
      •                     Copper
    1.           All values other than Steel and PE 8100 are not available for new construction, but all the listed values are contained in the database.
    2.           Non-available values may be made available for certain period(s), and/or for certain users for specific period(s)
    We request a software enhancement that allows each domain value to be displayed, but all except Steel and PE 8100 are greyed-out for certain users, and available for others. 
    Implementation of this enhancement can be a display attribute value of 1, 2 or 3 (implementation may or may not be done in this way; this description has been crafted for clarity).  Each value would correspond to:
    •           1-Display this value and value is selectable
    •           2-Display this value, value is non-selectable (greyed-out)
    •           3-Do not display the value, value is non-selectable
    By using a domain display attribute value of 1 or 2 all value could be displayed, with only the active values selectable.  The display attribute value of 3 allows for the choice of non-display, non-selectable if desired.
    Such a setup restricts and minimizes the choices available to editors and minimizes the creation of error in domain selection (pre-verification) on the input side rather than attempting to capture errors on the back end via QC/QA processes.
    Certain circumstances may require an authorized Editor to select a Domain value with a display attribute value of 2.  Given sufficient permissions (and via configuration), this should be allowed to occur on a user by user/session by session basis.