Sequences and ID

The Value Method field in the DynamicValue table defines the actions that occur when the Attribute Assistant is enabled and features are modified or created in ArcMap. Four fields in the DynamicValue table (Value Method, Table Name, Field Name, and Value Info) must be configured to use an Attribute Assistant method. The remaining fields define when the Attribute Assistant method should be applied.

The following four Attribute Assistant methods can be configured in your DynamicValue table:

Method Description
Autonumber Finds the largest value in a field and calculates the next sequential value.
Generate ID Increments a row in an unversioned table and stores that newly incremented value.
Generate ID By Intersect Generates unique identifiers for features based on the identifiers of intersecting grid features.
GUID Creates a globally unique identifier (GUID).

Autonumber

Finds the largest value in a field and calculates the next sequential value.

To configure this method, populate the following in the DynamicValue table:

Table Name Field Name Value Method Value Info
Table or Feature class Field to autonumber AUTONUMBER Null or Blank

This rule can only be configured on an Integer field.

Parameters

There are no parameters for this method.

Examples

Populates the ASSETNUM field in wMain with the largest value incremented by one:

  • Table Name: wMain
  • Field Name: ASSETNUM
  • Value Info: <Null>


Generate ID

Increments a row in an unversioned table and stores that newly incremented value.

To configure this method, populate the following in the DynamicValue table:

Table Name Field Name Value Method Value Info
Table or feature class The field to contain the identifier GENERATE_ID Name|{Width}|{Format}[SEQ]|{Keep Existing}

This rule can be configured on any field type, but the format of the field should be coordinated with the format of your identifier.

Parameters

The method parameters are as follows:

Parameter Value Description
Name String The name of the sequence.
Width (Optional) Integer The minimum length of the identifier. If the current value of [SEQ] is shorter than this value, zeros will be added to the left of [SEQ] to create the specified width. This is only valid for string fields.
Format (Optional) String Static portion of the identifier.
[SEQ] Placeholder for the iterated value; [SEQ] may appear anywhere in the format string.
Keep Existing (Optional) True Limit the rule to only be triggered when the field is null. This will prohibit overwriting existing IDs.
False (Default) Trigger the rule to generate a new ID or overwrite the current ID, if it exists.

Examples

Increments the HYDSEQ value in the GenerateID table and stores this new value in the HYDID field in the hydrants layer:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: HYDSEQ

Left-pads the HYDSEQ value. In this example, if the HYDSEQ is 7, 39, or 1234 then the HYDID will be 0007, 0039, or 1234, respectively:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: HYDSEQ|4

Appends the HYDSEQ value to the text "Hydrant-". In this example, if the HYDSEQ is 7, 39, or 1234 then the HYDID will be Hydrant-7, Hydrant-39, or Hydrant-1234, respectively:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: HYDSEQ||Hydrant-[SEQ]

Do not overwrite existing HYDID values when this rule is executed:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: HYDSEQ||Hydrant-[SEQ]|True


Generate ID By Intersect

Generates unique identifiers for features based on the identifiers of intersecting grid features.

To configure this method, populate the following in the DynamicValue table:

Table Name Field Name Value Method Value Info
Table or feature class The field to contain the identifier GENERATE_ID_BY_INTERSECT Source|Source Field|Name|{Width}|{Format}[ID][SEQ]|{Keep existing}

This rule can be configured on any field type, but the format of the field should be coordinated with the format of your identifier.

Parameters

The method parameters are as follows:

Parameter Value Description
Source Polygon feature class or feature layer Grid features.
Source Field Field name Field containing grid identifiers.
Name String The name of the sequence.
Width (Optional) Integer The minimum length of the identifier. If the current value of [SEQ] is shorter than this value, zeros will be added to the left of [SEQ] to create the specified width. This is only valid for string fields.
Format (Optional) String Static portion of the identifier.
[ID] Placeholder for the grid identifier in the generated ID; [ID] may appear anywhere in the formatted string.
[SEQ] Placeholder for the iterated value; [SEQ] may appear anywhere in the format string.
Keep existing (Optional) True Limit the rule to only be triggered when the field is null. This will prohibit overwriting existing IDs.
False (Default) Trigger the rule to generate a new ID or overwrite the current ID, if it exists.

Examples

Increments the GRIDSEQ value in the GenerateID table and concatenates it with the GRIDID field value of the intersecting feature in the fireDistrict layer; this new value is stored the HYDID field in the hydrants layer. In this example, if the GRIDID of fireDistrict feature is 1 and the GRIDSEQ is 27, then the HYDID will be 127:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: fireDistrict|GRIDID|GRIDSEQ

Left-pads the GRIDSEQ value before concatenating with the intersecting GRIDID value. In this example, if the GRIDID of fireDistrict feature is 1 and the GRIDSEQ is 27, then the HYDID will be 10027:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: fireDistrict|GRIDID|GRIDSEQ|4

Concatenates the GRIDID and GRIDSEQ values and appends to the text "Hydrant ". In this example, if the GRIDID of fireDistrict feature is 1 and the GRIDSEQ is 27, then the HYDID will be "Hydrant 1-27":

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: fireDistrict|GRIDID|GRIDSEQ||Hydrant [ID]-[SEQ]

Do not overwrite existing HYDID values when this rule is executed:

  • Table Name: hydrants
  • Field Name: HYDID
  • Value Info: fireDistrict|GRIDID|GRIDSEQ||Hydrant [ID]-[SEQ]|True


GUID

Creates a globally unique identifier (GUID).

To configure this method, populate the following in the DynamicValue table:

Table Name Field Name Value Method Value Info
Table or feature class String field long enough to store the specified GUID format. GUID {Format}

Parameters

The method parameters are as follows:

Parameter Value Description
Format (Optional) N GUID with no special characters and length of 32 00000000000000000000000000000000
D GUID with dashes and length of 36 00000000-0000-0000-0000-000000000000
B (Default) GUID with dashes, braces, and length of 38 {00000000-0000-0000-0000-000000000000}
P GUID with dashes, parentheses, and length of 38 (00000000-0000-0000-0000-000000000000)

Examples

Stores a 38 character GUID in the PRIMARYKEY field in the wHydrant layer:

  • Table Name: wHydrant
  • Field Name: PRIMARYKEY
  • Value Info: <Null>

Stores a 32 character GUID in the PRIMARYKEY field in the wHydrant layer:

  • Table Name: wHydrant
  • Field Name: PRIMARYKEY
  • Value Info: N


Top