Skip to content

/AWS1/CL_ASP=>CREATESCALINGPLAN()

About CreateScalingPlan

Creates a scaling plan.

Method Signature

IMPORTING

Required arguments:

iv_scalingplanname TYPE /AWS1/ASPSCALINGPLANNAME /AWS1/ASPSCALINGPLANNAME

The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.

io_applicationsource TYPE REF TO /AWS1/CL_ASPAPPLICATIONSOURCE /AWS1/CL_ASPAPPLICATIONSOURCE

A CloudFormation stack or set of tags. You can create one scaling plan per application source.

For more information, see ApplicationSource in the AWS Auto Scaling API Reference.

it_scalinginstructions TYPE /AWS1/CL_ASPSCALINGINSTRUCTION=>TT_SCALINGINSTRUCTIONS TT_SCALINGINSTRUCTIONS

The scaling instructions.

For more information, see ScalingInstruction in the AWS Auto Scaling API Reference.

RETURNING

oo_output TYPE REF TO /aws1/cl_aspcreatescaplanrsp /AWS1/CL_ASPCREATESCAPLANRSP

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_asp~createscalingplan(
  io_applicationsource = new /aws1/cl_aspapplicationsource(
    it_tagfilters = VALUE /aws1/cl_asptagfilter=>tt_tagfilters(
      (
        new /aws1/cl_asptagfilter(
          it_values = VALUE /aws1/cl_asptagvalues_w=>tt_tagvalues(
            ( new /aws1/cl_asptagvalues_w( |string| ) )
          )
          iv_key = |string|
        )
      )
    )
    iv_cloudformationstackarn = |string|
  )
  it_scalinginstructions = VALUE /aws1/cl_aspscalinginstruction=>tt_scalinginstructions(
    (
      new /aws1/cl_aspscalinginstruction(
        io_customizedloadmetricspec = new /aws1/cl_aspcustizedloadmetpec(
          it_dimensions = VALUE /aws1/cl_aspmetricdimension=>tt_metricdimensions(
            (
              new /aws1/cl_aspmetricdimension(
                iv_name = |string|
                iv_value = |string|
              )
            )
          )
          iv_metricname = |string|
          iv_namespace = |string|
          iv_statistic = |string|
          iv_unit = |string|
        )
        io_predefinedloadmetricspec = new /aws1/cl_asppredefinedloadme00(
          iv_predefinedloadmetrictype = |string|
          iv_resourcelabel = |string|
        )
        it_targettrackingconfs = VALUE /aws1/cl_asptargettrackingconf=>tt_targettrackingconfs(
          (
            new /aws1/cl_asptargettrackingconf(
              io_customizedscalingmetpec = new /aws1/cl_aspcustizedscametpec(
                it_dimensions = VALUE /aws1/cl_aspmetricdimension=>tt_metricdimensions(
                  (
                    new /aws1/cl_aspmetricdimension(
                      iv_name = |string|
                      iv_value = |string|
                    )
                  )
                )
                iv_metricname = |string|
                iv_namespace = |string|
                iv_statistic = |string|
                iv_unit = |string|
              )
              io_predefinedscalingmetpec = new /aws1/cl_asppredefinedscamet00(
                iv_predefinedscametrictype = |string|
                iv_resourcelabel = |string|
              )
              iv_disablescalein = ABAP_TRUE
              iv_estimatedinstancewarmup = 123
              iv_scaleincooldown = 123
              iv_scaleoutcooldown = 123
              iv_targetvalue = '0.1'
            )
          )
        )
        iv_disabledynamicscaling = ABAP_TRUE
        iv_maxcapacity = 123
        iv_mincapacity = 123
        iv_predictivescalingmode = |string|
        iv_predictivescamaxcapbehav = |string|
        iv_predictivescamaxcapbuffer = 123
        iv_resourceid = |string|
        iv_scalabledimension = |string|
        iv_scalingpolicyupdatebehav = |string|
        iv_scheduledactionbuffertime = 123
        iv_servicenamespace = |string|
      )
    )
  )
  iv_scalingplanname = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_scalingplanversion = lo_result->get_scalingplanversion( ).
ENDIF.