cancel
Showing results for 
Search instead for 
Did you mean: 

idoc to soap using BPM

Former Member
0 Kudos

Hi,

Plz give inputs/blogs link to do this scenario.

i want to send idoc from R3 to web service(SOAP) using BPM bec i want to get the response.

how many Message Interface i need to develop for this?

Edited by: ruban R on Apr 1, 2008 12:29 AM

Edited by: ruban R on Apr 1, 2008 12:39 AM

Accepted Solutions (0)

Answers (1)

Answers (1)

justin_santhanam
Active Contributor
0 Kudos

Ruban,

IDOC is Asynchronous, do u want to send the data Asynchronously to webservice or Synchronously?

raj.

Former Member
0 Kudos

Hi,

I want to send idoc asynchronously to webservice

Thanks

justin_santhanam
Active Contributor
0 Kudos

Ruban,

So you don't want the response from webservice, am I right?

raj.

Former Member
0 Kudos

Hi,

I created three message Interfaces

1. MI_outbound_ayn

2.MI_Inbound_syn

3.MI_syn_abstract

sender is SAP R3

receiver is Webservice

is it right what i am doing?

Thanks

Ruban

Former Member
0 Kudos

Hi,

I want to get response from webservice but i do not want to send to sap r3.

i want to collect response in BPM abstract interface.

Thanks

Ruban

justin_santhanam
Active Contributor
0 Kudos

Ruban,

Got you! I thought you want to send the Webservice response back to SAP. You are doing Synch call just to make sure that the Webservice successfully got the data, am I right?

Outbound:

Message Interface abstract Asynch

Inbound:

Message Interface abstract Synch (Request Message type, Response Message type)

Message Interface abstract Request Asynch(Request Message type)

Message Interface abstract Response Asynch(Response Message type)

Message Mapping Program

IDOC to Request Message type

Interface Mapping Program

Outbound abstract Asynch to Message Interface abstract Request Asynch

BPM

Receive -


>Transformation------>Synch Call

raj.

Former Member
0 Kudos

Hi Raj,

you are right.

is it right what i created Message Interfaces.

In MI_syn_abstract interface what will be my output message and input message (like SOAP in and SOAP out)

In MI_inbound_syn interface what will be my output message and input message (like SOAP in and SOAP out)

Thanks

Ruban

justin_santhanam
Active Contributor
0 Kudos

Ruban,

Create Outbound Interface as Abstract.

>MI_syn_abstract interface

Correct. Output will be your webservice Request Message, Input will be your webservice Response Message.

>MI_inbound_syn interface

Not needed.

Create two more Abstract asynch interfaces , with your webservice Request and Response Message.

is it clear? if not reply back.

raj.

Former Member
0 Kudos

HI Raj,

I am doing this rightnow.

I understood ur idea.

Thanks for ur immediate reply.

After finishing this scenario i will close this thread.

justin_santhanam
Active Contributor
0 Kudos

No Problem. Take your own time, if you have any doubts reply back.

raj.

Former Member
0 Kudos

Hi,

what are things i need to do in ID?

In the communication channel and Receiver agreement, receiver determination, sender agreement.

how to create Messages and Messagee1 node in Message Mapping?

Thanks

Ruban

Edited by: ruban R on Apr 1, 2008 2:03 AM

justin_santhanam
Active Contributor
0 Kudos

Ruban,

No sender comm.channel , No sender Agreement.

One Receiver channel(SOAP), one Receiver Agreement

Receiver Agreement

Sender Service: BPM

Sender Interface : MI_SOAP_Synch_Abs

Receiver Service: BusService_SOAP

Receiver Comm.Channel - SOAP

Receiver Determination -1

Sender Service: BusinessSystem_ECC

Sender Interface : MI_IDOC_Asynch_Abs

Configured Receivers : BPM

Interface Determination -1

Sender Service: BusinessSystem_ECC

Sender Interface : MI_IDOC_Asynch_Abs

Inbound Interface : MI_IDOC_Asynch_Abs

No Interface Mapping.

Receiver Determination -2

Sender Service: BPM

Sender Interface : MI_SOAP_Synch_Abs

Configured Receivers : BusService_SOAP

Interface Determination -2

Sender Service: BPM

Sender Interface : MI_SOAP_Synch_Abs

Inbound Interface : MI_SOAP_Synch_Abs

No Interface Mapping.

Hope it helps!

raj.

Former Member
0 Kudos

Hi,

These Steps may help you

