cancel
Showing results for 
Search instead for 
Did you mean: 

Validate the data for SAP system

Former Member
0 Kudos

How do you validate the data for SAP receiver system (RFC or IDOC adapter)?

It is necessary to recognize does exists reference object or does field has the right value.

Do you validate it in BPM or you handle application/technical acnowlegment? Or Messaging monitoring is enough for your requirements.

In case of ABAP Proxy will it enough to catch Fault Message in order to define what happens?

Accepted Solutions (1)

Accepted Solutions (1)

bhavesh_kantilal
Active Contributor
0 Kudos

Hi Sergey,

One solution for your validation of the input values of your IDOC would be to do it in your MAPPING PROGRAM.

You can either write USER DEFINED functions that can do the validation on each field or you can do your entire mapping in your JAVA MAPPING.

Regards,

bhavesh

Answers (3)

Answers (3)

Homiar
Employee
Employee
0 Kudos

Sergie,

I agree with Christine, all semantical validations should be performed on the inbound processing of the receiver/target system. In your case, since SAP is the receiver system, the validations would be done in SAP. If you have an IDoc, lot of validations will be handled by standard functionality. In case you want to validate before executing an RFC, then you can build a wrapper (ABAP Proxy) around the RFC ... do all validations in the Proxy.

I think Anuradha is referring to LSMW conversion object.

Regards,

Homiar.

Former Member
0 Kudos

Thanks to all!

I agree too with semantic validation... It is a proof of my guess. But our analysts want to do all validation in XI I will try to changed they mind.

Unfortunatelly Visual Mapping doen't validate by XM Schema. Mapping of fields with string type to integer type will not throw an exception in case of wrong type.

Do you validate each type by hand (java function)?

Is it possible to create common Java Mapping that will get XMLSchema by interface name and force validation?

bhavesh_kantilal
Active Contributor
0 Kudos

Hi Sergey,

//Do you validate each type by hand (java function)?

though it sounds mundane and tedious, I think that is how it works unfortunately.

I dont think what you want, <i>//Is it possible to create common Java Mapping that will get XMLSchema by interface name and force validation?</i> is currently possible.

Regards,

bhavesh

Former Member
0 Kudos

Hi,

we had similar requirements in the past and as the graphical mapping only validates for mandatory fields being created in the target, we wanted to program it ourselves. Our inquiry at SAP brought the answer that it is not possible to access the XSD schema of an interface from within a mapping. So right now, there is not really a practical way.

But recently i heard in the new XI (or better PI) of the next NetWeaver release due Q3 of this year, schema validation will be introduced.... i hope, that'll be true.

Regards

Christine

Former Member
0 Kudos

Hi,

there are two different kinds of validations:

syntactical validation (length and data types of fields etc.) and semantical validations (correct customer in order, allowed number range etc.)

From a theoretical point of view, only the first kind should be carried out in XI, all semantical validations should be part of the backend inbound processing. And indeed for IDocs and RFCs you will get according error messages in the backend. If you call proxies, you will need to code that yourself.

In General i'd implement syntactical validations in XI, if more a necessary then XI already carries out (e.g. mandatory fields filled). For data validations i would rely on the backend, meaning for IDocs you should look into using ALEAUD IDoc, which will return any error messages during IDoc inbound processing. For RFCs you can have Exceptions defined which will translate to a negative application ACK.

Regards

Christine

Former Member
0 Kudos

Hi Sergey,

You can do this in the 'Maintain Field Mapping and Conversion Rules' step. In this double click on the '__BEGIN_OF_RECORD__'. This will take you to the ABAP editor and you can code the validation here.

To get the '__BEGIN_OF_RECORD__' if you do not find, take the menu Extras -> Layout and select all the check boxes.

Regards,

Anuradha.B

Werner_Magerl
Participant
0 Kudos

Hi,

can you tell me, where I can find what you mean?

Is this XI or R/3 ALE/IDOC customizing?

best regards

Werner