cancel
Showing results for 
Search instead for 
Did you mean: 

Using Outbound Service of another Software Component in BTP

sebastian_wilhelm1
Participant
0 Kudos
205

Hi experts! 

We are developing Apps/Services on the BTP in the ABAP Environment. Every service has it's own software component. Different services need the same data (e.g. Business Partner Masterdata) from S4 Systems. To access this data, we created service consumption models and outbound services. As we don't want to create the same service consumption model and outbound service for every App, we want to outsource this coding/artefacts into another "general data connection" software component that every app has access to.

Unfortunately, I cannot access the artifacts of the "general data connection" swc from another swc.

Is there a way, I can access/reuse this data/artifacts so I don't have to recreate it for every App?

Thanks and best regards, Sebastian

peterpersiel
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Sebastian,

  • Objects of one software component cannot be used in another software component by default because software components provide their functionality via explicitly released APIs to other software components. This means you must set the API state of the object to Released (Release Contract C1) if you want to use an object from another software component. See Released APIs, Finding Released APIs andd Deprecated Objects.

In the planned release 2405, software component relations will be introduced which can be used to "release" objects on software-component level instead of object level, please refer to https://help.sap.com/docs/abap-cross-product/roadmap-info/built-in-qualities?profile=20034788#busine...

Best regards,
Peter

sebastian_wilhelm1
Participant
0 Kudos
Hi Peter! Thanks for your answer. I'm aware of the contract logic. Unfortunately, outbound services don't have API Contracts or I haven't found them. Does this mean, it's not possible to reuse Objects of the communication management and must recreate them for every App/Service?
View Entire Topic
kaidehmann
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi @sebastian_wilhelm1,

you can encapsulate the outbound call via consumption model in a class-based API and release this API, for instance.

SAP does this similarly. For instance: 

Best regards
Kai