내용으로 건너뛰기

Integration with SAP ERP using native AWS services (ESB)

0

Hi, I am new to AWS and I have been asked to evaluate the replacement of our ESB (service bus) and use native AWS services, our main data source is SAP ERP on Premise (financial/accounting), is this possible? We currently use adapters of the type: RFC, IDOCS, ODATA, SFTP, BAPI, WS. Our target systems are on-premise apps and SaaS services.

Please help me with this, thank you.

3개 답변
0

One option to consider is Amazon AppFlow, as it has a powerful OData Connector for SAP: https://docs.aws.amazon.com/appflow/latest/userguide/sapodata.html

AppFlow has a low/no code interface, retains SAP application level context and supports change data capture through operational data provisioning queues.

AWS
전문가

답변함 2년 전

0

For cases where the the ABAP system needs to initiate an event, you can use the AWS SDK for SAP ABAP. It has complete coverage of the EventBridge API as well as other APIs like SQS (techniques using the SDK to build event-driven architectures in SAP ERP using SQS are in this blog).

And if you find an EventBridge demo or blog for a different language, it is pretty trivial to rewrite into ABAP, as all the AWS SDKs are closely aligned. For example, this example of the put_events() call in Python can be rewritten in ABAP using the the corresponding ABAP call /AWS1/IF_EVB=>PUTEVENTS(). Here's a quick rewrite of thate python example in ABAP:

REPORT yevb_putevents_demo.

START-OF-SELECTION.
  " Create CloudWatchEvents client
  DATA(lo_session) = /aws1/cl_rt_session_aws=>create( 'DEMO' ).
  DATA(lo_evb) = /aws1/cl_evb_factory=>create( lo_session ).

  " Put an event
  DATA(lo_response) = lo_evb->putevents(
    it_entries = VALUE /aws1/cl_evbputeventsreqentry=>tt_puteventsrequestentrylist(
      ( NEW /aws1/cl_evbputeventsreqentry(
        iv_detail = `{"key1": "value1", "key2": "value2"}`
        iv_detailtype = 'appRequestSubmitted'
        it_resources = VALUE /aws1/cl_evbeventresrclist_w=>tt_eventresourcelist(
          ( NEW /aws1/cl_evbeventresrclist_w( 'RESOURCE_ARN')  )
        )
        iv_source = 'com.company.myapp'
      ) )
    )
  ).

  " print the response
  LOOP AT lo_response->get_entries( ) INTO DATA(lo_entry).
    IF lo_entry->get_errorcode( ) IS NOT INITIAL.
      WRITE: / |errorcode { lo_entry->get_errorcode( ) }: | &&
               |{ lo_entry->get_errormessage( ) }| COLOR COL_NEGATIVE .
    ELSE.
      WRITE: / |Event_ID { lo_entry->get_eventid( ) }|.
    ENDIF.
  ENDLOOP.
AWS
전문가

답변함 2년 전

0

Hello Claudio Hermosilla, We would like to know more about the scenarios you are considering for native integration from AWS Services to SAP on-premises. 1/ Are you looking at application integration for action and indexing data in SAP? Are we right in assuming the direction is from AWS towards SAP in this case? 2/ Is B2B data interchange as managed EDI service useful in application integration? 3/ Do you have plans to run SAP on AWS in the near future? 4/ Are you considering data replication and analytics on AWS as well?

Happy to connect with you on a holistic solution. Can we set up a call to explore further?

Thanks, Yuva, Product Manager, SAP on AWS

답변함 2년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

관련 콘텐츠