Mapping help
Hi all,
Please help me in resolving following mapping problem:
I need to post a file to BOMMAT03 IDOC. File structure is parent material # with corresponding child material #s. Again parent with children. Can you help me achieving this in mapping.
Thanks all in advance.
Hi,
To create multiple IDOCs based on Parent material # and Child pair do the following(no need to use BPM for this)
1.change Imported IDOC(from r/3 system) occurrences to 0...Unbounded or 1...Unbounded and import modified XSD as external definition
2.use modified IDOC in message mapping
map parent material# node to /BOMMAT03/IDOC node
(This mapping creates number of IDOCs basesed on Parent material#s)
3.normal mapping for rest of the IDOC segments
if you need furthur details please let me know.
cheers,
Jag
Similar Messages
-
XSLT mapping Help Required.
XSLT mapping Help Required.
Hi Experts,
I am New to XSLT Mapping. I am practising the below Example:
InputXML File:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="Persons111.xsl"?>
<ns0:MT_XSLT_Source xmlns:ns0="http://XYZ.com/gen">
<Person>
<FirstName>Anshul</FirstName>
<LastName>Chowdhary</LastName>
<Gender>Male</Gender>
<Address>
<Street>2nd Main</Street>
<Houseno>83/b</Houseno>
<City>Mysore</City>
</Address> </Person>
</ns0:MT_XSLT_Source>
XSL StyleSheet File:
<?xml version='1.0' encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://XYZ.com/Gen"
Xmlns:ns1=”http://XYZ.com/Test”>
<xsl:template match="/">
<ns1:MT_XSLT_Target>
<Title> <xsl:value-of select="ns0:MT_XSLT_Source/Person/Gender"/> </Title>
<Name> <xsl:value-of select="concat(concat(ns0:MT_XSLT_Source/Person/FirstName,' '), ns0:MT_XSLT_Source/Person/LastName)"/>
</Name>
<Street> <xsl:value-of select="concat(concat(ns0:Mt_XSLT_Source/Person/Address/Houseno,' '),
ns0:Mt_XSLT_Source/Person/Address/Street)"/> </Street>
<City> <xsl:value-of select="ns0:Mt_XSLT_Source/Person/Address/City"/> </City>
</ns1:MT_XSLT_Target>
</xsl:template>
</xsl:stylesheet>
The Desired Output shuold be:
<?xml version="1.0" encoding="UTF-8"?>
<ns1:MT_XSLT_Target xmlns:ns1="http://XYZ.com/Test">
<Title>Male</Title>
<Name>Anshul Chowdhary</Name>
<Street>83/b 2nd Main</Street>
<City>Mysore</City>
</ns1:MT_XSLT_Target>
I have refered the xsl in xml and i am getting the below Oupt in a Single line like this:
Anshul Chowdhary Male 2nd Main 83/b Mysore
I am Unable to display in Target XML Fomrat as shown above. Please check and do the needful.
Regards,
GIRIDHARHi,
I have used below for testing.
Input xml:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="Persons111.xsl"?>
<ns0:MT_XSLT_Source xmlns:ns0="http://XYZ.com/gen">
<Person>
<FirstName>Anshul</FirstName>
<LastName>Chowdhary</LastName>
<Gender>Male</Gender>
<Address>
<Street>2nd Main</Street>
<Houseno>83/b</Houseno>
<City>Mysore</City>
</Address> </Person>
</ns0:MT_XSLT_Source>
xsl code:
<?xml version='1.0' encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://XYZ.com/gen"
xmlns:ns1="http://XYZ.com/Test">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<ns1:MT_XSLT_Target>
<Title> <xsl:value-of select="ns0:MT_XSLT_Source/Person/Gender"/> </Title>
<Name> <xsl:value-of select="concat(concat(ns0:MT_XSLT_Source/Person/FirstName,' '), ns0:MT_XSLT_Source/Person/LastName)"/>
</Name>
<Street> <xsl:value-of select="concat(concat(/ns0:MT_XSLT_Source/Person/Address/Houseno,' '),
/ns0:MT_XSLT_Source/Person/Address/Street)"/> </Street>
<City> <xsl:value-of select="/ns0:MT_XSLT_Source/Person/Address/City"/> </City>
</ns1:MT_XSLT_Target>
</xsl:template>
</xsl:stylesheet>
For testing in PI ,change the extension from .txt to .xsl and zip it and upload into PI as an imported archive .
Regards
Venkat -
Mapping Help for replacing source value
Mapping Help for replacing source value
Posted: Mar 14, 2006 1:06 AM Reply
Hi all,
I am unable to do transform the source value to required target value,
From Source ADDRESS_TYPE = 'HOME' should be replaced with 03 to target field ANSSA, and 'MAIL' to be replaced with 05, I am trying to do it but i am unable to handle it, please give u r valuable suggestions,
The source structure is like this,
- <Event ID="239" TRANS_TYPE="ADR">
<PersAddr GEO_LOC_CD="US" EMPLID="29" ADDRESS_TYPE="HOME" EFFDT="02/15/2006" ADDRESS1="92nd Floor" ADDRESS2="812backstreet" ADDRESS3="" ADDRESS4="" CITY="London" COUNTY="" STATE="AN" POSTAL="EC2N 4AG1" COUNTRY="GBR" KEY1="29" KEY2="HOME" KEY3="02/10/2006" />
<PersAddr GEO_LOC_CD="US" EMPLID="29" ADDRESS_TYPE="MAIL" EFFDT="02/15/2006" ADDRESS1="92nd Floor" ADDRESS2="812backstreet" ADDRESS3="" ADDRESS4="" CITY="London" COUNTY="" STATE="AN" POSTAL="EC2N 4AG1" COUNTRY="GBR" KEY1="29" KEY2="MAIL" KEY3="02/10/2006" />
</Event>
REGARDS,
sridharHi,
This can be done using user-defined function as well.
Code the function as...
if(Addr_Type.equals("HOME"))
return "03";
else if(Addr_Type.equals("MAIL"))
return "05";
else
return "Invalid Address Type";
Here, Addr_Type is Input String Argument for this function.
Map this function between ADDRESS_TYPE and ANSSA.
Regards,
Uma -
hello experts.
the standard functions are not working for the number of occurrences.
below is the structure.
Root 0....unbounded Root 0 ...unbounded.
events 0...unbounded
countries 1...1
total 0....unbounded.
amount 1
totals
Now the condition is.....if countries tag is not available and amount is zero and under total tag we have totals.....if the tag not there.......target side root should not come.
i have done mapping.
countries ----exists-------------------------------------
amount-------
equals-----not------ and--------createif----removecontext-----root.
constant------- and ---------------
(0)
totals --------exist------------
regards,
chinnaHi,
check this mapping help...
it looks both the threads are same.
Regards,
Muni. -
Need Mapping Help: Generate index if value comes
Hi Experts,
I need mapping help to generate index if value comes form source. we have 4 fields in item level of source and target side we have to pass the these filed values and sequence number.
below given the structures:
Source: Target:
Item Item
A1 Text
A2 Seq_No
A3
A4
my requirement is if A1 filed values comes from source we should pass to text and pass seq_no to constant-1, same as A2,A3 and A4 filed values also we should pass to text and seq_no for A2 is 2 and A3 is 3 and A4 is 4. suppose if A1 value is not coming from source we should pass seq_no for A2 is 1. if A1 and A3 filed values are not coming from source then we should pass seq_no for A2 and A3 are 1 and 2.
can you please help me how to achieve this. appreciate for your support.
Regards,
Sanjay.Hi Sanjay,
you can try this mapping
1. Generate the target 4 ITEM's by duplicating the subtree as shown below 3 times.
Now create the each target item starting from first by mapping them to A1,A2,A3 and A4 respectively. I have shown the first ITEM mapping above. similarly you can map A2 to ITEM[1],
A3 to ITEM[2] and A4 to ITEM[3].
2. Now you can map the A* fields to Text one to one as shown below
Please repeat the same for A2,A3 and A4 to respective Text fields.
3.
First seq_no field as shown
and similarly others as shown
Regards
Anupam -
Hi
I have SQL 2012 and while having a play around with a report I wanted to use a heat map ( or treemap ) as I believe it was called.
Any way I found that it one of the posts here points you to
http://www.sqljason.com/2012/03/heat-maps-for-ssrs-using-map-control.html
So I downloaded the dll
Went to my dw and executed the following
CREATE ASSEMBLY HeatMap from 'c:\HeatMap\HeatMap.dll' WITH PERMISSION_SET = SAFE
CREATE PROCEDURE dbo.CreateHeatMap (@Width real, @Height real, @SqlStrng nvarchar(4000))
AS
EXTERNAL NAME HeatMap.StoredProcedures.TreeMapGeography
Then executed the proc
DECLARE @return_value int
EXEC @return_value = [dbo].[CreateHeatMap]
@Width = 20,
@Height = 25,
@SqlStrng = N'Select WKDAY , SUM (TotalTransactions) ts FROM ReportingDW..f_transactionstolive group by WKDAY '
SELECT 'Return Value' = @return_value
when It comes up with the following
Msg 6522, Level 16, State 1, Procedure CreateHeatMap, Line 0
A .NET Framework error occurred during execution of user-defined routine or aggregate "CreateHeatMap":
System.FormatException: Input string was not in a correct format.
System.FormatException:
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
at StoredProcedures.TreeMap..ctor(DataTable TreeMapData, Single Height, Single Width)
at StoredProcedures.TreeMapGeography(SqlSingle Height, SqlSingle Width, SqlString select)
Im now not sure what to do any help would be great .
I just want a simple square treemap or heat map that highlights the size of each process in rectangles and cant believe how difficult it is.
Many Thanks
RobertHi Robert,
In your case, the issue may be due to that you have create an assembly, and then you register the assembly on a Microsoft SQL Server database. Then, you install a different version of the assembly in the Global Assembly Cache (GAC).
In order to work around the issue, please use the ALTER ASSEMBLY statement to update the assembly in the database. If the problem still exists after you do this, drop the assembly from the database, and then register the new version of the assembly in the
database.
There is a similar issue for your reference.
http://support.microsoft.com/kb/949080/en-us
If the issue is persist, I recommend you post the issue in the following forum:
.NET Framework inside SQL Server
It is appropriate and more experts will assist you.
Regards,
Alisa Tang
If you have any feedback on our support, please click
here.
Alisa Tang
TechNet Community Support -
Hi,
I have a XSD file with multiple references in my external definition. I am trying to build a schema validation functionality for a xml based on the multiple XSD's.
Is it possible to do a schema validation using xslt mapping?
I am using Altova mapforce to generate XSLT mapping but somehow it is not working. It gives me an error "XML Not well Formed".
Please help!!Hi Jyanth
yes you can do this
i advice you to use XML Schema Tools like stylus studio or spy for editing, mapping, converting, validating, generating, binding and documenting any XML data model
few links for you how you can do in XML
validating XML using XSLT
http://www.ldodds.com/papers/schematron_xsltuk.html
http://www.w3.org/TR/xslt20/
http://www.stylusstudio.com/xsd_to_xsd.html
https://www.xsltstudio.com/xml_schema.html
regards
Sandeep
If helpful kindly reward points -
Hi All,
I am new to XSLT mapping.
My requirement is: file to XML file with CDATA, for this I am planning to use the XSLT Mapping.
I downloaded the Stylus studio, then what next, Please help meu2026
In source flat file I have 5 fileds, and target I need to generate the XML file with CDATA set for 5 fields.
Thanks,
ANU-Hi Anu,
Is your requirement is sending 5 fields into one string on target side ,If yes
this code might help you for CDATA section
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<MT_TARGET>
<String>
<xsl:text disable-output-escaping="yes"><![CDATA[<![CDATA[?xml version=\"1.0\"
encoding=\"ISO-8859-1\"?>]]]]></xsl:text>
<xsl:copy-of select="*"/>
<xsl:text disable-output-escaping="yes"><!CDATA[]]]></xsl:text>
<xsl:text disable-output-escaping="yes"><![CDATA>]></xsl:text>
</String>
</MT_TARGET>
</xsl:template>
</xsl:Stylesheet>
//if you use " * " then entire source structure will go into target StringUsers node
Regards,
Sandeep -
Scenario mapping - help required
Scenario:
A Customer sends a material (for e.g., SUGARCANE) to the company (SAP Implementing). It processes it and send back as SUGAR.
The customer is charged for the services rendered.
The stock of sugarcane/sugar should be visible in the system.
Please guide me how to map this scenario.
I will be very much grateful.
Regards,
AnbuThis sales process is referred as Job Work in SAP.
Refer following SDN thread that can be helpful to you in understanding / reference:
- Sales Process of JOB WORK
If in case you have any concern or doubt about the process, do revert back.
But don't forget to put a effort search more information on JOB WORK for reference/understanding. So that you can specific to your requirement.
Regards
JP -
Mapping help required - extension
Hi,
I 've done the mapping based on the below conditions
Let say 3 fields called : a,b,c
if a = RAM then
b = b/c
here b field is in one segment and a & c fields are in child segment of above segment.
Note : all the above fields occurance : 0 to 1
But, i need to display the target including with the above condition also i need the value of the field "b" should display at target side where the condition doesn't satisfy .. ie., a # RAM.
Here i 've tried with if then else condition...but that doesn't work.
Please help me out how can i get the output.
Thanks in advance for your help
Regards,
Y.RajHi Yeshwant,
IF you have the source structure as:
segment
--b
---subsegment
a
c
then you may need these changes in Raj's mapping image
b-----------------------------------|
c (context changed to parent of c)--| useoneasmany -- divide
c ----------------------------------|
b-----------------------------------|
c (context changed to parent of c)--| useoneasmany -- else
c ----------------------------------|
Regards
Suraj -
Hi
I have a AEBS with Gigabit Ethernet upgraded to Firmware 7.2.1. I am running OS X Leopard 10.5.1 and I am unable to successfully forward ports. Every time I query a port that I believe to have mapped successfully it appears closed using canyouseeme.org.
I have followed numerous instructions, but they all seem to be instructions for Tiger, I'm wondering if a setting has been missed. I have successfully assigned a static IP address to my machine but still the port appears to be closed. I do run the Leopard firewall using specific applications option (the third one), but I have also tried it with the firewall off and it still hasn't changed anything, the ports are always closed.
So now I'm pretty much stumped. Has any one actually managed to get a setup similar to mine working, with the ports being open? All advice appreciated.
Thanks
Message was edited by: dalyboyHello dalyboy. Welcome to the Apple Discussions!
Try the following to see if it will help ...
To setup port mapping on an 802.11n AirPort Extreme Base Station (AEBSn), either connect to the AEBSn's wireless network or temporarily connect directly, using an Ethernet cable, to one of the LAN port of the AEBSn, and then use the AirPort Utility, in Manual Setup, to make these settings:
1. Reserve a DHCP-provided IP address for the host device.
Internet > DHCP tab
o On the DHCP tab, click the "+" (Add) button to enter DHCP Reservations.
o Description: <enter the desired description of the host device>
o Reserve address by: MAC Address
o Click Continue.
o MAC Address: <enter the MAC (what Apple calls Ethernet ID if you are using wired or AirPort ID if wireless) hardware address of the host computer>
o IPv4 Address: <enter the desired IP address>
o Click Done.
2. Setup Port Mapping on the AEBSn.
Advanced > Port Mapping tab
o Click the "+" (Add) button
o Service: <choose the appropriate service from the Service pop-up menu>
o Public UDP Port(s): <enter the appropriate UDP port values>
o Public TCP Port(s): <enter the appropriate TCP port values>
o Private IP Address: <enter the IP address of the host server>
o Private UDP Port(s): <enter the same as Public UDP Ports or your choice>
o Private TCP Port(s): <enter the same as Public TCP Ports or your choice>
o Click "Continue"
(ref: "Well Known" TCP and UDP ports used by Apple software products) -
Hi all,
I need help with java code please.
My source is a csv file and target is multiple idocs.
Source file structure is as follows:
Header (field 1, field 2, ........ field 10)
Item 1a (field 1, field 2, field 3, ......... field 180)
Item 1b (field 1, field 2, field 3, ......... field 180)
Item 2a (field 1, field 2, field 3, ......... field 180)
Item 2b (field 1, field 2, field 3, ......... field 180)
Item na (field 1, field 2, field 3, ......... field 180)
Item nb (field 1, field 2, field 3, ......... field 180)
First line is header. Second is VAT line. Third is Price line for that VAT. Now VAT and Price lines repeat. There need not be VAT line for non-European countries. So a VAT line may or may not preceed a Price line.
For example: the lines can be like:
Header
VAT1
Price1
VAT2
Price2
Price3
1) Now, it should produce 3 idocs like:
Header, VAT1, Price1
Header, VAT2, Price2
Header, Price3
2) One idoc should be created per a pair of VAT and Price lines and they will be identified by a co-relation of a particular field. So first I have to sort all the lines based on this field value. Then I have to read the lines in pairs. If no Vat line, I should just read the Price item and produce an idoc.
Can you please help me with the java code for this?
Many thanks in advance.
Ramesh.Many thanks Ram.
The reason for thinking to go for java mapping is that there is no keyfield for price line. The source file is a pipe delimited csv file. There is a keyfield for VAT line. The same field will be empty for the Price line. I am trying to ask them to at least provide a space for that field between the pipes for price line so that I can use in FCC. It looks like they can't modify the source file.
Any inputs please?
Regards.
Ramesh. -
hi all,
I've a source structure like this below in PI.
<MAT>
<doc type>pdf</doc type
<subnumber>1234</subnumber>
<id>45ABC<id>
<matno>ABCD</matno>
<filename>transaction1.pdf</filename>
</MAT>
target structure would be the same but one more field <filecontent> which is bytearray content such as content=[101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10, 13, 10, 84, 101, 115, 116, 13, 10, 13, 10, 84, 101, 115, 116, 13, 10, 84, 101, 115, 116, 13, 10]
<MAT>
<doc type>pdf</doc type
<subnumber>1234</subnumber>
<id>45ABC<id>
<matno>ABCD</matno>
<filename>transaction1.pdf</filename>
<filecontent>bytearraycontent</filecontent
</MAT>
And target is HTTP post for posting the above attribute names and values in the body of HTML
I am writing a java mapping program because I have to read the <filename> tag value from the incoming xml and read the file from PI server location and convert the file content to bytearray and also to map it to target structure for HTTP post. I am requesting help from java experts here in modifying the program according to this requirement. pls help
package com.usahealth.mapping;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import com.sap.aii.mapping.api.AbstractTrace;
import com.sap.aii.mapping.api.AbstractTransformation;
import com.sap.aii.mapping.api.StreamTransformationException;
import com.sap.aii.mapping.api.TransformationInput;
import com.sap.aii.mapping.api.TransformationOutput;
public class ReadAttrMap extends AbstractTransformation {
@Override
public void transform(TransformationInput in, TransformationOutput out)
throws StreamTransformationException {
AbstractTrace trace = null;
try {
// Initialize Trace
trace = getTrace();
// Get Input Message as DOM
DocumentBuilderFactory docBFactory = DocumentBuilderFactory
.newInstance();
docBFactory.setNamespaceAware(true);
DocumentBuilder docBuilder = docBFactory.newDocumentBuilder();
Document inDoc = docBuilder.parse(in.getInputPayload()
.getInputStream());
inDoc.getDocumentElement().normalize();
// Read from PayLoad - here is where I need help to read the filename - convert it to byte array and read other xml tag values and pass to target structure for HTTP post. I am using HTTP receiver adapter for posting
} catch (Exception e) {
trace.addInfo(e.getMessage());
throw new StreamTransformationException("Mapping Exception: "
+ e.getMessage(), e);
thx
mikeIndrajit, thx again
So I believe, the java mapping has to be changed to not pass MAT for create element
// building the target structure Element target = newdoc.createElement("MAT"); - I have to remove this
newdoc.appendChild(target); - have to remove this. Element doctype = newdoc.createElement(root.getChildNodes().item(1) will be changed to item(0)
.getNodeName());
And also to add the logic for [ ]
String data = "[";
if (fileArray != null) {
for (int i = 0; i < fileArray.length; i++) {
if data = "[";
data = data + fileArray[i];
else
if (i < fileArray.length - 1) {
data = data + ",";
endif.
data = data + "]";
is this right?
thx indrajit
-mike -
Hello Gurus,
I need help in message mapping. I have a requirement as below.
E1EDP01 segment contains many E1EDP19 segments
E1EDP19 segment contains QUALF, KTEXT and many other fields.
in the output field, for every QUALF = "002", I need the value of KTEXT of the same E1EDP19.
the output group is repeated per E1EDP01 (this is working fine)
The problem is that KTEXT segment is not coming in every E1EDP19, so the result is erratic.
the present code looks like
Qualf (context E1EDP01)--
Equals --
const-002 -- IF --Outputfield
KTEXT(context E1EDP01)--
I tried many other things as well, but result is not as expected
pls help.
Thanks
KQHi,
I am not sure why it is not working in your case. I developed same mapping and it is giving correct result.
Source Payload:
<E1EDP19 SEGMENT="">
<QUALF>002</QUALF>
<IDTNR/>
<KTEXT>A</KTEXT>
</E1EDP19>
<E1EDP19 SEGMENT="">
<QUALF>003</QUALF>
<IDTNR/>
</E1EDP19>
<E1EDP19 SEGMENT="">
<QUALF>003</QUALF>
</E1EDP19>
<E1EDP19 SEGMENT="">
<QUALF>002</QUALF>
<IDTNR/>
<KTEXT>SDN</KTEXT>
</E1EDP19>
Target field gets value as "SDN".
Is this your requirement?
Answers to your questions:
1) the context cannot be E1EDP19, cos there are multiple P19 segments in P01 and it should be done on P01, as the output is based on per P01.
Even if you are creating target based on line item level (E1EDP01), every E1EDP01 segment will have E1EDP19 and KTEXT with QUALF = 002. Also KTEXT of same E1EDP01 should go to target. Hence in your mapping context should be at E1EDP19 level.
2) the Qualf comes more number of times than KTEXT, so they are not "matching" at context level.
Map with default function will take care of this.
-Gouri -
Mapping Help/UDF needed.
Hi my source looks something like this
Recordset. 0-Unbounded.
Record 0-Unbounded
Value1
Value2
DOCNO
MatNo
target
=====
MT_Target
Recordset 0-Unb
Header
Val1
Val2
DOCNO
Material 0-Unb
Matno
Example Mapping
=============
Recordset. .
Record
XXX
YYY
100
01
Record
XXX
YYY
100
02
Record
AAA
ZZZ
200
22
Record
AAA
ZZZ
200
33
Then My Target would be like
MT_Target
Recordset
Header
XXX
YYY
100
Material
01
02
Recordset
Header
AAA
ZZZ
200
Material
22
33
Please notice the Grouping of DOCNo and Corresponding material numbers
So I am trying to group the Materials in the Target structure based on the DOCNO field. So all the materials falling under the same DocNo are listed under that DOCNo,Like if Matno 01,02 fall under Docno 100 so they are listed Under DOCNO :100
So if there are 3 DOCNos then we will have 3 Recordset in the target and each Recordset will have the corresponding MATNO for that DocNo. Hope u understand.
Could anybody please help me out with this, I have tried using SplitByValue Changing and Collapse Conetxt, it works for the Header but not for the "Material" Node. Help needed, Points Guaranteed.John,
DO you know the DOCNO value before runtime? Will it have only values 100 and 200? If so, then it is easy to do this using graphical mapping.
You need to evaluate the condition at recordset level in target.
Have a look at this thread for evaluating the condition at root level
Re: How to get access to sub-node elements with a UDF?
If the value of DOCNO is unknown at design time, then it is better to handle the mapping using JAVA mapping.
Regards,
Jai Shankar -
XML to IDOC : Hierarchy mapping help needed
Hi All,
I am trying to complete graphical mapping for an XML to IDOC structure. Both structures are EXACTLY same, but data is not populating in IDOC as desired.
My incoming XML structure and IDOC structure is
Header
Data_header (1 -- 999)
|_Data_item (1 -- 3)
Trailer
If I have only 1 header, then IDOC data is populated correctly.
But when I have multiple headers and theer items, the Headers are getting populated, but items do not get populated correctly.
*Example My Input is:*
Header
Data_header
|_Item_1
|_item_2
Data_header
|_item_3
Trailer
My output is (IDOC)
Header
Data_header
|_Item_1
Data_header
|_Item_2
Trailer
As seen above Item3 of Data_header2 has gone missing._
For Data Header, I am using REMOVE_CONTEXT function and for ITEM I am using SPLITBYVALUE. Thought this should have helped, but am struggling.
Any tips, help, greatly appreciated.
Many thanks
ShirinHello,
Have you done one to one mapping, as u mentiong they are exactly same..
if that's the case, then mapping test should be successful.
If there is any diffrence in occurences of target structure or any other difference and let me know.
If possible send me the target structure...
Regards,
Sreenivas.
Maybe you are looking for
-
I have an BI Publisher parameter <?P_INVOICE_BEGIN_DATE?> It displays like this: 1988-10-01T00:00:00.000-04:00 How do I display it like this: 01-OCT-1988 Thanks!
-
Can I set up an original ATV without an Apple remote?
My son got a 2nd gen Apple TV and gave me his old one - it is possible for me to set it up without the Apple remote - I have a wired and wireless network - iMac - iPhone & iPad with the Remore application - is there any way to set it up? Or do have t
-
Over the past two weeks I've had serious problems whilst working with my rMBP locking up. Whenever i have a few apps open and I swipe between them everything freezes for about 5-10 mins and sometimes not at all. I have to hard shutdown. I've heard ot
-
Gstreamer-sharp 0.99.0-2 fails on build
hello all im trying to intall gstreamer-sharp 0.99.0-2 off the aur andkeep running into this problem configure: error: in `/tmp/yaourt-tmp-root/aur-gstreamer-sharp/src/gstreamer-sharp-0.99.0': configure: error: C compiler cannot create executables Se
-
After downloading the latest version of quicktime and restarting, I got a strange problem: Finder won't run and it seems like the, I don't know, desktop won't run. I can't see the items i've got on my desktop, I can't adjust volume or any of the top