cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping level requirement, that idoc should not reach into SQL

Former Member
0 Kudos

Hi,

We have a requirement where a field data "MAT_NUM" in which 02 data come in PI level:-

01. MAT_NUM= value of the generated

02. MAT_NUM= SCHEME

My requirement is, when ever the field data "MAT_NUM = SCHEME", the value with this IDOCS should not reach into SQL..

Could any one help me out with the solution on the same in mapping level..

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Thanks for replying..

Receiver rule is used to determine, which receiver it should get replicate the data according to the conditon. But, my scenario is to ignore the idocs, in which the value "MAT_NUM= SCHEME"..

we are using single stack,, so how can be use this condition based receiver determination or condition based interface determination..

could you plz give any other alternative?

former_member184720
Active Contributor
0 Kudos

>>>we are using single stack,, so how can be use this condition based receiver determination or condition based interface determination.

It doesn't matter single stack or dual stack. Receiver determination xpath can be configured to filter the messages.

>>>could you plz give any other alternative?

Handle it in the mapping. use "createif" function to check this condition and map it to root(message type) node.

iaki_vila
Active Contributor
0 Kudos

Hi all,


>>>we are using single stack,, so how can be use this condition based receiver determination or condition based interface determination.

It doesn't matter single stack or dual stack. Receiver determination xpath can be configured to filter the messages.

As Haresh said is supported, and if you want to use receiver rules is supported form PI 7.4 SP08 (Support of Receiver Rules in Integrated Configuration (New) - What's New in SAP NetWeaver 7.4 (Relea...) and PI 7.31 SP13

Please, try any alternative proposed and tell us if you are having any issue.

Regards.

pvishnuvardan_reddy
Active Contributor
0 Kudos

Hi Ram,

As all our colleagues saying, YES it doesn't matter whether it is single stack or dual stack, condition based mapping or condition based routing is the same.

If you go for this approach, then the message gets failed throwing error no mapping found or no receiver found.

There is no feature I guess in PI to just stop the message instead of getting it fail based on some condition.

In ECC system, you can achieve this requirement, just check with your ABAPer to validate this condition before triggering the message. For this type of requirements, normally we will maintain these in ECC system.

Regards

Vishnu

Former Member
0 Kudos

Hi,

Thanks for replying me..

As checked condition based receiver determination or condition based interface determination can be achieved in pi single stack.


Actually, the requirement is not to send the idocs when MAT_NUM details ='SCHEME'..This cannot be acheived with createif function because createif will be used when the condtion exist it will create a target element. But here, if "MAT_NUM= SCHEME the created idocs should not go to SQL.


With the above information, which was said by vishnu, this can be takeplace by ABAPers to validate this condition before triggering.

Answers (2)

Answers (2)

pvishnuvardan_reddy
Active Contributor
0 Kudos

Hi Ram,

Please go for condition based receiver determination or condition based interface determination for this requirement.

From this, whenever the MAT_NUM = SCHEME, then the message gets failed in PI saying there is no receiver/interface found for the message.

Please let me know if you struck anywhere.

Regards

Vishnu

iaki_vila
Active Contributor
0 Kudos

Hi Ram,

AFAIK at mapping level you only can throw an exception avoid the receiver message will be generated.

I think the best choice is to use a receiver rule in the ID and don't change the mapping:

Regards.