使用适用于 SAP 的 SDK 的 Step Functions 示例 - AWS 适用于 SAP 的 SDK ABA

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用适用于 SAP 的 SDK 的 Step Functions 示例

以下代码示例向您展示了如何使用带有 Step Functions 的 SAP ABAP AWS 开发工具包来执行操作和实现常见场景。

操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。

主题

操作

以下代码示例演示了如何使用 CreateActivity

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. DATA(lo_result) = lo_sfn->createactivity( iv_name = iv_name ). ov_activity_arn = lo_result->get_activityarn( ). MESSAGE 'Activity created successfully.' TYPE 'I'. CATCH /aws1/cx_sfnactivityalrdyex. MESSAGE 'Activity already exists.' TYPE 'E'. CATCH /aws1/cx_sfninvalidname. MESSAGE 'Invalid activity name.' TYPE 'E'. CATCH /aws1/cx_sfnactivitylimitexcd. MESSAGE 'Activity limit exceeded.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用CreateActivity于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 CreateStateMachine

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. DATA(lo_result) = lo_sfn->createstatemachine( iv_name = iv_name iv_definition = iv_definition iv_rolearn = iv_role_arn ). ov_state_machine_arn = lo_result->get_statemachinearn( ). MESSAGE 'State machine created successfully.' TYPE 'I'. CATCH /aws1/cx_sfnstatemachinealrex. MESSAGE 'State machine already exists.' TYPE 'E'. CATCH /aws1/cx_sfninvaliddefinition. MESSAGE 'Invalid state machine definition.' TYPE 'E'. CATCH /aws1/cx_sfninvalidname. MESSAGE 'Invalid state machine name.' TYPE 'E'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid role ARN.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用CreateStateMachine于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 DeleteActivity

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. lo_sfn->deleteactivity( iv_activityarn = iv_activity_arn ). MESSAGE 'Activity deleted successfully.' TYPE 'I'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid activity ARN.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用DeleteActivity于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 DeleteStateMachine

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. lo_sfn->deletestatemachine( iv_statemachinearn = iv_state_machine_arn ). MESSAGE 'State machine deleted successfully.' TYPE 'I'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid state machine ARN.' TYPE 'E'. CATCH /aws1/cx_sfnvalidationex. MESSAGE 'Validation error occurred.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用DeleteStateMachine于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 DescribeExecution

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. oo_result = lo_sfn->describeexecution( iv_executionarn = iv_execution_arn ). MESSAGE 'Execution described successfully.' TYPE 'I'. CATCH /aws1/cx_sfnexecdoesnotexist. MESSAGE 'Execution does not exist.' TYPE 'E'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid execution ARN.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用DescribeExecution于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 DescribeStateMachine

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. oo_result = lo_sfn->describestatemachine( iv_statemachinearn = iv_state_machine_arn ). MESSAGE 'State machine described successfully.' TYPE 'I'. CATCH /aws1/cx_sfnstatemachinedoes00. MESSAGE 'State machine does not exist.' TYPE 'E'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid state machine ARN.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用DescribeStateMachine于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 GetActivityTask

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. oo_result = lo_sfn->getactivitytask( iv_activityarn = iv_activity_arn ). MESSAGE 'Activity task retrieved successfully.' TYPE 'I'. CATCH /aws1/cx_sfnactivitydoesnotex. MESSAGE 'Activity does not exist.' TYPE 'E'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid activity ARN.' TYPE 'E'. CATCH /aws1/cx_sfnactivityworkerlm00. MESSAGE 'Activity worker limit exceeded.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用GetActivityTask于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 ListActivities

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. DATA(lo_result) = lo_sfn->listactivities( ). DATA(lt_activities) = lo_result->get_activities( ). LOOP AT lt_activities INTO DATA(lo_activity). IF lo_activity->get_name( ) = iv_name. ov_activity_arn = lo_activity->get_activityarn( ). EXIT. ENDIF. ENDLOOP. MESSAGE 'Activities listed successfully.' TYPE 'I'. CATCH /aws1/cx_sfninvalidtoken. MESSAGE 'Invalid pagination token.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用ListActivities于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 ListStateMachines

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. DATA(lo_result) = lo_sfn->liststatemachines( ). DATA(lt_state_machines) = lo_result->get_statemachines( ). LOOP AT lt_state_machines INTO DATA(lo_state_machine). IF lo_state_machine->get_name( ) = iv_name. ov_state_machine_arn = lo_state_machine->get_statemachinearn( ). EXIT. ENDIF. ENDLOOP. MESSAGE 'State machines listed successfully.' TYPE 'I'. CATCH /aws1/cx_sfninvalidtoken. MESSAGE 'Invalid pagination token.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用ListStateMachines于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 SendTaskSuccess

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. lo_sfn->sendtasksuccess( iv_tasktoken = iv_task_token iv_output = iv_task_response ). MESSAGE 'Task success sent successfully.' TYPE 'I'. CATCH /aws1/cx_sfninvalidtoken. MESSAGE 'Invalid task token.' TYPE 'E'. CATCH /aws1/cx_sfntaskdoesnotexist. MESSAGE 'Task does not exist.' TYPE 'E'. CATCH /aws1/cx_sfninvalidoutput. MESSAGE 'Invalid task output.' TYPE 'E'. CATCH /aws1/cx_sfntasktimedout. MESSAGE 'Task timed out.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用SendTaskSuccess于 S AP 的AWS SDK ABAP API 参考

以下代码示例演示了如何使用 StartExecution

适用于 SAP ABAP 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

TRY. DATA(lo_result) = lo_sfn->startexecution( iv_statemachinearn = iv_state_machine_arn iv_input = iv_input ). ov_execution_arn = lo_result->get_executionarn( ). MESSAGE 'Execution started successfully.' TYPE 'I'. CATCH /aws1/cx_sfnstatemachinedoes00. MESSAGE 'State machine does not exist.' TYPE 'E'. CATCH /aws1/cx_sfninvalidarn. MESSAGE 'Invalid state machine ARN.' TYPE 'E'. CATCH /aws1/cx_sfninvalidexecinput. MESSAGE 'Invalid execution input.' TYPE 'E'. CATCH /aws1/cx_sfnexeclimitexceeded. MESSAGE 'Execution limit exceeded.' TYPE 'E'. ENDTRY.
  • 有关 API 的详细信息,请参阅适用StartExecution于 S AP 的AWS SDK ABAP API 参考