Contoh Amazon SES menggunakan SDK untuk SAP ABAP - AWS SDK untuk SAP ABAP

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh Amazon SES menggunakan SDK untuk SAP ABAP

Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS SDK untuk SAP ABAP dengan Amazon SES.

Tindakan merupakan kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.

Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.

Tindakan

Contoh kode berikut menunjukkan cara menggunakanCreateReceiptFilter.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

" iv_allow = abap_true means 'Allow', abap_false means 'Block' DATA(lv_policy) = COND /aws1/sesreceiptfilterpolicy( WHEN iv_allow = abap_true THEN 'Allow' ELSE 'Block' ). DATA(lo_ip_filter) = NEW /aws1/cl_sesreceiptipfilter( iv_policy = lv_policy iv_cidr = iv_ip_address_or_range ). DATA(lo_filter) = NEW /aws1/cl_sesreceiptfilter( iv_name = iv_filter_name io_ipfilter = lo_ip_filter ). TRY. lo_ses->createreceiptfilter( io_filter = lo_filter ). MESSAGE 'Receipt filter created successfully' TYPE 'I'. CATCH /aws1/cx_sesalreadyexistsex INTO DATA(lo_ex1). DATA(lv_error) = |Filter already exists: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanCreateReceiptRule.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

" Create S3 action for copying emails to S3 DATA(lo_s3_action) = NEW /aws1/cl_sess3action( iv_bucketname = iv_bucket_name iv_objectkeyprefix = iv_prefix ). " Create receipt action with S3 action DATA(lo_action) = NEW /aws1/cl_sesreceiptaction( io_s3action = lo_s3_action ). " Create list of actions DATA lt_actions TYPE /aws1/cl_sesreceiptaction=>tt_receiptactionslist. APPEND lo_action TO lt_actions. " Create receipt rule DATA(lo_rule) = NEW /aws1/cl_sesreceiptrule( iv_name = iv_rule_name iv_enabled = abap_true it_recipients = it_recipients it_actions = lt_actions ). TRY. lo_ses->createreceiptrule( iv_rulesetname = iv_rule_set_name io_rule = lo_rule ). MESSAGE 'Receipt rule created successfully' TYPE 'I'. CATCH /aws1/cx_sesinvalids3confex INTO DATA(lo_ex1). DATA(lv_error) = |Invalid S3 configuration: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanCreateReceiptRuleSet.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->createreceiptruleset( iv_rulesetname = iv_rule_set_name ). MESSAGE 'Receipt rule set created successfully' TYPE 'I'. CATCH /aws1/cx_sesalreadyexistsex INTO DATA(lo_ex1). DATA(lv_error) = |Rule set already exists: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanCreateTemplate.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

