cancel
Showing results for 
Search instead for 
Did you mean: 

Interfaces of different SCVs are always assigned to the same proxy object

adam_sosnowski
Explorer
0 Kudos

Hi,

for clean versioning and maintenance of development branches we use different versions of a software component in the ESR. It looks like this:


SC_NAME 1.1 of namespace.com
+- http://namespace.com/project/a
   +- Service Interfaces
      +- Interface1
      +- Interface2
      +- Interface3
SC_NAME 1.2 of namespace.com
+- http://namespace.com/project/a
   +- Service Interfaces
      +- Interface1
      +- Interface2
      +- Interface3
SC_NAME 1.3 of namespace.com
+- http://namespace.com/project/a
   +- Service Interfaces
      +- Interface1
      +- Interface2
      +- Interface3
...

Here is the problem:

Service interfaces are assigned to proxy objects by using the key type/name/namespace of the repository object (refer SAP note [886682|https://service.sap.com/sap/support/notes/886682]). That means that the software component version of the repository objects is ignored when generating ABAP proxy objects.

Since in our case (see above) all service interfaces have the same type/name/namespace combination, all services interfaces get assigned automatically to the same ABAP proxy object. That makes it impossible to maintain different versions of ABAP proxies for the corresponding service interfaces!

As a workaround we only have two opportunities:

Either we add the version number of the SCV to the namespace (e.g. http://namespace.com/project/a/v1, http://namespace.com/project/a/v2, ...) or we add the version number to the interface name (e.g. Interface1_v1, Interface1_v2, ...) in order to distinguish the service interfaces for the proxy generation.

Both solutions are very ugly in my opinion, since they make our clean versioning with SAP's software component model useless.

Are these solutions the only way to seperate the generated ABAP proxies for each version of a SVC? If yes, then I can hardly believe, that nobody else in the SDN ever mentioned this - in my opinion - huge flaw in the ABAP proxy generation.

Please correct me, if I missed something.

Regards,

Adam

Edited by: Adam Sosnowski on Dec 3, 2009 11:25 AM

Accepted Solutions (0)

Answers (1)

Answers (1)

stefan_grube
Active Contributor
0 Kudos

Inside an SAP system, there is only one valid SWCV. So when you decide to use version 1.1 for one system, you cannot use 1.2 for the same system.

Unfortunately all SWCV appear in the proxy generation. In my opinion this is a bug.

You should not have different versions of the same interface in one system, as monitoring and error handling becomes very complex.

adam_sosnowski
Explorer
0 Kudos

Hi Stefan,

thank you for the quick response. It really looks like a bug, since it undermines the versioning with the software component model.

Inside an SAP system, there is only one valid SWCV. So when you decide to use version 1.1 for one system, you cannot use 1.2 for the same system.

I don't exactly know, what you mean with "inside an SAP system". We connect different versions of a client application to different versions of service applications. Newer version may contain an enhanced data model (new fields in the messages, etc.). For that reason, we split the development into branches using different SWCVs in order to handle e.g. change requests for older versions seperately. This approach is a common pattern and it is also the purpose of using software component versions.

Regards,

Adam