Skip to content

/AWS1/CL_DYN=>UPDATEGLOBALTABLESETTINGS()

About UpdateGlobalTableSettings

Updates settings for a global table.

This documentation is for version 2017.11.29 (Legacy) of global tables, which should be avoided for new global tables. Customers should use Global Tables version 2019.11.21 (Current) when possible, because it provides greater flexibility, higher efficiency, and consumes less write capacity than 2017.11.29 (Legacy).

To determine which version you're using, see Determining the global table version you are using. To update existing global tables from version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see Upgrading global tables.

Method Signature

IMPORTING

Required arguments:

iv_globaltablename TYPE /AWS1/DYNTABLENAME /AWS1/DYNTABLENAME

The name of the global table

Optional arguments:

iv_globaltablebillingmode TYPE /AWS1/DYNBILLINGMODE /AWS1/DYNBILLINGMODE

The billing mode of the global table. If GlobalTableBillingMode is not specified, the global table defaults to PROVISIONED capacity billing mode.

  • PROVISIONED - We recommend using PROVISIONED for predictable workloads. PROVISIONED sets the billing mode to Provisioned capacity mode.

  • PAY_PER_REQUEST - We recommend using PAY_PER_REQUEST for unpredictable workloads. PAY_PER_REQUEST sets the billing mode to On-demand capacity mode.

iv_glbtableprovwritecapunits TYPE /AWS1/DYNPOSITIVELONGOBJECT /AWS1/DYNPOSITIVELONGOBJECT

The maximum number of writes consumed per second before DynamoDB returns a ThrottlingException.

io_glbtblprovwritecapasstg00 TYPE REF TO /AWS1/CL_DYNAUTOSCSTGSUPDATE /AWS1/CL_DYNAUTOSCSTGSUPDATE

Auto scaling settings for managing provisioned write capacity for the global table.

it_glbtableglbsecidxstgsupd TYPE /AWS1/CL_DYNGLBTBLGLBSECIDXS00=>TT_GLBTBLGLBSECIDXSTGSUPDLIST TT_GLBTBLGLBSECIDXSTGSUPDLIST

Represents the settings of a global secondary index for a global table that will be modified.

it_replicasettingsupdate TYPE /AWS1/CL_DYNREPLICASTGSUPDATE=>TT_REPLICASETTINGSUPDATELIST TT_REPLICASETTINGSUPDATELIST

Represents the settings for a global table in a Region that will be modified.

RETURNING

