Skip to content

/AWS1/IF_DZN=>GETFORMTYPE()

About GetFormType

Gets a metadata form type in Amazon DataZone.

Form types define the structure and validation rules for collecting metadata about assets in Amazon DataZone. They act as templates that ensure consistent metadata capture across similar types of assets, while allowing for customization to meet specific organizational needs. Form types can include required fields, validation rules, and dependencies, helping maintain high-quality metadata that makes data assets more discoverable and usable.

  • The form type with the specified identifier must exist in the given domain.

  • The domain must be valid and active.

  • User must have permission on the form type.

  • The form type should not be deleted or in an invalid state.

One use case for this API is to determine whether a form field is indexed for search.

A searchable field will be annotated with @amazon.datazone#searchable. By default, searchable fields are indexed for semantic search, where related query terms will match the attribute value even if they are not stemmed or keyword matches. If a field is indexed technical identifier search, it will be annotated with @amazon.datazone#searchable(modes:["TECHNICAL"]). If a field is indexed for lexical search (supports stemmed and prefix matches but not semantic matches), it will be annotated with @amazon.datazone#searchable(modes:["LEXICAL"]).

A field storing glossary term IDs (which is filterable) will be annotated with @amazon.datazone#glossaryterm("${glossaryId}").

Method Signature

METHODS /AWS1/IF_DZN~GETFORMTYPE
  IMPORTING
    !IV_DOMAINIDENTIFIER TYPE /AWS1/DZNDOMAINID OPTIONAL
    !IV_FORMTYPEIDENTIFIER TYPE /AWS1/DZNFORMTYPEIDENTIFIER OPTIONAL
    !IV_REVISION TYPE /AWS1/DZNREVISION OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_dzngetformtypeoutput
  RAISING
    /AWS1/CX_DZNACCESSDENIEDEX
    /AWS1/CX_DZNTHROTTLINGEX
    /AWS1/CX_DZNUNAUTHORIZEDEX
    /AWS1/CX_DZNINTERNALSERVEREX
    /AWS1/CX_DZNRESOURCENOTFOUNDEX
    /AWS1/CX_DZNVALIDATIONEX
    /AWS1/CX_DZNCLIENTEXC
    /AWS1/CX_DZNSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_domainidentifier TYPE /AWS1/DZNDOMAINID /AWS1/DZNDOMAINID

The ID of the Amazon DataZone domain in which this metadata form type exists.

iv_formtypeidentifier TYPE /AWS1/DZNFORMTYPEIDENTIFIER /AWS1/DZNFORMTYPEIDENTIFIER

The ID of the metadata form type.

Optional arguments:

iv_revision TYPE /AWS1/DZNREVISION /AWS1/DZNREVISION

The revision of this metadata form type.

RETURNING

oo_output TYPE REF TO /aws1/cl_dzngetformtypeoutput /AWS1/CL_DZNGETFORMTYPEOUTPUT

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->getformtype(
  iv_domainidentifier = |string|
  iv_formtypeidentifier = |string|
  iv_revision = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_domainid = lo_result->get_domainid( ).
  lv_formtypename = lo_result->get_name( ).
  lv_revision = lo_result->get_revision( ).
  lo_model = lo_result->get_model( ).
  IF lo_model IS NOT INITIAL.
    lv_smithy = lo_model->get_smithy( ).
  ENDIF.
  lv_projectid = lo_result->get_owningprojectid( ).
  lv_domainid = lo_result->get_origindomainid( ).
  lv_projectid = lo_result->get_originprojectid( ).
  lv_formtypestatus = lo_result->get_status( ).
  lv_createdat = lo_result->get_createdat( ).
  lv_createdby = lo_result->get_createdby( ).
  lv_description = lo_result->get_description( ).
  LOOP AT lo_result->get_imports( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_formtypename = lo_row_1->get_name( ).
      lv_revision = lo_row_1->get_revision( ).
    ENDIF.
  ENDLOOP.
ENDIF.