Skip to content

/AWS1/CL_IOM=>LISTPROPERTIES()

About ListProperties

This API lists the properties of a component.

Method Signature

IMPORTING

Required arguments:

iv_workspaceid TYPE /AWS1/IOMID /AWS1/IOMID

The workspace ID.

iv_entityid TYPE /AWS1/IOMENTITYID /AWS1/IOMENTITYID

The ID for the entity whose metadata (component/properties) is returned by the operation.

Optional arguments:

iv_componentname TYPE /AWS1/IOMNAME /AWS1/IOMNAME

The name of the component whose properties are returned by the operation.

iv_componentpath TYPE /AWS1/IOMCOMPONENTPATH /AWS1/IOMCOMPONENTPATH

This string specifies the path to the composite component, starting from the top-level component.

iv_maxresults TYPE /AWS1/IOMMAXRESULTS /AWS1/IOMMAXRESULTS

The maximum number of results returned at one time. The default is 25.

iv_nexttoken TYPE /AWS1/IOMNEXTTOKEN /AWS1/IOMNEXTTOKEN

The string that specifies the next page of results.

RETURNING

oo_output TYPE REF TO /aws1/cl_iomlistprpsresponse /AWS1/CL_IOMLISTPRPSRESPONSE

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_iom~listproperties(
  iv_componentname = |string|
  iv_componentpath = |string|
  iv_entityid = |string|
  iv_maxresults = 123
  iv_nexttoken = |string|
  iv_workspaceid = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  LOOP AT lo_result->get_propertysummaries( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lo_propertydefinitionrespo = lo_row_1->get_definition( ).
      IF lo_propertydefinitionrespo IS NOT INITIAL.
        lo_datatype = lo_propertydefinitionrespo->get_datatype( ).
        IF lo_datatype IS NOT INITIAL.
          lv_type = lo_datatype->get_type( ).
          lo_datatype_1 = lo_datatype->get_nestedtype( ).
          IF lo_datatype_1 IS NOT INITIAL.
            lv_type = lo_datatype_1->get_type( ).
            " Skipping lo_datatype->get_nestedtype( ) to avoid recursion
            LOOP AT lo_datatype_1->get_allowedvalues( ) into lo_row_2.
              lo_row_3 = lo_row_2.
              IF lo_row_3 IS NOT INITIAL.
                lv_boolean = lo_row_3->get_booleanvalue( ).
                lv_double = lo_row_3->get_doublevalue( ).
                lv_integer = lo_row_3->get_integervalue( ).
                lv_long = lo_row_3->get_longvalue( ).
                lv_string = lo_row_3->get_stringvalue( ).
                LOOP AT lo_row_3->get_listvalue( ) into lo_row_4.
                  lo_row_5 = lo_row_4.
                  IF lo_row_5 IS NOT INITIAL.
                    lv_boolean = lo_row_5->get_booleanvalue( ).
                    lv_double = lo_row_5->get_doublevalue( ).
                    lv_integer = lo_row_5->get_integervalue( ).
                    lv_long = lo_row_5->get_longvalue( ).
                    lv_string = lo_row_5->get_stringvalue( ).
                    " Skipping lo_row_4 to avoid recursion
                    LOOP AT lo_row_5->get_mapvalue( ) into ls_row_6.
                      lv_key = ls_row_6-key.
                      lo_value = ls_row_6-value.
                      IF lo_value IS NOT INITIAL.
                        lv_boolean = lo_value->get_booleanvalue( ).
                        lv_double = lo_value->get_doublevalue( ).
                        lv_integer = lo_value->get_integervalue( ).
                        lv_long = lo_value->get_longvalue( ).
                        lv_string = lo_value->get_stringvalue( ).
                        " Skipping ls_row_6-value to avoid recursion
                        " Skipping ls_row_6-value to avoid recursion
                        lo_relationshipvalue = lo_value->get_relationshipvalue( ).
                        IF lo_relationshipvalue IS NOT INITIAL.
                          lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                          lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                        ENDIF.
                        lv_expression = lo_value->get_expression( ).
                      ENDIF.
                    ENDLOOP.
                    lo_relationshipvalue = lo_row_5->get_relationshipvalue( ).
                    IF lo_relationshipvalue IS NOT INITIAL.
                      lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                      lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                    ENDIF.
                    lv_expression = lo_row_5->get_expression( ).
                  ENDIF.
                ENDLOOP.
                LOOP AT lo_row_3->get_mapvalue( ) into ls_row_6.
                  lv_key = ls_row_6-key.
                  lo_value = ls_row_6-value.
                  IF lo_value IS NOT INITIAL.
                    lv_boolean = lo_value->get_booleanvalue( ).
                    lv_double = lo_value->get_doublevalue( ).
                    lv_integer = lo_value->get_integervalue( ).
                    lv_long = lo_value->get_longvalue( ).
                    lv_string = lo_value->get_stringvalue( ).
                    LOOP AT lo_value->get_listvalue( ) into lo_row_4.
                      lo_row_5 = lo_row_4.
                      IF lo_row_5 IS NOT INITIAL.
                        lv_boolean = lo_row_5->get_booleanvalue( ).
                        lv_double = lo_row_5->get_doublevalue( ).
                        lv_integer = lo_row_5->get_integervalue( ).
                        lv_long = lo_row_5->get_longvalue( ).
                        lv_string = lo_row_5->get_stringvalue( ).
                        " Skipping lo_row_4 to avoid recursion
                        " Skipping lo_row_4 to avoid recursion
                        lo_relationshipvalue = lo_row_5->get_relationshipvalue( ).
                        IF lo_relationshipvalue IS NOT INITIAL.
                          lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                          lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                        ENDIF.
                        lv_expression = lo_row_5->get_expression( ).
                      ENDIF.
                    ENDLOOP.
                    " Skipping ls_row_6-value to avoid recursion
                    lo_relationshipvalue = lo_value->get_relationshipvalue( ).
                    IF lo_relationshipvalue IS NOT INITIAL.
                      lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                      lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                    ENDIF.
                    lv_expression = lo_value->get_expression( ).
                  ENDIF.
                ENDLOOP.
                lo_relationshipvalue = lo_row_3->get_relationshipvalue( ).
                IF lo_relationshipvalue IS NOT INITIAL.
                  lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                  lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                ENDIF.
                lv_expression = lo_row_3->get_expression( ).
              ENDIF.
            ENDLOOP.
            lv_string = lo_datatype_1->get_unitofmeasure( ).
            lo_relationship = lo_datatype_1->get_relationship( ).
            IF lo_relationship IS NOT INITIAL.
              lv_componenttypeid = lo_relationship->get_targetcomponenttypeid( ).
              lv_string = lo_relationship->get_relationshiptype( ).
            ENDIF.
          ENDIF.
          LOOP AT lo_datatype->get_allowedvalues( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_boolean = lo_row_3->get_booleanvalue( ).
              lv_double = lo_row_3->get_doublevalue( ).
              lv_integer = lo_row_3->get_integervalue( ).
              lv_long = lo_row_3->get_longvalue( ).
              lv_string = lo_row_3->get_stringvalue( ).
              LOOP AT lo_row_3->get_listvalue( ) into lo_row_4.
                lo_row_5 = lo_row_4.
                IF lo_row_5 IS NOT INITIAL.
                  lv_boolean = lo_row_5->get_booleanvalue( ).
                  lv_double = lo_row_5->get_doublevalue( ).
                  lv_integer = lo_row_5->get_integervalue( ).
                  lv_long = lo_row_5->get_longvalue( ).
                  lv_string = lo_row_5->get_stringvalue( ).
                  " Skipping lo_row_4 to avoid recursion
                  LOOP AT lo_row_5->get_mapvalue( ) into ls_row_6.
                    lv_key = ls_row_6-key.
                    lo_value = ls_row_6-value.
                    IF lo_value IS NOT INITIAL.
                      lv_boolean = lo_value->get_booleanvalue( ).
                      lv_double = lo_value->get_doublevalue( ).
                      lv_integer = lo_value->get_integervalue( ).
                      lv_long = lo_value->get_longvalue( ).
                      lv_string = lo_value->get_stringvalue( ).
                      " Skipping ls_row_6-value to avoid recursion
                      " Skipping ls_row_6-value to avoid recursion
                      lo_relationshipvalue = lo_value->get_relationshipvalue( ).
                      IF lo_relationshipvalue IS NOT INITIAL.
                        lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                        lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                      ENDIF.
                      lv_expression = lo_value->get_expression( ).
                    ENDIF.
                  ENDLOOP.
                  lo_relationshipvalue = lo_row_5->get_relationshipvalue( ).
                  IF lo_relationshipvalue IS NOT INITIAL.
                    lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                    lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                  ENDIF.
                  lv_expression = lo_row_5->get_expression( ).
                ENDIF.
              ENDLOOP.
              LOOP AT lo_row_3->get_mapvalue( ) into ls_row_6.
                lv_key = ls_row_6-key.
                lo_value = ls_row_6-value.
                IF lo_value IS NOT INITIAL.
                  lv_boolean = lo_value->get_booleanvalue( ).
                  lv_double = lo_value->get_doublevalue( ).
                  lv_integer = lo_value->get_integervalue( ).
                  lv_long = lo_value->get_longvalue( ).
                  lv_string = lo_value->get_stringvalue( ).
                  LOOP AT lo_value->get_listvalue( ) into lo_row_4.
                    lo_row_5 = lo_row_4.
                    IF lo_row_5 IS NOT INITIAL.
                      lv_boolean = lo_row_5->get_booleanvalue( ).
                      lv_double = lo_row_5->get_doublevalue( ).
                      lv_integer = lo_row_5->get_integervalue( ).
                      lv_long = lo_row_5->get_longvalue( ).
                      lv_string = lo_row_5->get_stringvalue( ).
                      " Skipping lo_row_4 to avoid recursion
                      " Skipping lo_row_4 to avoid recursion
                      lo_relationshipvalue = lo_row_5->get_relationshipvalue( ).
                      IF lo_relationshipvalue IS NOT INITIAL.
                        lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                        lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                      ENDIF.
                      lv_expression = lo_row_5->get_expression( ).
                    ENDIF.
                  ENDLOOP.
                  " Skipping ls_row_6-value to avoid recursion
                  lo_relationshipvalue = lo_value->get_relationshipvalue( ).
                  IF lo_relationshipvalue IS NOT INITIAL.
                    lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                    lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                  ENDIF.
                  lv_expression = lo_value->get_expression( ).
                ENDIF.
              ENDLOOP.
              lo_relationshipvalue = lo_row_3->get_relationshipvalue( ).
              IF lo_relationshipvalue IS NOT INITIAL.
                lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                lv_name = lo_relationshipvalue->get_targetcomponentname( ).
              ENDIF.
              lv_expression = lo_row_3->get_expression( ).
            ENDIF.
          ENDLOOP.
          lv_string = lo_datatype->get_unitofmeasure( ).
          lo_relationship = lo_datatype->get_relationship( ).
          IF lo_relationship IS NOT INITIAL.
            lv_componenttypeid = lo_relationship->get_targetcomponenttypeid( ).
            lv_string = lo_relationship->get_relationshiptype( ).
          ENDIF.
        ENDIF.
        lv_boolean = lo_propertydefinitionrespo->get_istimeseries( ).
        lv_boolean = lo_propertydefinitionrespo->get_isrequiredinentity( ).
        lv_boolean = lo_propertydefinitionrespo->get_isexternalid( ).
        lv_boolean = lo_propertydefinitionrespo->get_isstoredexternally( ).
        lv_boolean = lo_propertydefinitionrespo->get_isimported( ).
        lv_boolean = lo_propertydefinitionrespo->get_isfinal( ).
        lv_boolean = lo_propertydefinitionrespo->get_isinherited( ).
        lo_datavalue = lo_propertydefinitionrespo->get_defaultvalue( ).
        IF lo_datavalue IS NOT INITIAL.
          lv_boolean = lo_datavalue->get_booleanvalue( ).
          lv_double = lo_datavalue->get_doublevalue( ).
          lv_integer = lo_datavalue->get_integervalue( ).
          lv_long = lo_datavalue->get_longvalue( ).
          lv_string = lo_datavalue->get_stringvalue( ).
          LOOP AT lo_datavalue->get_listvalue( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_boolean = lo_row_3->get_booleanvalue( ).
              lv_double = lo_row_3->get_doublevalue( ).
              lv_integer = lo_row_3->get_integervalue( ).
              lv_long = lo_row_3->get_longvalue( ).
              lv_string = lo_row_3->get_stringvalue( ).
              " Skipping lo_row_2 to avoid recursion
              LOOP AT lo_row_3->get_mapvalue( ) into ls_row_6.
                lv_key = ls_row_6-key.
                lo_value = ls_row_6-value.
                IF lo_value IS NOT INITIAL.
                  lv_boolean = lo_value->get_booleanvalue( ).
                  lv_double = lo_value->get_doublevalue( ).
                  lv_integer = lo_value->get_integervalue( ).
                  lv_long = lo_value->get_longvalue( ).
                  lv_string = lo_value->get_stringvalue( ).
                  " Skipping ls_row_6-value to avoid recursion
                  " Skipping ls_row_6-value to avoid recursion
                  lo_relationshipvalue = lo_value->get_relationshipvalue( ).
                  IF lo_relationshipvalue IS NOT INITIAL.
                    lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                    lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                  ENDIF.
                  lv_expression = lo_value->get_expression( ).
                ENDIF.
              ENDLOOP.
              lo_relationshipvalue = lo_row_3->get_relationshipvalue( ).
              IF lo_relationshipvalue IS NOT INITIAL.
                lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                lv_name = lo_relationshipvalue->get_targetcomponentname( ).
              ENDIF.
              lv_expression = lo_row_3->get_expression( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_datavalue->get_mapvalue( ) into ls_row_6.
            lv_key = ls_row_6-key.
            lo_value = ls_row_6-value.
            IF lo_value IS NOT INITIAL.
              lv_boolean = lo_value->get_booleanvalue( ).
              lv_double = lo_value->get_doublevalue( ).
              lv_integer = lo_value->get_integervalue( ).
              lv_long = lo_value->get_longvalue( ).
              lv_string = lo_value->get_stringvalue( ).
              LOOP AT lo_value->get_listvalue( ) into lo_row_2.
                lo_row_3 = lo_row_2.
                IF lo_row_3 IS NOT INITIAL.
                  lv_boolean = lo_row_3->get_booleanvalue( ).
                  lv_double = lo_row_3->get_doublevalue( ).
                  lv_integer = lo_row_3->get_integervalue( ).
                  lv_long = lo_row_3->get_longvalue( ).
                  lv_string = lo_row_3->get_stringvalue( ).
                  " Skipping lo_row_2 to avoid recursion
                  " Skipping lo_row_2 to avoid recursion
                  lo_relationshipvalue = lo_row_3->get_relationshipvalue( ).
                  IF lo_relationshipvalue IS NOT INITIAL.
                    lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                    lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                  ENDIF.
                  lv_expression = lo_row_3->get_expression( ).
                ENDIF.
              ENDLOOP.
              " Skipping ls_row_6-value to avoid recursion
              lo_relationshipvalue = lo_value->get_relationshipvalue( ).
              IF lo_relationshipvalue IS NOT INITIAL.
                lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                lv_name = lo_relationshipvalue->get_targetcomponentname( ).
              ENDIF.
              lv_expression = lo_value->get_expression( ).
            ENDIF.
          ENDLOOP.
          lo_relationshipvalue = lo_datavalue->get_relationshipvalue( ).
          IF lo_relationshipvalue IS NOT INITIAL.
            lv_entityid = lo_relationshipvalue->get_targetentityid( ).
            lv_name = lo_relationshipvalue->get_targetcomponentname( ).
          ENDIF.
          lv_expression = lo_datavalue->get_expression( ).
        ENDIF.
        LOOP AT lo_propertydefinitionrespo->get_configuration( ) into ls_row_7.
          lv_key_1 = ls_row_7-key.
          lo_value_1 = ls_row_7-value.
          IF lo_value_1 IS NOT INITIAL.
            lv_value_2 = lo_value_1->get_value( ).
          ENDIF.
        ENDLOOP.
        lv_propertydisplayname = lo_propertydefinitionrespo->get_displayname( ).
      ENDIF.
      lv_name = lo_row_1->get_propertyname( ).
      lo_datavalue = lo_row_1->get_value( ).
      IF lo_datavalue IS NOT INITIAL.
        lv_boolean = lo_datavalue->get_booleanvalue( ).
        lv_double = lo_datavalue->get_doublevalue( ).
        lv_integer = lo_datavalue->get_integervalue( ).
        lv_long = lo_datavalue->get_longvalue( ).
        lv_string = lo_datavalue->get_stringvalue( ).
        LOOP AT lo_datavalue->get_listvalue( ) into lo_row_2.
          lo_row_3 = lo_row_2.
          IF lo_row_3 IS NOT INITIAL.
            lv_boolean = lo_row_3->get_booleanvalue( ).
            lv_double = lo_row_3->get_doublevalue( ).
            lv_integer = lo_row_3->get_integervalue( ).
            lv_long = lo_row_3->get_longvalue( ).
            lv_string = lo_row_3->get_stringvalue( ).
            " Skipping lo_row_2 to avoid recursion
            LOOP AT lo_row_3->get_mapvalue( ) into ls_row_6.
              lv_key = ls_row_6-key.
              lo_value = ls_row_6-value.
              IF lo_value IS NOT INITIAL.
                lv_boolean = lo_value->get_booleanvalue( ).
                lv_double = lo_value->get_doublevalue( ).
                lv_integer = lo_value->get_integervalue( ).
                lv_long = lo_value->get_longvalue( ).
                lv_string = lo_value->get_stringvalue( ).
                " Skipping ls_row_6-value to avoid recursion
                " Skipping ls_row_6-value to avoid recursion
                lo_relationshipvalue = lo_value->get_relationshipvalue( ).
                IF lo_relationshipvalue IS NOT INITIAL.
                  lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                  lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                ENDIF.
                lv_expression = lo_value->get_expression( ).
              ENDIF.
            ENDLOOP.
            lo_relationshipvalue = lo_row_3->get_relationshipvalue( ).
            IF lo_relationshipvalue IS NOT INITIAL.
              lv_entityid = lo_relationshipvalue->get_targetentityid( ).
              lv_name = lo_relationshipvalue->get_targetcomponentname( ).
            ENDIF.
            lv_expression = lo_row_3->get_expression( ).
          ENDIF.
        ENDLOOP.
        LOOP AT lo_datavalue->get_mapvalue( ) into ls_row_6.
          lv_key = ls_row_6-key.
          lo_value = ls_row_6-value.
          IF lo_value IS NOT INITIAL.
            lv_boolean = lo_value->get_booleanvalue( ).
            lv_double = lo_value->get_doublevalue( ).
            lv_integer = lo_value->get_integervalue( ).
            lv_long = lo_value->get_longvalue( ).
            lv_string = lo_value->get_stringvalue( ).
            LOOP AT lo_value->get_listvalue( ) into lo_row_2.
              lo_row_3 = lo_row_2.
              IF lo_row_3 IS NOT INITIAL.
                lv_boolean = lo_row_3->get_booleanvalue( ).
                lv_double = lo_row_3->get_doublevalue( ).
                lv_integer = lo_row_3->get_integervalue( ).
                lv_long = lo_row_3->get_longvalue( ).
                lv_string = lo_row_3->get_stringvalue( ).
                " Skipping lo_row_2 to avoid recursion
                " Skipping lo_row_2 to avoid recursion
                lo_relationshipvalue = lo_row_3->get_relationshipvalue( ).
                IF lo_relationshipvalue IS NOT INITIAL.
                  lv_entityid = lo_relationshipvalue->get_targetentityid( ).
                  lv_name = lo_relationshipvalue->get_targetcomponentname( ).
                ENDIF.
                lv_expression = lo_row_3->get_expression( ).
              ENDIF.
            ENDLOOP.
            " Skipping ls_row_6-value to avoid recursion
            lo_relationshipvalue = lo_value->get_relationshipvalue( ).
            IF lo_relationshipvalue IS NOT INITIAL.
              lv_entityid = lo_relationshipvalue->get_targetentityid( ).
              lv_name = lo_relationshipvalue->get_targetcomponentname( ).
            ENDIF.
            lv_expression = lo_value->get_expression( ).
          ENDIF.
        ENDLOOP.
        lo_relationshipvalue = lo_datavalue->get_relationshipvalue( ).
        IF lo_relationshipvalue IS NOT INITIAL.
          lv_entityid = lo_relationshipvalue->get_targetentityid( ).
          lv_name = lo_relationshipvalue->get_targetcomponentname( ).
        ENDIF.
        lv_expression = lo_datavalue->get_expression( ).
      ENDIF.
      lv_boolean = lo_row_1->get_areallpropertyvaluesretd( ).
    ENDIF.
  ENDLOOP.
  lv_nexttoken = lo_result->get_nexttoken( ).
ENDIF.