DATA(lo_template) = NEW /aws1/cl_sestemplate( iv_templatename = iv_name iv_subjectpart = iv_subject iv_textpart = iv_text iv_htmlpart = iv_html ). TRY. lo_ses->createtemplate( io_template = lo_template ). MESSAGE 'Template created successfully' TYPE 'I'. CATCH /aws1/cx_sesalreadyexistsex INTO DATA(lo_ex1). DATA(lv_error) = |Template already exists: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_sesinvalidtemplateex INTO DATA(lo_ex2). lv_error = |Invalid template: { lo_ex2->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex2. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.
  • Untuk detail API, lihat CreateTemplatedi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanDeleteIdentity.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->deleteidentity( iv_identity = iv_identity ). MESSAGE 'Identity deleted successfully' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.
  • Untuk detail API, lihat DeleteIdentitydi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanDeleteReceiptFilter.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->deletereceiptfilter( iv_filtername = iv_filter_name ). MESSAGE 'Receipt filter deleted successfully' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanDeleteReceiptRule.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->deletereceiptrule( iv_rulesetname = iv_rule_set_name iv_rulename = iv_rule_name ). MESSAGE 'Receipt rule deleted successfully' TYPE 'I'. CATCH /aws1/cx_sesrulesetdoesnotexex INTO DATA(lo_ex1). DATA(lv_error) = |Rule set does not exist: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanDeleteReceiptRuleSet.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->deletereceiptruleset( iv_rulesetname = iv_rule_set_name ). MESSAGE 'Receipt rule set deleted successfully' TYPE 'I'. CATCH /aws1/cx_sescannotdeleteex INTO DATA(lo_ex1). DATA(lv_error) = |Cannot delete rule set: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanDeleteTemplate.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->deletetemplate( iv_templatename = iv_template_name ). MESSAGE 'Template deleted successfully' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.
  • Untuk detail API, lihat DeleteTemplatedi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanDescribeReceiptRuleSet.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. oo_result = lo_ses->describereceiptruleset( iv_rulesetname = iv_rule_set_name ). MESSAGE 'Receipt rule set described successfully' TYPE 'I'. CATCH /aws1/cx_sesrulesetdoesnotexex INTO DATA(lo_ex1). DATA(lv_error) = |Rule set does not exist: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanGetIdentityVerificationAttributes.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

DATA lt_identities TYPE /aws1/cl_sesidentitylist_w=>tt_identitylist. APPEND NEW /aws1/cl_sesidentitylist_w( iv_value = iv_identity ) TO lt_identities. TRY. DATA(lo_result) = lo_ses->getidentityverificationattrs( it_identities = lt_identities ). DATA(lt_attrs) = lo_result->get_verificationattributes( ). IF lt_attrs IS NOT INITIAL. LOOP AT lt_attrs ASSIGNING FIELD-SYMBOL(<ls_attr>). ov_status = <ls_attr>-value->get_verificationstatus( ). EXIT. ENDLOOP. ELSE. ov_status = 'NotFound'. ENDIF. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanGetTemplate.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. DATA(lo_result) = lo_ses->gettemplate( iv_templatename = iv_template_name ). oo_template = lo_result->get_template( ). MESSAGE 'Template retrieved successfully' TYPE 'I'. CATCH /aws1/cx_sestmpldoesnotexistex INTO DATA(lo_ex1). DATA(lv_error) = |Template does not exist: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.
  • Untuk detail API, lihat GetTemplatedi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanListIdentities.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. DATA(lo_result) = lo_ses->listidentities( iv_identitytype = iv_identity_type iv_maxitems = iv_max_items ). ot_identities = lo_result->get_identities( ). MESSAGE 'Identities retrieved successfully' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.
  • Untuk detail API, lihat ListIdentitiesdi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanListReceiptFilters.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. DATA(lo_result) = lo_ses->listreceiptfilters( ). ot_filters = lo_result->get_filters( ). MESSAGE 'Receipt filters retrieved successfully' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanListTemplates.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. DATA(lo_result) = lo_ses->listtemplates( iv_maxitems = iv_max_items ). ot_templates = lo_result->get_templatesmetadata( ). MESSAGE 'Templates retrieved successfully' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.
  • Untuk detail API, lihat ListTemplatesdi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanSendEmail.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

" Create message object DATA(lo_subject) = NEW /aws1/cl_sescontent( iv_data = iv_subject ). DATA(lo_text_body) = NEW /aws1/cl_sescontent( iv_data = iv_text ). DATA(lo_html_body) = NEW /aws1/cl_sescontent( iv_data = iv_html ). DATA(lo_body) = NEW /aws1/cl_sesbody( io_text = lo_text_body io_html = lo_html_body ). DATA(lo_message) = NEW /aws1/cl_sesmessage( io_subject = lo_subject io_body = lo_body ). TRY. " Send email DATA(lo_result) = lo_ses->sendemail( iv_source = iv_source io_destination = io_destination io_message = lo_message it_replytoaddresses = it_reply_tos ). ov_msg_id = lo_result->get_messageid( ). MESSAGE 'Email sent successfully' TYPE 'I'. CATCH /aws1/cx_sesacctsendingpause00 INTO DATA(lo_ex1). DATA(lv_error) = |Account sending paused: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_sesmessagerejected INTO DATA(lo_ex2). lv_error = |Message rejected: { lo_ex2->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex2. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.
  • Untuk detail API, lihat SendEmaildi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanSendTemplatedEmail.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. " Send templated email DATA(lo_result) = lo_ses->sendtemplatedemail( iv_source = iv_source io_destination = io_destination iv_template = iv_template_name iv_templatedata = iv_template_data it_replytoaddresses = it_reply_tos ). ov_msg_id = lo_result->get_messageid( ). MESSAGE 'Templated email sent successfully' TYPE 'I'. CATCH /aws1/cx_sestmpldoesnotexistex INTO DATA(lo_ex1). DATA(lv_error) = |Template does not exist: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanUpdateTemplate.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

DATA(lo_template) = NEW /aws1/cl_sestemplate( iv_templatename = iv_name iv_subjectpart = iv_subject iv_textpart = iv_text iv_htmlpart = iv_html ). TRY. lo_ses->updatetemplate( io_template = lo_template ). MESSAGE 'Template updated successfully' TYPE 'I'. CATCH /aws1/cx_sestmpldoesnotexistex INTO DATA(lo_ex1). DATA(lv_error) = |Template does not exist: { lo_ex1->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex1. CATCH /aws1/cx_sesinvalidtemplateex INTO DATA(lo_ex2). lv_error = |Invalid template: { lo_ex2->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex2. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex_generic). lv_error = |An error occurred: { lo_ex_generic->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex_generic. ENDTRY.
  • Untuk detail API, lihat UpdateTemplatedi AWS SDK untuk referensi SAP ABAP API.

Contoh kode berikut menunjukkan cara menggunakanVerifyDomainIdentity.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. DATA(lo_result) = lo_ses->verifydomainidentity( iv_domain = iv_domain_name ). ov_token = lo_result->get_verificationtoken( ). MESSAGE 'Domain verification initiated' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.

Contoh kode berikut menunjukkan cara menggunakanVerifyEmailIdentity.

SDK for SAP ABAP
catatan

Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di Repositori Contoh Kode AWS.

TRY. lo_ses->verifyemailidentity( iv_emailaddress = iv_email_address ). MESSAGE 'Email verification initiated' TYPE 'I'. CATCH /aws1/cx_rt_generic INTO DATA(lo_ex). DATA(lv_error) = |An error occurred: { lo_ex->get_text( ) }|. MESSAGE lv_error TYPE 'I'. RAISE EXCEPTION lo_ex. ENDTRY.