Design objects:

Data type & Message Type

1) Import the IDOC and Later you import the Idoc, doble click on it a export it to your driver, next import it as External Definition for reason becouse if not, you wont be able to create a MI type synch with IDOC and genericResponse structure

2) Create data type for your Response Type of IDOC

3) Import the WSDL File For Request and the Response Type

4) Create the Message types according to the Data types which we created

Messgae Interface:

1) Outbound synchronous:

output message will be ur idoc external definition file

input message will be ur message type that u have created.

2) Abstract Outbound Synchronous:

use the same as in Outbound Synchronous

3) Inbound Synchronous:

input message will be ur request message of RFC/WebService

output message will be ur response message of RFC/Webservice

4)Abstract Inbound Sunchronous:

input message will be ur request message of RFC/WebService

output message will be ur response message of RFC/Webservice

Mapping

Request Message Mapping:

b/w ur idoc external definiton and request message of RFC/WS

response Message Mapping:

b/w ur Response message of RFC/WS and ur message type

Interface Mapping

Import MI(abstract) of IDOC

Import MI of WS

select the mapping for request and response Tab

BPM

1) In container window define a variable named IDoc_ABS with category abstract interface and

type (select the MI of IDOC alone)

define a variable named GenericRespnse_abs with category abstract interface and type (select

MI of genericResponse alone)

2) Create a Recieve Step --> in property message select the container you define before of idoc.

3) Define a Send Step--> mode synchronous

select MI type abstract and sync (idoc and genericResponse)

for property request message selects container Idoc_ABS

for property response message selects container GenericRespnse_abs.

Save your Changes and thats all for BPM

Configuration

1) Create scenario

Assign BS and create comunication channels with QoS (quality of service) type BE

2) Import your BPM

Create a Receiver Determination

-->in the target service select the BPM. Save

-->In overview windown at foot windowns select MI IDoc_abs only. nothing else

Create a Receiver Determination

-->here the system who send data is BPM

-->in the target service select the BS of receiver system.Save

-->In overview windown at foot windowns select interface mapping and assing communication channel

what we do here. the flow is next

1) Receive data from sender system and send it to BPM

2) BPM call bs of target system (WS). how? because in interface determination you selected

before the interface mapping

Regards

Seshagiri

Former Member
0 Kudos

HI,

Now My scenario is like this

I have only 2 message interfaces,

MI_abstract_asyn_outbound

MI_abstract_syn_inbound

I am using Fault message Type also.

plz give me some inputs to develop other components in IR and ID (like IM, MM, CC, sender agr, receiver agree),

intergration process

Thanks

Ruban

justin_santhanam
Active Contributor
0 Kudos

Ruban,

What happen, why again u got diverted? I made any mistake in the configuration?

@ Seshagiri: Why we need Outbound Synchronous?

raj.

Former Member
0 Kudos

Hi Raj,

I want to post article(from SAP R3) to webservice.

That is idea..

when i do Interface mapping , i am getting error like this...

12:16:50 Start of test

Call method execute of the application Java mapping com.sap.xi.tf._MM_WP_PLU03_TO_Webservice_for_Articles_in_store_

Cannot produce target element /ns0:Messages. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd

12:16:50 End of test

could you help me to resolve this?

Former Member
0 Kudos

Hi Raj,

I followed ur way.

but my requirement changed like this.

As per my new requirement, I have to do like this.

Thanks

Ruban

justin_santhanam
Active Contributor
0 Kudos

Ruban,

What logic did you used to map Messages tag in the target?

raj.

Former Member
0 Kudos

Hi,

I could not understand clearly.

U are asking about the target message in Message mapping or Interface mapping?

Thanks

Ruban

justin_santhanam
Active Contributor
0 Kudos

Ruban,

I'm asking abt Message Mapping. The error states that it couldn't able to populate Messages tag. That's the reason I asked what logic are u using to populate Messages tag...

raj.

Former Member
0 Kudos

Hi,

I am working on that mistake raj. I think i have error in message mapping (i mean name space) bec when i execute message mapping it is working fine.

I am using graphical mapping from one idoc source structure to soap request structure message.

how can i create messages node in message mapping?

Thanks

Ruban

Former Member
0 Kudos

Hi,

In the target message ..occurence is 0 to unbounded.

I mapped main segment of idoc with soap input (request) str.

My message mapping of that idoc segment looks like below,

Idoc segment - exists - createif - update Article

Thanks

Ruban