oo_output TYPE REF TO /aws1/cl_dynupdglbtablestgsout /AWS1/CL_DYNUPDGLBTABLESTGSOUT

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->/aws1/if_dyn~updateglobaltablesettings(
  io_glbtblprovwritecapasstg00 = new /aws1/cl_dynautoscstgsupdate(
    io_scalingpolicyupdate = new /aws1/cl_dynautoscpolicyupdate(
      io_targettrkscapolicyconf = new /aws1/cl_dynastgttrkscaplyco01(
        iv_disablescalein = ABAP_TRUE
        iv_scaleincooldown = 123
        iv_scaleoutcooldown = 123
        iv_targetvalue = '0.1'
      )
      iv_policyname = |string|
    )
    iv_autoscalingdisabled = ABAP_TRUE
    iv_autoscalingrolearn = |string|
    iv_maximumunits = 123
    iv_minimumunits = 123
  )
  it_glbtableglbsecidxstgsupd = VALUE /aws1/cl_dynglbtblglbsecidxs00=>tt_glbtblglbsecidxstgsupdlist(
    (
      new /aws1/cl_dynglbtblglbsecidxs00(
        io_provwritecapautoscstgsupd = new /aws1/cl_dynautoscstgsupdate(
          io_scalingpolicyupdate = new /aws1/cl_dynautoscpolicyupdate(
            io_targettrkscapolicyconf = new /aws1/cl_dynastgttrkscaplyco01(
              iv_disablescalein = ABAP_TRUE
              iv_scaleincooldown = 123
              iv_scaleoutcooldown = 123
              iv_targetvalue = '0.1'
            )
            iv_policyname = |string|
          )
          iv_autoscalingdisabled = ABAP_TRUE
          iv_autoscalingrolearn = |string|
          iv_maximumunits = 123
          iv_minimumunits = 123
        )
        iv_indexname = |string|
        iv_provwritecapacityunits = 123
      )
    )
  )
  it_replicasettingsupdate = VALUE /aws1/cl_dynreplicastgsupdate=>tt_replicasettingsupdatelist(
    (
      new /aws1/cl_dynreplicastgsupdate(
        io_rplprovreadcapautoscstg00 = new /aws1/cl_dynautoscstgsupdate(
          io_scalingpolicyupdate = new /aws1/cl_dynautoscpolicyupdate(
            io_targettrkscapolicyconf = new /aws1/cl_dynastgttrkscaplyco01(
              iv_disablescalein = ABAP_TRUE
              iv_scaleincooldown = 123
              iv_scaleoutcooldown = 123
              iv_targetvalue = '0.1'
            )
            iv_policyname = |string|
          )
          iv_autoscalingdisabled = ABAP_TRUE
          iv_autoscalingrolearn = |string|
          iv_maximumunits = 123
          iv_minimumunits = 123
        )
        it_rplglbsecindexstgsupdate = VALUE /aws1/cl_dynrplglbsecidxstgsup=>tt_rplglbsecindexstgsupdlist(
          (
            new /aws1/cl_dynrplglbsecidxstgsup(
              io_provreadcapautoscstgsupd = new /aws1/cl_dynautoscstgsupdate(
                io_scalingpolicyupdate = new /aws1/cl_dynautoscpolicyupdate(
                  io_targettrkscapolicyconf = new /aws1/cl_dynastgttrkscaplyco01(
                    iv_disablescalein = ABAP_TRUE
                    iv_scaleincooldown = 123
                    iv_scaleoutcooldown = 123
                    iv_targetvalue = '0.1'
                  )
                  iv_policyname = |string|
                )
                iv_autoscalingdisabled = ABAP_TRUE
                iv_autoscalingrolearn = |string|
                iv_maximumunits = 123
                iv_minimumunits = 123
              )
              iv_indexname = |string|
              iv_provreadcapacityunits = 123
            )
          )
        )
        iv_regionname = |string|
        iv_replicaprovreadcapunits = 123
        iv_replicatableclass = |string|
      )
    )
  )
  iv_glbtableprovwritecapunits = 123
  iv_globaltablebillingmode = |string|
  iv_globaltablename = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_tablename = lo_result->get_globaltablename( ).
  LOOP AT lo_result->get_replicasettings( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_regionname = lo_row_1->get_regionname( ).
      lv_replicastatus = lo_row_1->get_replicastatus( ).
      lo_billingmodesummary = lo_row_1->get_replicabillingmodesumm( ).
      IF lo_billingmodesummary IS NOT INITIAL.
        lv_billingmode = lo_billingmodesummary->get_billingmode( ).
        lv_date = lo_billingmodesummary->get_lastupdtopayperreqdate00( ).
      ENDIF.
      lv_nonnegativelongobject = lo_row_1->get_replicaprovreadcapunits( ).
      lo_autoscalingsettingsdesc = lo_row_1->get_rplprovreadcapautoscstgs( ).
      IF lo_autoscalingsettingsdesc IS NOT INITIAL.
        lv_positivelongobject = lo_autoscalingsettingsdesc->get_minimumunits( ).
        lv_positivelongobject = lo_autoscalingsettingsdesc->get_maximumunits( ).
        lv_booleanobject = lo_autoscalingsettingsdesc->get_autoscalingdisabled( ).
        lv_string = lo_autoscalingsettingsdesc->get_autoscalingrolearn( ).
        LOOP AT lo_autoscalingsettingsdesc->get_scalingpolicies( ) into lo_row_2.
          lo_row_3 = lo_row_2.
          IF lo_row_3 IS NOT INITIAL.
            lv_autoscalingpolicyname = lo_row_3->get_policyname( ).
            lo_autoscalingtargettracki = lo_row_3->get_targettrkscapolicyconf( ).
            IF lo_autoscalingtargettracki IS NOT INITIAL.
              lv_booleanobject = lo_autoscalingtargettracki->get_disablescalein( ).
              lv_integerobject = lo_autoscalingtargettracki->get_scaleincooldown( ).
              lv_integerobject = lo_autoscalingtargettracki->get_scaleoutcooldown( ).
              lv_doubleobject = lo_autoscalingtargettracki->get_targetvalue( ).
            ENDIF.
          ENDIF.
        ENDLOOP.
      ENDIF.
      lv_nonnegativelongobject = lo_row_1->get_replicaprovwritecapunits( ).
      lo_autoscalingsettingsdesc = lo_row_1->get_rplprovwritecapautoscs00( ).
      IF lo_autoscalingsettingsdesc IS NOT INITIAL.
        lv_positivelongobject = lo_autoscalingsettingsdesc->get_minimumunits( ).
        lv_positivelongobject = lo_autoscalingsettingsdesc->get_maximumunits( ).
        lv_booleanobject = lo_autoscalingsettingsdesc->get_autoscalingdisabled( ).
        lv_string = lo_autoscalingsettingsdesc->get_autoscalingrolearn( ).
        LOOP AT lo_autoscalingsettingsdesc->get_scalingpolicies( ) into lo_row_2.
          lo_row_3 = lo_row_2.
          IF lo_row_3 IS NOT INITIAL.
            lv_autoscalingpolicyname = lo_row_3->get_policyname( ).
            lo_autoscalingtargettracki = lo_row_3->get_targettrkscapolicyconf( ).
            IF lo_autoscalingtargettracki IS NOT INITIAL.
              lv_booleanobject = lo_autoscalingtargettracki->get_disablescalein( ).
              lv_integerobject = lo_autoscalingtargettracki->get_scaleincooldown( ).
              lv_integerobject = lo_autoscalingtargettracki->get_scaleoutcooldown( ).
              lv_doubleobject = lo_autoscalingtargettracki->get_targetvalue( ).
            ENDIF.
          ENDIF.
        ENDLOOP.
      ENDIF.
      LOOP AT lo_row_1->get_rplglobalsecindexstgs( ) into lo_row_4.
        lo_row_5 = lo_row_4.
        IF lo_row_5 IS NOT INITIAL.
          lv_indexname = lo_row_5->get_indexname( ).
          lv_indexstatus = lo_row_5->get_indexstatus( ).
          lv_positivelongobject = lo_row_5->get_provreadcapacityunits( ).
          lo_autoscalingsettingsdesc = lo_row_5->get_provreadcapautoscstgs( ).
          IF lo_autoscalingsettingsdesc IS NOT INITIAL.
            lv_positivelongobject = lo_autoscalingsettingsdesc->get_minimumunits( ).
            lv_positivelongobject = lo_autoscalingsettingsdesc->get_maximumunits( ).
            lv_booleanobject = lo_autoscalingsettingsdesc->get_autoscalingdisabled( ).
            lv_string = lo_autoscalingsettingsdesc->get_autoscalingrolearn( ).
            LOOP AT lo_autoscalingsettingsdesc->get_scalingpolicies( ) into lo_row_2.
              lo_row_3 = lo_row_2.
              IF lo_row_3 IS NOT INITIAL.
                lv_autoscalingpolicyname = lo_row_3->get_policyname( ).
                lo_autoscalingtargettracki = lo_row_3->get_targettrkscapolicyconf( ).
                IF lo_autoscalingtargettracki IS NOT INITIAL.
                  lv_booleanobject = lo_autoscalingtargettracki->get_disablescalein( ).
                  lv_integerobject = lo_autoscalingtargettracki->get_scaleincooldown( ).
                  lv_integerobject = lo_autoscalingtargettracki->get_scaleoutcooldown( ).
                  lv_doubleobject = lo_autoscalingtargettracki->get_targetvalue( ).
                ENDIF.
              ENDIF.
            ENDLOOP.
          ENDIF.
          lv_positivelongobject = lo_row_5->get_provwritecapacityunits( ).
          lo_autoscalingsettingsdesc = lo_row_5->get_provwritecapautoscstgs( ).
          IF lo_autoscalingsettingsdesc IS NOT INITIAL.
            lv_positivelongobject = lo_autoscalingsettingsdesc->get_minimumunits( ).
            lv_positivelongobject = lo_autoscalingsettingsdesc->get_maximumunits( ).
            lv_booleanobject = lo_autoscalingsettingsdesc->get_autoscalingdisabled( ).
            lv_string = lo_autoscalingsettingsdesc->get_autoscalingrolearn( ).
            LOOP AT lo_autoscalingsettingsdesc->get_scalingpolicies( ) into lo_row_2.
              lo_row_3 = lo_row_2.
              IF lo_row_3 IS NOT INITIAL.
                lv_autoscalingpolicyname = lo_row_3->get_policyname( ).
                lo_autoscalingtargettracki = lo_row_3->get_targettrkscapolicyconf( ).
                IF lo_autoscalingtargettracki IS NOT INITIAL.
                  lv_booleanobject = lo_autoscalingtargettracki->get_disablescalein( ).
                  lv_integerobject = lo_autoscalingtargettracki->get_scaleincooldown( ).
                  lv_integerobject = lo_autoscalingtargettracki->get_scaleoutcooldown( ).
                  lv_doubleobject = lo_autoscalingtargettracki->get_targetvalue( ).
                ENDIF.
              ENDIF.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDLOOP.
      lo_tableclasssummary = lo_row_1->get_replicatableclasssummary( ).
      IF lo_tableclasssummary IS NOT INITIAL.
        lv_tableclass = lo_tableclasssummary->get_tableclass( ).
        lv_date = lo_tableclasssummary->get_lastupdatedatetime( ).
      ENDIF.
    ENDIF.
  ENDLOOP.
ENDIF.