/AWS1/IF_SCG=>IMPORTASPROVISIONEDPRODUCT()¶
About ImportAsProvisionedProduct¶
Requests the import of a resource as an Service Catalog provisioned product that is associated to an Service Catalog product and provisioning artifact. Once imported, all supported governance actions are supported on the provisioned product.
Resource import only supports CloudFormation stack ARNs. CloudFormation StackSets, and non-root nested stacks, are not supported.
The CloudFormation stack must have one
of the following statuses
to be imported: CREATE_COMPLETE, UPDATE_COMPLETE,
UPDATE_ROLLBACK_COMPLETE, IMPORT_COMPLETE, and
IMPORT_ROLLBACK_COMPLETE.
Import of the resource requires that the CloudFormation stack template matches the associated Service Catalog product provisioning artifact.
When you import an existing CloudFormation stack
into a portfolio, Service Catalog does not apply the product's associated constraints
during the import process. Service Catalog applies the constraints
after you call UpdateProvisionedProduct for the provisioned product.
The user or role that performs this operation must have the cloudformation:GetTemplate
and cloudformation:DescribeStacks IAM policy permissions.
You can only import one provisioned product at a time. The product's CloudFormation stack must have the
IMPORT_COMPLETE status before you import another.
Method Signature¶
METHODS /AWS1/IF_SCG~IMPORTASPROVISIONEDPRODUCT
IMPORTING
!IV_ACCEPTLANGUAGE TYPE /AWS1/SCGACCEPTLANGUAGE OPTIONAL
!IV_PRODUCTID TYPE /AWS1/SCGID OPTIONAL
!IV_PROVISIONINGARTIFACTID TYPE /AWS1/SCGID OPTIONAL
!IV_PROVISIONEDPRODUCTNAME TYPE /AWS1/SCGPROVPRODUCTNAME OPTIONAL
!IV_PHYSICALID TYPE /AWS1/SCGPHYSICALID OPTIONAL
!IV_IDEMPOTENCYTOKEN TYPE /AWS1/SCGIDEMPOTENCYTOKEN OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_scgimpasprovproduct01
RAISING
/AWS1/CX_SCGDUPLICATERESRCEX
/AWS1/CX_SCGINVALIDPARAMSEX
/AWS1/CX_SCGINVALIDSTATEEX
/AWS1/CX_SCGRESOURCENOTFOUNDEX
/AWS1/CX_SCGCLIENTEXC
/AWS1/CX_SCGSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_productid TYPE /AWS1/SCGID /AWS1/SCGID¶
The product identifier.
iv_provisioningartifactid TYPE /AWS1/SCGID /AWS1/SCGID¶
The identifier of the provisioning artifact.
iv_provisionedproductname TYPE /AWS1/SCGPROVPRODUCTNAME /AWS1/SCGPROVPRODUCTNAME¶
The user-friendly name of the provisioned product. The value must be unique for the Amazon Web Services account. The name cannot be updated after the product is provisioned.
iv_physicalid TYPE /AWS1/SCGPHYSICALID /AWS1/SCGPHYSICALID¶
The unique identifier of the resource to be imported. It only currently supports CloudFormation stack IDs.
iv_idempotencytoken TYPE /AWS1/SCGIDEMPOTENCYTOKEN /AWS1/SCGIDEMPOTENCYTOKEN¶
A unique identifier that you provide to ensure idempotency. If multiple requests differ only by the idempotency token, the same response is returned for each repeated request.
Optional arguments:¶
iv_acceptlanguage TYPE /AWS1/SCGACCEPTLANGUAGE /AWS1/SCGACCEPTLANGUAGE¶
The language code.
jp- Japanese
zh- Chinese
RETURNING¶
oo_output TYPE REF TO /aws1/cl_scgimpasprovproduct01 /AWS1/CL_SCGIMPASPROVPRODUCT01¶
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->importasprovisionedproduct(
iv_acceptlanguage = |string|
iv_idempotencytoken = |string|
iv_physicalid = |string|
iv_productid = |string|
iv_provisionedproductname = |string|
iv_provisioningartifactid = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_recorddetail = lo_result->get_recorddetail( ).
IF lo_recorddetail IS NOT INITIAL.
lv_id = lo_recorddetail->get_recordid( ).
lv_provisionedproductname = lo_recorddetail->get_provisionedproductname( ).
lv_recordstatus = lo_recorddetail->get_status( ).
lv_createdtime = lo_recorddetail->get_createdtime( ).
lv_updatedtime = lo_recorddetail->get_updatedtime( ).
lv_provisionedproducttype = lo_recorddetail->get_provisionedproducttype( ).
lv_recordtype = lo_recorddetail->get_recordtype( ).
lv_id = lo_recorddetail->get_provisionedproductid( ).
lv_id = lo_recorddetail->get_productid( ).
lv_id = lo_recorddetail->get_provisioningartifactid( ).
lv_id = lo_recorddetail->get_pathid( ).
LOOP AT lo_recorddetail->get_recorderrors( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_errorcode = lo_row_1->get_code( ).
lv_errordescription = lo_row_1->get_description( ).
ENDIF.
ENDLOOP.
LOOP AT lo_recorddetail->get_recordtags( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_recordtagkey = lo_row_3->get_key( ).
lv_recordtagvalue = lo_row_3->get_value( ).
ENDIF.
ENDLOOP.
lv_rolearn = lo_recorddetail->get_launchrolearn( ).
ENDIF.
ENDIF.