пятница, 17 января 2014 г.

Internal workshop. SAP Automatic payment program, DME engine

Yesteday I've initiated this kind of a workshop for my FI department fellows.

I've provided config journal, I am going to share below.. also showed detailed examples of APP configuration within the system, particularly, configuration of DME engine, which wasn't very common tool to use for my colleagues. Also there's a project running currently, it requires configuration of DMEE tree for clients' needs.

There's SAP training course for APP, probably, I've mentioned that already in my previous blog posts, but what I wanted to say is that there's no proper documentation on DME engine, even what they have there in help.sap.com not enough for understanding of 'nature' of this tool. But once you start using it, you realize how easy it is, and that that particular tool enables you to do things that you were doing by coding in ABAP before. Which means DME requires zero ABAP knowledge, just technical names of fields of structures and that's it.

I am sure you will love it, it is brilliant, from my point of view :)

So...

There are several ways of creation of DME files via APP:
-      Classical programs, starting from RFFO*
    -         PMW
    -        PMW formats adjusted by using DME engine
Classical programs are adjustable, you require ABAP coding here.
PMW formats are not enough when it comes to local requirements, so you still have to adjust formats. For instance, check for PMW format –MT100. I guess it is still adaptable by using a lots of ABAP coding.
And convenient way of creation required format that meets requirements of the client is:
(1)  Creation of payment method (country/company code levels);
(2)  Activating PMW format for new payment method;
(3)  Creation of DME format tree (name must be the same as payment method ,I guess);
(4)  Mapping of new payment method with DME format.

You don’t need to ABAP here. I think that’s about it. 


Let’s consider structure of MT100 format I’ve adjusted according to needs of the client.

First of all, create new DME tree format you’re going to use (DMEE t-code). Copy it from some standard SAP_SAMPLE, or something like this, format, but initial one doesn’t really matters, in any of the ways you’re going to change it:



After you created format tree, go to FBZP and create new payment method, do all the configurations. Then activate PMW for newly created payment method:


Then you need to tick ‘Mapping with DME structure’ option in OBPM1 t-code (super important, don’t mess with the option you see in maintenance of payment method within company code. But anyways, system will not allow you to do this, simply cause it is inactive there, so go to OBPM1):


That’s about it, now your payment method is ready –ready J Do related assignment in master data, don’t forget to use it while posting invoices (in case, you have several payment methods within master data of customer/vendor).
And then run Automatic Payment Program (APP).
One more thing… Before running the APP, create variant for your newly created format ZMT100 (for instance). Go to FBPM t-code, and create the variant:


Save the variant:


And THEN assign the variant to your format in OBPM4 t-code (just don’t forget this!!):


What else...

Customizing of DME format tree itself is quite easy and pretty much intuitive, I would say. You need:
-       Root;
-       Segment;
-       And elements of the segment.
Let’s consider couple of fields you want to be included in your DME format:
/NAME/Key Century LLP, Almaty, Kazakhstan
To create this line:

1)    Create Root ‘NAME’ or whatever you want to name it, it won’t appear anywhere. Following pic shows the structure of the root:


1)    After you’re done with the root, create segment ,name it /NAME/


You can pick if this one is a field with constant parameter (word, sentences, poems) included in it, or you can work with the structure elements (we’re working in PAYM application area, don’t get confused).
On a ‘Source’ tab insert constant parameter, which is going to be /NAME/. Now this one will be shown in your output.
So we’re done with the first part of the line /NAME/Vendor for test so far.
Then, create new element, name it ‘Name’ (again, someone is having lack of fantasy today J)
Add the constant parameter on the Source tab:


And that’s it. You’re done with the line.
All of the rest lines can be created by using same logic (create it or copy it, it doesn’t matter, just do it right, OK? J)
Let’s see how using structures work here.
For instance, you want to create line:


i.e. /DATE/10.01.2014
Do the same as for the ‘NAME’ line, create /DATE/ segment (don’t pay much attention on naming of the segment, it doesn’t appear anywhere, what you use in Source tab is all that matters), create underlying element /DATE/ (field with constant parameter /DATA/ in it). Then create another element, that will include date itself. Say, you want to set today’s date:


Tick ‘Structure field’ option, then go to Source tab and define structure and the field of the structure you want to use here:


i.e. we’re taking system data.
And there you have your line created in your DME format. 








2 комментария:

  1. this is the most explicit specification of this process I found in internet.
    in my experience we used PMW, but without using DME engine. Instead of DME we used russian localization function modules from function group j3rf_paym.
    I made some configurations with DME and it's working!
    There is still some questions I am investigating at the moment. For instance, how to print pdf-form of payment order after uploading MT100 to bank-client. I am currently considering abap-report on tables reguh-regup, but standard solution would be preferable.
    thanks for sharing!

    ОтветитьУдалить
    Ответы
    1. That's a very interesting point you're considering... Please do keep my updated on the results of your investigations :) Thanks in advance!

      Удалить