BPM 1:n mapping
Hi all,
I am doing a BPM for 1:n multimapping.
Start->receive idoc->Transformation->send asynchronous->Stop.
In the transformation, I have a source message and two target messages. I want to send this message as a single message to the receiving MQ system.
In the send asynchronous step after transformation, I can give only one message for sending. Can anyone suggest some solution for this?
Thanks in advance,
Deno
Hi,
If you follow Siva suggestion you will altering the XSD of the IDoc itself. I feel its better you enclose both messages in a separate root tag.
Also when merging, you should use Message Type XSD of your custom strcuture and not Data Type XSD of your custom structure.
The following is an example of a merged custom XSD and IDoc XSD:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="MergedMessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="resultset" type="resultset" />
<xsd:element name="CREMAS03">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="IDOC" type="CREMAS.CREMAS03"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="CREMAS03">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="IDOC" type="CREMAS.CREMAS03"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="CREMAS03.E1LFA1M">
<xsd:annotation>
<xsd:documentation>
Segment for general vendor data
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="MSGFN" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Function
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LIFNR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Account number of vendor or creditor
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ANRED" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Title
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="15"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BAHNS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Train station
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BBBNR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
International location number (part 1)
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="7"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BBSNR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
International location number (part 2)
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="5"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BEGRU" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Authorization group
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BRSCH" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Industry key
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BUBKZ" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Check digit for the international location number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DATLT" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Data communication line no.
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="14"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DTAMS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Report key for data medium exchange
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DTAWS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Instruction key for data medium exchange
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ERDAT" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Date on which the Record Was Created
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ERNAM" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Name of Person who Created the Object
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="12"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ESRNR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
POR subscriber number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="KONZS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Group key
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="KTOKK" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Vendor account group
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="KUNNR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Customer number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LAND1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Country of company
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LNRZA" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Account number of vendor or creditor
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LOEVM" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Central Deletion Flag for Master Record
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NAME1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Employee's last name
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NAME2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Employee's last name
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NAME3" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Employee's last name
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NAME4" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Employee's last name
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ORT01" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
City
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ORT02" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
District
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PFACH" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
P.O. Box
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PSTL2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Postal Code
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PSTLZ" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Postal Code
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="REGIO" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Region (State, Province, County)
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SORTL" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Character field length = 10
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SPERR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Central posting block
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SPERM" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Centrally imposed purchasing block
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SPRAS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Language key
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STCD1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Tax number 1
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="16"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STCD2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Tax number 2
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STKZA" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: Business Partner Subject to Equalization Tax?
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STKZU" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: Business partner subject to tax on sales/purch. ?
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STRAS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
House number and street
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TELBX" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Telebox number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="15"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TELF1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
First telephone number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="16"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TELF2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Second telephone number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="16"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TELFX" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Fax number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="31"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TELTX" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Teletex number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TELX1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Telex number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="XCPDK" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: Is the account a one-time account?
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="XZEMP" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: Alternative payee in document allowed ?
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="VBUND" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Company ID of trading partner
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="6"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="FISKN" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Account number of the master record with fiscal address
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STCEG" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
VAT registration number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="STKZN" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: Is business partner a natural person?
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SPERQ" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Function That Will Be Blocked
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ADRNR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Address
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MCOD1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Search term for matchcode search
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MCOD2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Search term for matchcode search
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MCOD3" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Search term for matchcode search
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GBORT" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Place of birth of the person subject to withholding tax
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="25"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GBDAT" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Date of Birth
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SEXKZ" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Key for the *** of the Person Subject to Withholding Tax
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="KRAUS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Credit information number
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="REVDB" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Last review (external)
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="QSSYS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Vendor's QM system
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="KTOCK" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Reference Account Group for One-Time Account (Vendor)
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PFORT" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
PO Box city
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="WERKS" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Plant
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LTSNA" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: vendor sub-range relevant
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="WERKR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Indicator: plant level relevant
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PLKAL" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Factory calendar key
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DUEFL" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Status of Data Transfer into Subsequent Release
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TXJCD" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Jurisdiction for tax calculation - tax jurisdiction code
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="15"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SCACD" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Standard carrier access code
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SFRGR" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Forwarding agent freight group
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:rest
Similar Messages
-
CPU time of BPM or message mapping?
Hi all,
is there a way to find out how much CPU time is spent by a certain BPM instance (or message mapping instance)?
It would be sufficient to get that value per BPM type / message mapping type.
So far, I've found the following sources, which all won't work, unfortunately:
- table SWWWIHEAD: No CPU time information (as far as I see)
- transaction STAD: I don't see a way to connect an entry to the resp. BPM. There is a Transaction-ID, but I can't find it in the BPM...
- transaction ST03N: Only aggregated values for user WF_BATCH, not detailed statistics
- several places, which only show clock time, but not CPU time
Thanks in advance!
Kind regards,
DennisHi Michal,
Thanks a lot for your info.
Too bad that there is no other possibility yet.
I'm not completely sure whether the result is worth the effort, though, as there will probably be a lot of different BPM types on this system, so benchmarking each is quite some work (and requires an otherwise idle test system during this time).
In addition, it could be difficult to generate test data that will most likely represent the expected data during production use. Especially for BPMs with many conditional tasks (branches, loops, ...), this can be a mess...
But I will propose it anyway. If it gets accepted, I'll post the gained experience with this approach here. Maybe it works better than my pessimistic expection.
Hopefully, SAP will integrate this functionality somewhen. I guess I set up some customer feedback.
Kind regards,
Dennis -
Accessing container variable of BPM in Message Mapping function
Hi,
I have a scenario in BPM where i have a container variable that is used as a loop counter.I want to access that counter defined , every time when i go around the loop and perform certain actions based on that counter. so how can i access that variable in my message Mapping function.Hi Sudharshan,
check these links, hope they give you the required information (i think there is some problem with SDN site, check these links after a while)
Re: How to use Container Variable across Maps
Container object in Message Mapping
Copy value of container (abstract interface) to an other container
Regards
Vishnu -
Exception handling in BPM and ABAP mapping
Hello all,
We have a BPM with this structure:
. REC (receiver)
. <begin BLOCK1>
. TRANSFORMATION1 (Abap Mapping)
. <begin EXCEPT> (exception branch)
. CONTROL (Cancel Process)
. <end EXCEPT>
. <end BLOCK1>
The same exception is assigned to the block; to the mapping and to exception branch.
The problem is that, when in the Abap Mapping the exception CX_MAPPING_FAULT is raised, the exception branch seems to be ignored and so, the BPM doesn't finish.
This problem only occurs in some of ours BPMs, because the same thing, when done in other BPMs, works fine.
I know i can change the BPM to turn around this problem, but i would very much like to know the solution to this.
Please, help us with this posting.
thanks in advance
Filipe BarreiraHi again,
We are in SP19, witch invalidates the note 921757 listed.
Also, i made an abap mapping witch only raises the exception. So i think it is not an ABAP error.
Also the XML seems to be correct, because this is a duplicates check routine. A message (with the same data) already entered previously (we trying to avoid another entry).
In the trace analysis for the message, it is stated that the exception has occurred:
<?xml version="1.0" encoding="utf-8" ?>
- <MappingTrace>
<Trace level="1" type="T">Mapping-Namespace:http://xi.es/suministros</Trace>
<Trace level="1" type="T">Mapping-Name:IM_SALIDAS_TESTE1</Trace>
<Trace level="1" type="T">Mapping-SWCV:7CE651C00ABC11DBCBF0C8E8C0A901F6</Trace>
<Trace level="1" type="T">Mapping-Step:1</Trace>
<Trace level="1" type="T">Mapping-Type:R3_ABAP</Trace>
<Trace level="1" type="T">Mapping-Program:ZCLTD_MM_SALIDAS_CARGA_TESTE</Trace>
<Trace level="1" type="T">Creating Abap mapping. Classname =ZCLTD_MM_SALIDAS_CARGA_TESTE</Trace>
<Trace level="1" type="T">CALL APPLICATION MAPPING.</Trace>
<Trace level="1" type="T">Application error in mapping program ZCLTD_MM_SALIDAS_CARGA_TESTE, error code: , error text:</Trace>
</MappingTrace>
the problem is that the process keeps running.
regards Filipe Barreira -
Hi All
I have done a BPM which collect messages and send them to a file adapter in one message.
I have added a tranformation step , which uses the interface mapping IM_map
when i run the program it failes , and in the sxmb_moni_bpe it showed mapping error and navigating to the message it says the following
http://test.com.IM_map
(SWCV=127593A01FA211DBC43DEDD90A16547D) not found.
I deleted the Interface mapping IM_map and created a new Interface mapping IM_map_2
and refreshed the cache and changed the mapping program in the BPM to the new one , I can se the IM_map_2 in sxi_cache but whenever I run the program it stille shows the message refering to the deleted inteface mapping IM_map that is not found .
how can I get rid of this error.
Thanks .Hi Malu
while creating new IM in IR activate this with your software compnent
right Click on the BP object in the IR and activate it select SWC also with this and activate
then make a full cahe refresh either BY t code SXI_CACHE
or In IR go to environment and make a full cache refresh
or through URL
http://<host>:5<sys#>00/CPACache/refresh?mode=full Full CPA cache refresh
regards
sandeep
If helpful reward points -
BPM steps for Mapping faliure :like if else
Hi
I had a requirment in XI for...
File --> XI --> Abap Proxy.
Condition : XI has to do some field validation in Mapping and post the data to abap proxy. and if validation in mapping failed
(Mapping failed), XI has to write the data in some database table.
Note :
Validation : Char,integer or length check.
what i am trying is that..
Send Step -> Transformation(it failed ,exception should called another interface) --> Abap proxy
i.e database table
M i going with correct flow..
Regards,
Ajay PHi
i created the BPM as per the answers...and activated
http://img390.imageshack.us/img390/9182/bpmshotsdd5.jpg
but when i am testing it..
1.Case :
mapping do'nt fail
in Sxmb_moni
first message is sucessfull but second message fail with error
of " NO RECEIVER DETERMINATION "
id ID i have created 3 receiver determinations 3 inteface determination..
MY ID part is quite similar to
ID of scenario of File to RFC with BPM.
Regards
AjayP -
How to check data after mapping for BPM if the mapping done outside BPM ?
Hi.
I have simple scenario BPM. Proxy -
> JDBC. I have 1 message mapping in between PROXY and JDBC.
and i have put the mapping outside the BPM (i didn' use transformation step). In case error happen. how i can see the data after the mapping ? i am always got difficulty to check the data if i have mapping outside bpm.
Thank you
FernandHi
In case error happen. how i can see the data after the mapping ?
You have used mapping in interface determination of corresponding receiver determination. In transaction SXMB_MONI, open message corresponding to that receiver determination. There in left hand side you will see IS pipeline steps. There if you want to see message payload that is input to Mapping than see payload of any pipeline step before Request Message Mapping and test it in Design. If mapping fails you can see trace of the same step.
Request Message Mapping ---> SOAP Header ---> Trace
There you can see where your mapping failed.
And as rohit replied you can also get message from RWB.
For further clarification revert back to us.
Regards
Sami
Reward points if helpful. -
Non BPM process - no mapping object found in interface determination
I'm working on a non BPM synchronous process of kind HTTP=>XI=>RFC
I completed my design and onto config now. I created receiver determination for HTTP (no sender agreement) and receiver determination for RFC. In my interface determination I cannot find mapping objects.
I included in HTTP service, the request, sync and response message and RFC shows up naturally with RFC objects.
Any ideas. I've been struggling with this for over a day now.
Thanks.Hi Parimala -
Just to clarify, for this scenario, here's what you need:
<b>Design</b>
1. One Message Interface (outbound/synchronous) corresponding to your HTTP request/response. You don't need a Message Interface nor Message Type for your inbound/synchronous RFC.
2. Request Mapping corresponding to request
- HTTP request Message Type to imported RFC (request)
3. Response Mapping corresponding to response
- RFC.response to some Message Type for the response
4. Interface Mapping
- interfaces: your outbound/sync Message Interface corresponding to HTTP request to imported RFC
- at bottom request tab, select your Request mapping (#2 above)
- at bottom response tab, select your Response mapping (#3 above)
<b>Config</b>
When you say the following:
>>><i>I completed my design and onto config now. I created receiver determination for HTTP (no sender agreement) and receiver determination for RFC.</i>
Don't know if that's a typo, but there should only be one receiver determination based on your sending system/service, sending interface (HTTP one), and interface namespace.
Confirm the above steps and see if that helps.
Regards,
Jin -
PO7.31 and BPM: Using Operation Mapping within BPM
Hello everyone!
I am facing an issue while trying the import/execute an Operation Mapping within a BPM. Have a PO 7.31SP07 installation (NWDS also on 7.31 SP07), and the process already have some working interface calls to PI, however still having issue while trying to execute the Operation Mapping:
1. After deploying the process, going to NWA -> SOA tab -> Application and Scenario Communication -> Application Communication -> select the process -> check the "localhost"/WS group for "Local System". The "Processing State" shows the error below:
Configuration for service group [localhost] failed. Error details:
[No endpoints found. Check if the service is configured and if its
endpoints are available in the . Service:
[{http://fusionconsultoria.com.br/sales_order_create}fusionconsultoria_salesord_om_SalesOrderSplit_ServicePortType]
Assigned Provider: [Local System]
Service Group: [localhost]
Service Group application: [fusionconsultoria/salesord]
Service Reference application: [fusionconsultoria/salesord]
2. During runtime, when trying to execute the OM automated step, on log viewer:
Error during SCA Processing
[EXCEPTION]
com.sap.engine.interfaces.sca.config.exception.ESBConfigurationException:
Could not process message for operation om_SalesOrderSplit_Service in
web service plugin module.
at com.sap.engine.services.sca.plugins.ws.WebServiceImplementationInstance.accept(WebServiceImplementationInstance.java:223)
at com.sap.engine.services.sca.das.SCADASImpl.invokeReference(SCADASImpl.java:314)
Caused by: com.sap.esi.esp.lib.mm.config.exceptions.ObjectNotExistsException:
Configuration not found for application:
fusionconsultoria/salesord,serviceRefId:{http://www.sap.com}salesord_fusionconsultoria~salesord~BPMcomponent_29768b4e-f59a-4ba3-a2ff-dee594b01ecf_WS.
Please check the configuration details from the NWA. You may have not
assigned the Service Group to a Provider System, or the generation of
the configuration has failed.
3. Carried out the steps from the referenced links below. They are quite similar to each other, however still facing the issue:
Reuse PI Operation Mapping as a service in SAP NetWeaver BPM
Using Operation Mappings (PI) in a BPM Process - Process Orchestration - SAP Library
Using NetWeaver PI’s Mapping in NetWeaver BPM
- Marked as "local provider" and WS;
4. Tried deleting, creating the automated step aswell reimporting the Operation Mapping.
5. Already reviewed the input/output mapping of the automated activity;
6. On ESR, the mapping works correctly.
7. Tried changing the outbound and inbound Service interfaces for the OM from stateless to stateless XI3.0, as well from synchronous to asynchronous.
At this moment I've completely ran out of ideas. Appreciate if anyone could give any insights, since I am running out of time with this project!
Thanks in advance to all and
Best regards,
Lucas SantosHi Lucus
I'm facing the same type of problem.
Why would re-creating the BPM fix this issue ?. I fear I would spend all this effort for nothing.
What does your operation mapping wsdl:service > soap:address look like ? What does your NWA BPM application Communication Configuration look like now - before you had that red light - like I have now.
The WSDL that is generated from the imported Operation Mapping : what end point is expected here. My wsdl:service > soap:address location has a port of 50500 - which does not even exist!. How can it work Does this get automatically deployed onto the Service Registry?.
I have built and deployed this but I get a run time error when it executes the operation mapping. A technical error during invocation: Could not invoke service reference name.
I have seen in the deployed BPM's Application Configuration against the Consumed Service Groups an error against the associated service group
Configuration for service
group [SG_localhost] failed. Error details: [No endpoints found. Check if the service is configured and if its endpoints are available in the . Service
It almost seems that it wants me to publish the end point on the service registry - no idea how....but I none of the blogs and post indicate that I need to fiddle with this at all.
I have this question in SDN too if you care to take a look. -
JDBC Lookup with BPM (no operation mapping)
HI,
In my scenario i have to use JDBC lookup to get the data ,but here i do not have operation mapping ( this part i am doing in BPM).. to select JDBC Look up communication channel.
In BPM i am facing issue to select lookup parameters.
-->In BPM for lookup parameter its asking for container element. I have created container element but that element is not showing in the container element list to select.
JDBC look up parameter i have created using category as adapter and BPM container element as simple.
Please let me know how to resolve this, ( Is this JDBC lookup limitation!)
Thanks
SuryaThanks Jenny and Rajendra for your reply.
Actually my question is wrong, here i am correcting this.
I have operation mapping ,but that OM is inside BPM, and i am facing the issue in selecting container element parameter in BPM.
-->In BPM for lookup parameter its asking for container element. I have created container element but that element is not showing in the container element list to select.
JDBC look up parameter i have created using category as adapter and BPM container element as simple.
Thanks
Surya
Edited by: SuryaPrakash Reddy on Aug 26, 2011 10:53 PM -
Different mapping tools in the market -- For BPM mapping in XI
Hi All
I am more intersted in learning the BPM mapping tools(3rd party or any)
Can any list out the different tools and which are the best ?
Our company looking forward to implement XI (BPM's) with mapping tools
Can any help me on this
Regards
RakeshHi Rakesh,
plz have a look to <a href="http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm">SAP Library: SAP Exchange Infrastructure</a> for understanding XI, BPM and Mappings.
BPM has no special mapping tool. You can use Java, ABAP, XSLT and graphical Mapping (Message Mapping) at XI, for any case - BPM or not. 3rd Party has nothing to do with BPM or Mapping. That means a non SAP system.
Regards,
Udo -
Build delay in messages to abap proxy without BPM / mapping
Hi everyone,
The abap proxy is receiving messages from PI, is having errors when receiving big loads of messages via PI.
The proxy lock's a table causing the next message to run in error.
The interface is not using BPM or a mapping.
My question is:
What are the possibilities to configure a delay in PI ? (not using a mapping or BPM process)
The abap proxy need some time to process a message before it receives the next one.
Br,
RoyHi,
>>>The proxy lock's a table causing the next message to run in error.
if you use async messages with fault messages correcty you can
restart those abap proxies just like IDOCs - and you can schedulerestarting that too
so this is nothing bad - just schedule the restarting and they will get processed
Regards,
Michal Krawczyk -
Error in BPM Mapping step.
Hi,
I am getting error in one of the BPM mapping steps.
The error description is as below.
Work item 000000051017: Object CL_SWF_XI_MSG_BROKER method CALL_TRANSFORMATION cannot be executed
com/sap/xi/tf/_MM_BAPI_ERROR_RES_TO_AUDIT_RPT_com.sap.aii.utilxi.misc.api.BaseRuntimeExceptionRun
Error handling for work item 000000050990
Runtime handle of object type could not be created
com/sap/xi/tf/_MM_BAPI_ERROR_RES_TO_AUDIT_RPT_com.sap.aii.utilxi.misc.api.BaseRuntimeExceptionRun
This mapping works fine in design time.
Please let me know if you have info on this error.
Thanks
KattaHi Mohan,
Make sure you are using same message container when you pass and try to you send information on these abstract interface references in BPM with respective to the container references or Only use Transformation in BPM if it is realy necessary with n:1 or 1:n mappings otherwise try to put the transformation outside your BPM because monitoring mapping in BPM is very hard to monitor and it is very hard to do error resolving.
Thanks & Regards
Agasthuri Doss -
File to File using BPM & value mapping
Hi,
I have the following scenario to do. sample file structure is given below.
source:
HDR 13052008INDIA
BDY 123456
BDY 1234567
EOF
Target:
HDR 2IN BDY 123456 EOF
HDR 2IN BDY 1234567 EOF
for the above mentioned source and target mapping. we have to use BPM and value mapping.
In the HDR row 13052008 is the date value this has to be passed to RFC function module and it will return 2, this value has to be mapped to target
And INDIA has to be mapped to IN using the value mapping option. similarly we have many coutry code.
could anyone let me know the step by step procedure to achieve this, I followed the blog https://weblogs.sdn.sap.com/pub/wlg/1926. [original link is broken] [original link is broken] [original link is broken] but it does not fit to my scenario.
help is appreciated.
Regards
RDSHey,
This is a normal file to file scenario.
You need to use RFC look up instead of value mapping.(as you need to extract 2 and IN from an RFC)
There is no need for a BPM.
refer to this blog(for RFC look up)
/people/sravya.talanki2/blog/2005/12/21/use-this-crazy-piece-for-any-rfc-mapping-lookups
this will solve your problem.
Output of RFC look up will be 2 and IN . So use the concat function.
Other values map them directly from source to target.
Also, set the occurence for the target structure as 0 to unbounded in the mapping.(this is to be done in order to have one file for each record of the source)
You also need to configure file content conversion.(both at sender and reciever side) to convert the text file to XML on the sender side and then XML to text at the reciever side.
refer to this link for FCC.
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
This is for sender file content conversion.
http://help.sap.com/saphelp_nw04/helpdata/en/44/79973cc73af456e10000000a114084/frameset.htm
This is for reciever FCC.
http://help.sap.com/saphelp_nw04/helpdata/en/44/79973cc73af456e10000000a114084/frameset.htm
reward points if useful.
regards,
Milan -
Multi Mapping - Receiver IDOC & Mail with BPM
Hi,
Is it possible to use BPM with Multi Mapping for IDOC & Mail receivers sent parallely..
Appreciate your help ..
Thanks,
vasanth.Hi Michal,
Thanks Michal,
We are using PI 7.1, Our Scope to do File to IDOC & Mail scenario in between we have to do RFC Lookups..
Could you pls guide me thru the steps fo BPM,
1 SA -> OB to AA
2 ID -> OB to AA & AA to Recv
3.RD -> OB to AA & AA to Recv
4.RA -> AA to IB & AA to IB
Correct me if i'm wrong..
Clarification : Is there is any way out to implement this scenario with out BPM.
We already implemented this scenario with 2 MM & 2 OM, Scenario works fine...but we have to use 1 Mapping..
Appreciate your help in advance..
Thanks,
vasanth.
Maybe you are looking for
-
Greetings all. My G4 Mini will not boot. Hangs at the grey screen (No Apple logo.) Booting to DVD, Single user mode, resetting PRAM, Safe mode, Open Firmware all unsuccessful (holding the appropriate key for about 2 minutes after the Boing.) Issues s
-
Event handling from class to another
i get toolbarDemo.java which make event handling to JTextArea in the same class http://java.sun.com/docs/books/tutorial/uiswing/components/example-1dot4/index.html#ToolBarDemo but i have another class and i make object of toolBar class and i move too
-
Problem is only with 2 w s x keys. Tried updating BIOS and num lock suggestion. Looking for instruction for removing keyboard or any suggestions
-
Bapi to update FB02 xref1 field
Hi Experts, I need to update the xref1 field in FB02. Is there any BAPI to update? Thanks in advance.
-
How do you recover files that were put in the trash before you emptied your trash?
Before realizing that I had saved my research paper under downloads rather than documents, I put all my downloaded files in the trash and emptied my trash. How can I recover this file? I appreciate all the help I can get! I have spent the last five h