cancel
Showing results for 
Search instead for 
Did you mean: 

Do you have suggestions for naming conventions within AIF?

BaerbelWinkler
Active Contributor
0 Kudos

Hi Folks!

Being new to AIF I'm currently in the information gathering phase for myself and colleagues as we are starting to think about implementing interfaces with the help of this toolbox. I already found and read (or at least skimmed!) through various of your discussions as well as the very helpful blog posts from Verena, Michal and Andrey.

One of the first things we want to do - before we really get started for real - is to come up with some feasible naming conventions for the various customizable bits and pieces like

  • Namespace
  • Interface Name
  • SAP Data Structure (if applicable?)

We also have some general questions:

  • Does it make sense to prepare for one namespace per SAP-module or is it better to have just one and do the separation on the Interface name "level"?
  • Is it preferred - even though SAP doesn't seem to enforce this - to start our own names with a "Z"?

Searching SCN for "naming convention aif" didn't find anything related and while scrolling through the discussion forum I also didn't see any titles which might go into this direction. In order for us to not re-invent the wheel - or to start off in the wrong direction - I'm hoping to get some helpful pointers from you.

Thanks much for any feedback you have!

Cheers from Germany

Baerbel

Accepted Solutions (1)

Accepted Solutions (1)

robphelan
Participant
0 Kudos

From my limited experience:

  • Namespace
    • What we’ve done is create a namespace for each functional area (ZFIN, ZCOM, ZHCM etc..).. but read below for more info..
  • Interface Name
    • Here’s where you want to put some thought – you want to think about how you want to display your data in the Error Monitor. For instance, I have 2 ZCOM Interfaces, ZCSS_EXT & ZCSS_DOCS, and I don’t need to see them together in one Error Monitor session. However, I have 8 versions of ZCSS_DOCS and I do want to see them in the same Error Monitor session. Since they were all similar, I made sure to use the same Interface name, but different Versions to make it easy to view.
  • SAP Data Structure (if applicable?)
    • For each interface, we have a RAW and INTERNAL structure. I’ll name them the same except append “RAW” to the external structure. That way, when you make changes to one of them, you’re not hunting and pecking to find the name of the other.

   

We also have some general questions:

  • Does it make sense to prepare for one namespace per SAP-module or is it better to have just one and do the separation on the Interface name "level"?
    • At the very least, I would create a namespace per module. I think namespaces, like packages, are to be used to group interfaces together and have been underused. Going forward, we will be creating a namespace for each major implementation under a module. For instance, instead of a broad ZFIN namespace, we’ll have a namespace for the Tax implementation, another for the Banking interfaces, and another for Credit interfaces... etc..
  • Is it preferred - even though SAP doesn't seem to enforce this - to start our own names with a "Z"?
    • I would.

Good luck.. keep a "lessons learned" document and don't be afraid to create a blog based on it.

Regards,

Robert Phelan

BaerbelWinkler
Active Contributor
0 Kudos

Thanks, Robert!

That's a good start - and meshes quite well with some initial but not yet organised thoughts I have.

Depending on where this discussion goes and if there's enough interest in it, I might be tempted to write things up as a blog (would be a first for me in SCN!).

Cheers

Baerbel

Answers (2)

Answers (2)

BaerbelWinkler
Active Contributor
0 Kudos

Hi Folks,

thanks for your feedback thus far (more is certainly welcome!).

Today, we made a decision to have our namespaces start with a "Z" followed by the process or application it is created for. In most cases, this will either be an internally defined short process-name or an SAP-module.

For the interface-name we'll wait with a final decision until we actually have more experience with AIF but we already decided that it won't need to start with a "Z" as an interface cannot exist without the namespace and that will start with a "Z".

Another open question is how best to fill the version. As this is a character field, I'm wondering if it actually has to be filled with numerical values (as seen in some traning material) or if it could also be used to set up different definitions as needed e.g. by company code or country. If it's to be filled with numerical values only, than these should - in my opinion - always use the complete length with leading zeroes and be incremented in steps of 10 (e.g. 00010, 00020...00100..). Without the leading zeroes, the sort-order would be out-of-whack as soon as you have more versions (e.g. 1, 10, 2, 3...)

The other general thing we have decided is to centrally control the naming of these AIF-organisational entities and to not make this a "free-for-all".

Any thoughts on this?

Thanks and Cheers

Baerbel

Former Member
0 Kudos

Hi Bärbel Winkler,

Could you kindly share the naming convention you have come up with. We are in the process of creating a naming convention document for SAP AIF objects.

Thanks,

Sudhansu

BaerbelWinkler
Active Contributor
0 Kudos

Hi Sudhansu,

this is what we got thus far - which isn't all that much:

Namespace

06


Z*


The 5 freely available characters should either denote the application/project the interface is for or the SAP-process area it belongs to.

Interface10*Descriptive name for the interface
Version05NNNNNCharacter field - numerical content needs to be numbered in steps of 10 and have leading zeros

Raw

Structure

30Z*tbd
SAP Structure30Z*tbd

This is however bound to evolve as we are still in the process to implement our first processes via AIF.

Hope this helps at least a bit!

Cheers

Baerbel

Former Member
0 Kudos

Hi Bärbel,


Your question is very good. We had the same and decided for following own approach:

  • Namespace
  • A Namespace is a concatenation of business process and SAP module, e.g. O2C_AR, P2P_AP, P2P_MM, R2R_GL.
  • We have one global namespace for global objects as checks on currency code, date format value mappings, etc.
  • Interface Name
    • Every interface has its own name. To be honest for inbound interface the names are more a user friendly description, for outbound we follow a little rule that they start with OUT_.
  • SAP Data Structure (if applicable?)
    • We try to do the structure mapping in the middle-ware and AIF is only responsible for the functional mappings.
    • The root structure name is different between raw data and SAP data. But the sub structure and field names are equal. Because of this we can use the move corresponding fields or in some only monitoring interfaces even move corresponding structures.

We also have some general questions:

  • Does it make sense to prepare for one namespace per SAP-module or is it better to have just one and do the separation on the Interface name "level"?
    • Because AIF support and business users differ in different business processes we separated in these processes and modules. In addition the recipients groups are similar to the name spaces.
  • Is it preferred - even though SAP doesn't seem to enforce this - to start our own names with a "Z"?
    • For namespaces (six characters) and interface names (10 characters) we don’t.

Best wishes

Christoph