Skip to content

/AWS1/IF_CNT=>CREATEMETRIC()

About CreateMetric

Creates a new metric definition for the specified Connect Customer instance. You can create custom metrics that use formulas referencing existing Amazon Web Services-managed metrics, optionally with filters applied.

Method Signature

METHODS /AWS1/IF_CNT~CREATEMETRIC
  IMPORTING
    !IV_INSTANCEID TYPE /AWS1/CNTINSTANCEID OPTIONAL
    !IV_NAME TYPE /AWS1/CNTMETRICNAME OPTIONAL
    !IO_METRICCALCULATION TYPE REF TO /AWS1/CL_CNTMETRICCALCULATION OPTIONAL
    !IV_UNIT TYPE /AWS1/CNTMETRICUNIT OPTIONAL
    !IV_STATUS TYPE /AWS1/CNTMETRICSTATUS OPTIONAL
    !IV_CLIENTTOKEN TYPE /AWS1/CNTCLIENTTOKEN OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/CNTMETRICDESCRIPTION OPTIONAL
    !IV_POSITIVETRENDINDICATOR TYPE /AWS1/CNTTRENDINDICATOR OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_CNTTAGMAP_W=>TT_TAGMAP OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_cntcreatemetricrsp
  RAISING
    /AWS1/CX_CNTACCESSDENIEDEX
    /AWS1/CX_CNTDUPLICATERESRCEX
    /AWS1/CX_CNTINTERNALSERVICEEX
    /AWS1/CX_CNTINVALIDPARAMETEREX
    /AWS1/CX_CNTINVALIDREQUESTEX
    /AWS1/CX_CNTLIMITEXCEEDEDEX
    /AWS1/CX_CNTRESOURCENOTFOUNDEX
    /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 identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

iv_name TYPE /AWS1/CNTMETRICNAME /AWS1/CNTMETRICNAME

The name of the metric.

io_metriccalculation TYPE REF TO /AWS1/CL_CNTMETRICCALCULATION /AWS1/CL_CNTMETRICCALCULATION

The calculation definition for the metric, including the formula expression and the component metrics it references.

iv_unit TYPE /AWS1/CNTMETRICUNIT /AWS1/CNTMETRICUNIT

The display unit for the metric's data.

Optional arguments:

iv_status TYPE /AWS1/CNTMETRICSTATUS /AWS1/CNTMETRICSTATUS

The publish status of the metric. Set to PUBLISHED to make the metric available for use in dashboards and reports, or SAVED to keep it in draft state.

iv_clienttoken TYPE /AWS1/CNTCLIENTTOKEN /AWS1/CNTCLIENTTOKEN

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

iv_description TYPE /AWS1/CNTMETRICDESCRIPTION /AWS1/CNTMETRICDESCRIPTION

The description of the metric.

iv_positivetrendindicator TYPE /AWS1/CNTTRENDINDICATOR /AWS1/CNTTRENDINDICATOR

How an increase in the metric value should be interpreted. Valid values: POSITIVE, NEUTRAL, NEGATIVE.

it_tags TYPE /AWS1/CL_CNTTAGMAP_W=>TT_TAGMAP TT_TAGMAP

The tags used to organize, track, or control access for this resource. For example, { "Tags": {"key1":"value1", "key2":"value2"} }.

RETURNING

oo_output TYPE REF TO /aws1/cl_cntcreatemetricrsp /AWS1/CL_CNTCREATEMETRICRSP

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->createmetric(
  io_metriccalculation = new /aws1/cl_cntmetriccalculation(
    it_calculationcomponents = VALUE /aws1/cl_cntcalccomponent=>tt_calculationcomponentlist(
      (
        new /aws1/cl_cntcalccomponent(
          it_metricfilters = VALUE /aws1/cl_cntmetricfilter=>tt_metricfilterlist(
            (
              new /aws1/cl_cntmetricfilter(
                io_booleancondition = new /aws1/cl_cntmetrcfilterblncond( |string| )
                io_numbercondition = new /aws1/cl_cntmetrcfilternumcond(
                  it_values = VALUE /aws1/cl_cntnumbervaluelist_w=>tt_numbervaluelist(
                    ( new /aws1/cl_cntnumbervaluelist_w( |0.1| ) )
                  )
                  iv_comparison = |string|
                )
                io_stringcondition = new /aws1/cl_cntmetrcfiltstrcond(
                  it_values = VALUE /aws1/cl_cntstringvaluelist_w=>tt_stringvaluelist(
                    ( new /aws1/cl_cntstringvaluelist_w( |string| ) )
                  )
                  iv_comparison = |string|
                )
                iv_metricfilterkey = |string|
                iv_negate = ABAP_TRUE
              )
            )
          )
          iv_alias = |string|
          iv_metricid = |string|
          iv_metricname = |string|
        )
      )
    )
    iv_calculation = |string|
  )
  it_tags = VALUE /aws1/cl_cnttagmap_w=>tt_tagmap(
    (
      VALUE /aws1/cl_cnttagmap_w=>ts_tagmap_maprow(
        key = |string|
        value = new /aws1/cl_cnttagmap_w( |string| )
      )
    )
  )
  iv_clienttoken = |string|
  iv_description = |string|
  iv_instanceid = |string|
  iv_name = |string|
  iv_positivetrendindicator = |string|
  iv_status = |string|
  iv_unit = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_arn = lo_result->get_metricarn( ).
  lv_metricid = lo_result->get_metricid( ).
ENDIF.