Skip to content

/AWS1/IF_CNT=>UPDATEDATATABLEATTRIBUTE()

About UpdateDataTableAttribute

Updates all properties for an attribute using all properties from CreateDataTableAttribute. There are no other granular update endpoints. It does not act as a patch operation - all properties must be provided. System managed attributes are not mutable by customers. Changing an attribute's validation does not invalidate existing values since validation only runs when values are created or updated.

Method Signature

METHODS /AWS1/IF_CNT~UPDATEDATATABLEATTRIBUTE
  IMPORTING
    !IV_INSTANCEID TYPE /AWS1/CNTINSTANCEID OPTIONAL
    !IV_DATATABLEID TYPE /AWS1/CNTDATATABLEID OPTIONAL
    !IV_ATTRIBUTENAME TYPE /AWS1/CNTDATATABLENAME OPTIONAL
    !IV_NAME TYPE /AWS1/CNTDATATABLENAME OPTIONAL
    !IV_VALUETYPE TYPE /AWS1/CNTDATATBLATTRVALUETYPE OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/CNTDATATABLEDESCRIPTION OPTIONAL
    !IV_PRIMARY TYPE /AWS1/CNTBOOLEAN OPTIONAL
    !IO_VALIDATION TYPE REF TO /AWS1/CL_CNTVALIDATION OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_cntupddatatblattrrsp
  RAISING
    /AWS1/CX_CNTACCESSDENIEDEX
    /AWS1/CX_CNTCONFLICTEXCEPTION
    /AWS1/CX_CNTINTERNALSERVICEEX
    /AWS1/CX_CNTINVALIDPARAMETEREX
    /AWS1/CX_CNTINVALIDREQUESTEX
    /AWS1/CX_CNTLIMITEXCEEDEDEX
    /AWS1/CX_CNTRESOURCENOTFOUNDEX
    /AWS1/CX_CNTSERVICEQUOTAEXCDEX
    /AWS1/CX_CNTTHROTTLINGEX
    /AWS1/CX_CNTCLIENTEXC
    /AWS1/CX_CNTSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_instanceid TYPE /AWS1/CNTINSTANCEID /AWS1/CNTINSTANCEID

The unique identifier for the Amazon Connect instance.

iv_datatableid TYPE /AWS1/CNTDATATABLEID /AWS1/CNTDATATABLEID

The unique identifier for the data table. Must also accept the table ARN with or without a version alias.

iv_attributename TYPE /AWS1/CNTDATATABLENAME /AWS1/CNTDATATABLENAME

The current name of the attribute to update. Used as an identifier since attribute names can be changed.

iv_name TYPE /AWS1/CNTDATATABLENAME /AWS1/CNTDATATABLENAME

The new name for the attribute. Must conform to Connect human readable string specification and be unique within the data table.

iv_valuetype TYPE /AWS1/CNTDATATBLATTRVALUETYPE /AWS1/CNTDATATBLATTRVALUETYPE

The updated value type for the attribute. When changing value types, existing values are not deleted but may return default values if incompatible.

Optional arguments:

iv_description TYPE /AWS1/CNTDATATABLEDESCRIPTION /AWS1/CNTDATATABLEDESCRIPTION

The updated description for the attribute.

iv_primary TYPE /AWS1/CNTBOOLEAN /AWS1/CNTBOOLEAN

Whether the attribute should be treated as a primary key. Converting to primary attribute requires existing values to maintain uniqueness.

io_validation TYPE REF TO /AWS1/CL_CNTVALIDATION /AWS1/CL_CNTVALIDATION

The updated validation rules for the attribute. Changes do not affect existing values until they are modified.

RETURNING

oo_output TYPE REF TO /aws1/cl_cntupddatatblattrrsp /AWS1/CL_CNTUPDDATATBLATTRRSP

Domain /AWS1/RT_ACCOUNT_ID
Primitive Type NUMC

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->updatedatatableattribute(
  io_validation = new /aws1/cl_cntvalidation(
    io_enum = new /aws1/cl_cntvalidationenum(
      it_values = VALUE /aws1/cl_cntvldtnenumvalues_w=>tt_validationenumvalues(
        ( new /aws1/cl_cntvldtnenumvalues_w( |string| ) )
      )
      iv_strict = ABAP_TRUE
    )
    iv_exclusivemaximum = '0.1'
    iv_exclusiveminimum = '0.1'
    iv_ignorecase = ABAP_TRUE
    iv_maximum = '0.1'
    iv_maxlength = 123
    iv_maxvalues = 123
    iv_minimum = '0.1'
    iv_minlength = 123
    iv_minvalues = 123
    iv_multipleof = '0.1'
  )
  iv_attributename = |string|
  iv_datatableid = |string|
  iv_description = |string|
  iv_instanceid = |string|
  iv_name = |string|
  iv_primary = ABAP_TRUE
  iv_valuetype = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_datatablename = lo_result->get_name( ).
  lo_datatablelockversion = lo_result->get_lockversion( ).
  IF lo_datatablelockversion IS NOT INITIAL.
    lv_string = lo_datatablelockversion->get_datatable( ).
    lv_string = lo_datatablelockversion->get_attribute( ).
    lv_string = lo_datatablelockversion->get_primaryvalues( ).
    lv_string = lo_datatablelockversion->get_value( ).
  ENDIF.
ENDIF.