Abstract message
hi expect,
why should we are creating abstract message?in bpm why we are using abstract message?
HI rohit,
we create abstract interface in bpm because this type of interface has no direction i.e. inbound or outbond. so as per our requirement we can use this interface for any direction
also check these links
/people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm - Walk through BPM
/people/siva.maranani/blog/2005/05/22/schedule-your-bpm - Schedule BPM
/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi - Use of Synch - Asynch bridge in ccBPM
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken] - Use of Synch - Asynch bridge in ccBPM
reward if help
regards
Trapti
Similar Messages
-
In bpm(abstract message used in container)
hi expects,
for what purpose we are using abstract message in container).Hey Rohit,
To give an exact picture of the use of container variables you can refer them as direction less interfaces.
When we Create Message Interfaces We define <b>Category</b> (Inbound, Outbound, Abstract) , <b>Mode</b> (Synchronous , Assynchronous).
<b>Inbound</b> refers to Incoming message to the XI server.
<b>Outbound</b> refers to Outgoing Message from XI server
<b>Abstract:</b>
When the concept of integration process comes into picture it has to refer to interfaces defined in its own s/w component version. It can only refer to Abstract interfaces as they are direction less and when used in integration process they are assigned direction dynamically. EX: if you have a defined a container variable XYZ which refers to some abstract interface ABC and call this XYZ container variable in in receieve step of the int pro then it can as inbound.
For further clarification please refer <a href="http://help.sap.com/saphelp_nw04/helpdata/en/78/62373f58502e48e10000000a114084/content.htm">Defining Data Process in Containers</a>
Hope itz clear.
Cheers,
*Raj*
*Reward Point If Found Usefull* -
Usage of Abstract Message Interface for non-BPM
Hi,
I have a message that I am using as both as an inbound and an outbound for 2 different mapping. I am not using BPM. Is it better to create 2 message interfacesone for outbound and one for inboundor should I just create 1 abstract message interface that can be used in both mappings? What are the advantages and disadvantages of using 2 message interfaces (1 inbound and 1 outbound) against 1 abstract message interface? Would using abstract cause a lot of problems or performance problems in the future?
Thanks in advance.
Regards,
Elberthi,
abstract messages are only used for BPMs
so I suggest creating 2 instead if you don's use a BPM
http://help.sap.com/saphelp_nw2004s/helpdata/en/e3/3355d5617d0a4cb0fe8e042c752caa/content.htm
Regards,
michal
<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a> -
Unable to view Abstract Message Interface(Sync) in Container Step of BPM
Dear Friends,
This is IDOC---SOAP Sync Communication Interface
I have created the External Def by exporting & importing the Standard Idoc
and Imported the WSDL File which has the Request & response Structure
I have created the Outbound Sync message Interface for Idoc side
and Abstract Sync message Interface for the same to use in BPM
and also created Inbound Sync Message Interface for Webservice side
and Abstract Sync Message Interface for the same to use in BPM
Problem is::::
While creating the Container varible inside the Integration Process, i have to select the Abstract Message Interface which i created for Idoc.
But it is not at all visible in the list.
What might be the problem
REgards
SeshagiriHi,
I have created
For Idoc side
1) Create O/b Sync by having request of Idoc and response structure of Idoc
2) Create ABS Sync by having the request of Idoc and response structure of Idoc
3) Create ABS Async by having the Request of Idoc Only
For Webservice side
1) Create I/b Sync by having the request of webservice and response of that
2) Create ABS Sync by having the request of webservice and response of that
3) Create ABS Async by having the Response of Webservice only
I created the Steps inside the Integration Process as showed in the screens.
1)Integration Process graph
http://img145.imageshack.us/img145/4848/ipviewwv1.jpg
2)Receive Step
http://img293.imageshack.us/img293/1756/receivepropng8.jpg
3)Send step1
http://img179.imageshack.us/img179/2200/send1bd0.jpg
4)Send Step2
http://img182.imageshack.us/img182/8468/send2wl1.jpg
When i check the F7, it is throwing the error like
http://img247.imageshack.us/img247/4356/errortx3.jpg
Regards
Seshagiri -
Requirement of a abstract message interface
Hello,
I wonder when to use abstract message interfaces?
The documentations says:
An abstract message interface has no implementation in an application system. You cannot generate a proxy for this interface type. You use abstract interfaces in business processes, for example, to receive or send messages from application systems. You can use the same abstract interface to receive or to send.
What does IMPLEMENTATION mean in this context? Can anybody discribe a concrete need for abstract message interfaces?
Thank YouHi Mario,
you only use those interfaces inside a BPM:
send step, receive step, transformations etc
(no other use)
- you cannot create proxies from it
- you must have an normal (not abstract) interface
to send data to XI or to receive data
(so once you create everything inside your integration process - with the use of abstract interfaces)
inside ID you still have to use standard interfaces
(outbound or inbound)
Regards,
michal
Message was edited by: Michal Krawczyk -
SOAP XI scenario, ambiguity in Abstract Message Interface
Hi Forum,
I have a SOAP client(synchronous)--->XI scenario,
let me describe the scenario,
Step1. SOAP client sends a SOAP request to the BPM in XI, using a synchronous receive step (Abstract synchronous MI),
Step 2. in BPM, it does some transformation
Step 3. the response of the step 2, is then sent as the response for the SOAP client request, using a Synchronous send (sync async bridge maintained),
Step 4. i use the abstract Synchronous MI (for the SOAP client to send request), to create a WSDL, and use it in ALTOVA to create SOAP request automatically,
now the problem is, In integration builder, Design,.........
when i make the abstract Synchronous MI (for the SOAP client to send request), i use 2 message types RequestMessage (output message) and ResponseMessage (input message), ******sounds bit oppsosite ..but it is like that only......but the source of ambiguity
but when i create the WSDL using the web service creation tool, in integration builder, Configuration, ....... the WSDL is bit unexpected, it shows input as ResponeMessage and output as RequestMessage....hmm.....as such i cant use that WSDL in any tool like altova to create the SOAP request automatically....
****the source of all ambiguity is....in the screen for creating the Message interface (as Synchronous abstract/outboud), we give OUTPUT MESSAGE as the input message type and vice versa...
do u agree.......
am i wrong?
in that case how can i make a correct WSDLLet us discuss point by point.
You are doing a scenario SOAP to XI with no end point on the other side. Means you are using XI as the end point for simulating. This is my assumption.
Step1. SOAP client sends a SOAP request to the BPM in XI, using a synchronous receive step (Abstract synchronous MI),
Ok.
Step 2. in BPM, it does some transformation
Ok
Step 3. the response of the step 2, is then sent as the response for the SOAP client request, using a Synchronous send (sync async bridge maintained),
You should not use a synchronous send step here. You should be using an Async send here. The sync asyn bridge must start in the first receive step and end here.
Step 4. i use the abstract Synchronous MI (for the SOAP client to send request), to create a WSDL, and use it in ALTOVA to create SOAP request automatically,
You shuld create the WSDL for the Outbound Synchronous message interface which should have been created to supply the message to Abstract Synchronous interface. Then only you will be able to test the message.
So.. you need totally
1. OB Syn MI
2. Abstrac Syn MI (Receive in BPM)
3. Abstract Async MI (to send response to SOAP caller)
VJ -
What is an Abstract in message interface ?
hai pals,
can anybody clarify ,what is an Abtract in message interface of integration builder of xi.
Is this,neccessary to specify and create the interface with type abstract.
if yes , can u pls tell me why?
right answers will be appricited
have a nice day.
rajyou can also take a look at this definition:
"Interface for which no direction is defined initially.
An abstract message interface has no implementation in an
application system. You <b>cannot generate a proxy</b> for this
interface type. You use abstract interfaces in business
processes, for example, to receive or send messages from
application systems. You can use the same abstract
interface to receive or to send."
from:
http://help.sap.com/saphelp_nw04/helpdata/en/e3/3355d5617d0a4cb0fe8e042c752caa/content.htm
Regards,
michal -
Message Interface : Outbound, Inbound, Abstract ?
Hi all,
does anyone have tips to use an Outbound, an Inbound or an Abstract Message Interface ? When data is sent from XI, should we use an outbound one ?
Thx to all.Hi Elliot,
Always think in perspective of the sender and receiver systems.
For sender system, it is output to sender so, Outbound
For receiver system, it is input to receiver so, Inbound
Abstract is used for BPM it can act as both inbound and outbound.
Regards,
Sreenivas
Message was edited by:
Sreenivas Nettem -
In BPM sync/async Step , can you have different message schema?
Scenario:
File to XI to BPM to SOAP to RFC
In order to trigger the webservice , I use a dummy file which will be polled at a certain frequency- once in 30 minutes in Test mode - this will call the Webservice. The answer of webservice is sent to RFC Async.
so these are the Repository objects I created :
1. File Outbound Async Message Interface- Output Message (File_Request_MT)
2.File Abstract Message Interface-Output Message (File_Request_MT)
3.Async/ sync bridge Abstract interface to call the Webservice
4 Webservice Inbound Sync Message interface- with both input and output message
5.RFC Inbound Async message interface- input message (RFC_Request)
6 RFC Abstract Async Message interface-input message (RFC_Request)
BPM
a) Receive step which uses the the object 2.
b) Sync send which uses object 3
c) Send step which uses Object 5
I am using a BPM to Receive the file data/ "request " by using the File abstract message interface
Then use the the object 3 to call the webservice in BPM .
My question is on this step
Can I have for the abstract Interface(Object 3) the Request message as File_Request_MT and
response message as (RFC_Request) ?
I use a message mapping to map Input and Ouput message of Object 3 with Object 4.
Thanks for your insightRaj,
Thanks for the feedback , but I have a question regarding your reply
Interface Objects
Object 1: File_Request_Abs
Object 2: Soap_Response_Abs
Object 3:Soap_Abs_Synch
Output Message:File_Request_Abs
Input Message:Soap_Response_Abs
Object 4:Rfc_Request_Abs
The question is about
a)SOAP_RESPONSE_ABS : could you please tell me why do we need an abstract interface -SOAP_RESPONSE_ABS?
I created a message type MT_SOAP_RESPONSE and used that in the BPM sync Send step as the Input message.
b)Soap_Abs_Synch- I am using message types
MT_File_request and MT_SOAP_Response From your reponse, it looks like you are suggesting to use
Abstract Interfaces as Output message and Input Message, am I correct? Could you please tell me whether this has advantages over using message types MT_file_request and MT_soap_reponse? I haven't used Abstract interfaces before as Input message and output message; infact, I wasn't even aware that it can be. Please confirm that it is possible. Thank you for increasing my knowledge !!!
These are the Objects I created
Message Type :
a) MT_Filerequest
b) MT_SOAPresponse
Message Interface
a)MI_Filerequest_out_async -
Output message
Mess. type MT_filerequst
b)MI_filerequest_async_abs-
Mess. type MT_filerequst
Used
i) used for BPM receiver step- container definition
ii) receiver determination
c)MI_webservice_sync_in - This is created from External definition
d)MI_webservice_sync_abs-
Input message - MT_soapresponse
Output message- MT_fierequest
Used:
i) used for BPM sync send step ,
ii)Interface mapping between MI_Webservice_sync_in and MI_webservice_sync_abs
iii)Container element-SOAP_response
e) MI_RFC_async_out
Input message
RFC_Request(This is imported from RFC definition)
g) MI_RFC_async_abs
Input message
RFC_Request(This is imported from RFC definition)
Mapping
Message mapping
i)Filerequest_TO_SOAPrequest
Source: MT_Filerequest
Target: SOAPrequest(Got from External definition)
ii)SOAPresponse_TO_BPM_response
Source : SOAPresponse(got from External definition)
Target : MT_SOAPresponse
Interface Mapping
i)IM_BPM_TO_SOAP
Source Interface : MI_webservice_sync_abs
Target :MI_webservice_sync_in
uses following message mapping
Request : filerequest_TO_SOAPrequest
Response:SOAPresponse_TO_BPM_response
BPM container element
i)Receiver_container TYPE MI_Filerequest_out_async
ii)SOAP Responsecontainer TYPE MI_webservice_sync_abs
iii)RFC_Request_container TYPE MI_RFC_async_abs
BPM flow
Receive---->Send Synch-->Transformation----->Send Asynch
Receive -
> receiver_container
Send Synch -
> receiver_container(Request Message), Soap_response_container(Response Message)
Transformation -
> Source(Soap_response_container), Target(RFC_request_container)
Send Asynch -
> RFC_request_container
Thanks for your help!!! -
BPM - Message has error on the outbound side
I get this error 'Message has error on the outbound side" . I am using IDOC - BPM - JDBC. I checked SXI_CACHE and I see ret code 99 for this Integration Process. I tried to activate it. I see an error saying that ZCUST_NUMBER is not a component object of PAYLOAD. I have this context object defined on the Abstract Message Interface built to store the IDOC.
Any ideas are helpfulMichael,
<i>The program outputs a returncode = 99 during the cache refresh of an integration process (ccBPM), with an error message that says that 'xxxx' is not a component of the 'PAYLOAD' data object.</i>
If you are getting the above error, check OSS NOte 890760 -
Append two message into one message in BPM
hi,
i have to receive two different outbound message interface in fork step. as soon as two message received
i have to append those message to one message as below;
A message
1001 AAAA BBBB CCCCC
1002 DDDD BBBB DDDDD
B message
1003 CCCC 1321 12213
1004 DAFD DDDD DDDDD
1005 EDDD DDDD DDDDD
target message for C
1001 AAAA BBBB CCCCC
1002 DDDD BBBB DDDDD
1003 CCCC 1321 12213
1004 DAFD DDDD DDDDD
1005 EDDD DDDD DDDDD
and then i have to send C
is it possible on BPM? i think not mapping issue and correlation.
how can i append two abstract message to one abstract message?
thanks
venjaminhi all,
BpmPatternCollectMessageToBeCollected in basis in ir is not multi-row, this message type structure is just for individual message..
in my case, source message type can be received multi record in row in once.
so, what i want to say is interface mapping regarding
appending two abs message into one inbound message for transformation.
if it is possible, we may not need to container operation step because we already have bundled message in target abstract message. we can just send target abstract message.
if it is not possible, how do you map to use in transformation step? and configure container operation?
container operation should be appened from one structure message into one multi message.
does it make sense?
thanks
venjamin -
Hi,
i have developed Multi-Mappings Externally via XSLT my XSLT creats a structure like:
<?xml version="1.0" encoding="utf-8"?>
<Messages>
<Message1>
<Envelope>data1</Envelope>
<Envelope>data2</Envelope>
<Envelope>data3</Envelope>
</Message1>
</Messages>
in my BPM Container i have 2 Abstract messages (variables) one mulitline one single for the Envelope Structure.
In my szenario i am using a Transformation Task to generate the multi message and after this i using a container operation to assign the message to the Mulitline Container element.
Now i want to send these messeage seperatatly. My Problem is that the multiline Container element instead of 3 messages allways contains only 1 message.
Can somebody tell me how i can assign all Messages to the multiline container element?It is pretty simple
In the transformationtask as the target message u have tu use the multiline container element. -
Problems mapping 2 messages into 1
Hi.
I'm facing a problem mapping 2 messages into 1.
I have a BPM that has 2 abstract messages. In a transformation step, i transform this two messages into one but when i check the IDOC that finally has arrived to R3 backend, the fields that belogns to one of the source messages doesn't appear.
In message mapping i select the two source messages and the target message and the same in interface mapping.
Because is a transformation step inside the BPM, i can't see in SXI_MONITOR what's happening.
any idea of what's happening?
Regards.
Inigo.Inigo,
Though its in BPM u can where well test the transformation mapping
wht are the messages going in what is coming out
Check How to monitorcc BPM
https://websmp206.sap-ag.de/~sapdownload/011000358700003141152005E/HowToMonitorccBPM.pdf
This PDF is very handy
Regards
Kavitha -
Error in syncrhronous message retrieving data of AS400
Hello guys,
I have an scenario where I receive a message from a JMS queue in XI, this message goes to a BPM and in the BPM I send a synchronous message to database with AS400 to retrieve a very big file.
The problem is that after 3 minutes we have the error an error in the JDBC adapter:
Delivery of the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.MessageExpiredException: Sync application request expired.. Setting message to status failed.
If the request is less than 3 minutes there is no error in the JDBC adapter. Do you know if there is any parameter in XI that we have to modify?
The data we retrieve is more than 100 megabytes. This could be a problem?The really strange is that in the adapter we seen that the request has been processed successfully, but after we have the error.
Somebody had the same error? Anybody knows how to solve it?
Many thanks in advance.
Regards,
Xavi.Hello guys,
now I don't have the timeout but I have another error.
<SAP:Category>XIProtocol</SAP:Category>
<SAP:Code area="MESSAGE">PART_BOUNDARY_NOT_FOUND</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Boundary SAP_c1870c01-c051-11dd-9b08-6e04941dd8e9_END not found</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
Do you know what could be the problem?
I go to the JDBC adapter and the select has been processed successfully, but now I have this error.
I have a BPM with a synchronous abstract message and two asynchronous abstract, one for the request and other for the response. With the responses I put an action send to send it to a proxy.
Do you know why I have this error?
Many thanks in advance.
Regards,
Xavier. -
Multi mapping before BPM and then message routing to different IDocs
I am working on PI 7.0.
I have a scenario where a message from a third party needs to be split and then mapped to multiple IDocs in the target. This decision happens based on an RFC call to SAP ECC. Before the message passes to BPM, I have done a multi mapping to make the RFC call and split the message into multiple messages. Subsequently I have taken a multi line container inside the BPM to receive these messages and process them Parforeach and then a switch is applied to handle the rest of the scenario.
Problem is when I am trying to execute the scenario, it fails in first step(multi mapping) before the BPM, it is not able to create the node for the multiple message.
To explain a bit more, Message type say M1 is linked to Message interface MI1_OB. Then I have created an abstract message interface MI1_ABS and made it as 0---unbounded. Similarly in the message mapping I have changed the occurrence of the target message type (same as source message type)Hi Ambrish Mishra,
Please check "Performing Several Multi-Mappings in a Series" [Link|http://help.sap.com/saphelp_nwpi711/helpdata/en/21/6faf35c2d74295a3cb97f6f3ccf43c/frameset.htm] . According it, second mapping should be able to accept this structure as input
<?xml version="1.0" encoding="UTF-8"?>
<sm:Messages xmlns:sm="http://sap.com/xi/XI/SplitAndMerge">
<Message1>
</Message1>
<MessageN>
</MessageN>
</sm:Messages>
Regards,
Raghu_Vamsee
Maybe you are looking for
-
Adding new key figure in Info structure
Hi all, I am in a need to add a new key figure to our info structure here in my company. The way I understand it is, it would be best to create a NEW info structure and copy all existing key figure and characteristic and then insert my new key figure
-
How to restrict access to views for some users in the app?
Hi SDN! I have an WD application wich embedded in the portal. Appication has 2 iViews (and 2 pages respectively). These iViews consist several views connected with each other (e.g. one view provide list data, second view is add/edit form for this da
-
Hi Folks, I am sending data to the webservice using SOAP receiver. In the runtime workbench I can see the message as successfull, but the end user is claiming that , he didn't get the data from XI. What could be the possible reason for this? Where mi
-
Oracle.apps.inv.itemUpdate Event
I created the subscription oracle.apps.inv.itemUpdate event and trying to capture the event key in my initial testing but it's not working. The event is not firing on the item update, please let me know if there are any other setups required to work
-
Having problems openning PDF files. They open blank?
PDF files open blank.