JMS Content Conversion with spaces
Hi
I am using the JMS Content Conversion to transalte MQ messages ( they come from the Mainframe ),to XML Format.
These messages are in fixed lenghts structure , the fields contain blanks (spaces)
The adapter cannot deal with it,only fixed lenghts without spaces , the monitor gives the following error
XI inbound processing failed for message at 2006-08-24|07:45:25.518+0200. JMS and XI identifiers for message are ID:414d51204445564d41494e31202020207aabe04420c2ea13 and bd95c760-3333-11db-b915-001125a56002 respectively. JMS adapter will rollback database and JMS session transactions
Have some1 dealed with this issue? managed to solve it?
Thx,Shai
Hi Shai.
Before you call him ,try to use the simple convertion in the sender JMS comm. channel,then after you got the first XML structure to the XI ,use a simple\advanced java function from the message mapping and get rid of the spaces if they bother you.
Can you post the fixed width message you get from JMS I'd like to have a look.
By the way ,how did you resolve the File content convertion with 4 levels?
Regarding Yaki's phone...well I'm sure your Boss have it.
8-)
Again ,good luck.
Nimrod
Message was edited by: Nimrod Gisis
Similar Messages
-
Hi ,
I am facing issue in JMS content conversion
my file looks like as below...
field1¤field2¤
field1¤field2¤
field1¤field2¤
field1¤field2¤
in module i have used this
AF_Modules/MessageTransformBean PLAIN2XML
Transform.Class com.sap.aii.messaging.adapter.Conversion
Transform.ContentType text/xml;charset=utf-8
xml.conversionType SimplePlain2XML
xml.documentName MT_data
xml.documentNamespace http://xyz.com
xml.fieldNames field1,field2
xml.fieldSeparator ¤
xml.processFieldNames fromConfiguration
xml.structureTitle records
but i am getting following error
Error occurred while processing message: . Detailed error (if any): com.sap.aii.adapter.jms.api.channel.filter.MessageFilterException: Transformer Conversion3.0.5226 Error initializing Class: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: (4408) Parameter xml.fieldFixedLengths or xml.fieldSeparator is missing (4409) Consistency check: no. of arguments in xml.fieldFixedLength does not match xml.fieldNames (0 <> 2) : TransformException: Transformer Conversion3.0.5226 Error initializing Class: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: (4408) Parameter 'xml.fieldFixedLengths' or 'xml.fieldSeparator' is missing (4409) Consistency check: no. of arguments in 'xml.fieldFixedLength' does not match 'xml.fieldNames' (0 <> 2)
ironically when i use file adapter, its reading the file properly and converting XML as expected?
Did anyone face this issue.....
is this issue because of an extra ¤ .. is so... why its not giving issue with File??You need an additional hierarchy level:
root
-> row
-> data
In your example:
<?xml version="1.0" ?>
<ns1:HQ_reply_MT xmlns:ns1="urn:abc.com:HQToSAP">
<b><row></b>
<Data1> PIPXSDI3070 00000 00342YSDI3070PROCESS_MQSERIES HQXPLOR10 XPLOR.ORDER.RESULTS 0000 000000000000000086312 Invalid Process flag : 2. 065</Data1>
<b></row></b>
</ns1:HQ_reply_MT>
Regards
Stefan -
Sender File Content Conversion with re-occuring record pairs
Hi,
Our FCC works fine with the following structure:
Header1: H1F1, H1F2, H1F3,... (1:1)
Header2: H2F1,H2F2,H2F3,..... (1:1)
Notes: NF1,NF2,NF3,.............(1:1)
Line1:L1F1,L1F2,L1F3,.............(1:N)
Line1:L1F1,L1F2,L1F3,
Line1:L1F1,L1F2,L1F3,
Line1:L1F1,L1F2,L1F3
Line2:L2F1,L2F2,L2F3,............(1:N)
Line2:L2F1,L2F2,L2F3,
Line2:L2F1,L2F2,L2F3,
Line2:L2F1,L2F2,L2F3,
But we have structure as below:
Header1: H1F1, H1F2, H1F3,... (1:1)
Header2: H2F1,H2F2,H2F3,..... (1:1)
Notes: NF1,NF2,NF3,.............(1:1)
Line1:L1F1,L1F2,L1F3,.............(1:N)
Line2:L2F1,L2F2,L2F3,.............(1:N)
Line1:L1F1,L1F2,L1F3,
Line2:L2F1,L2F2,L2F3,
Line1:L1F1,L1F2,L1F3,
Line2:L2F1,L2F2,L2F3,
Line1:L1F1,L1F2,L1F3,
Line2:L2F1,L2F2,L2F3,
Lin1 and Line2 occur as multiple pairs making it as multiple line items. When we use content conversion parameters as below:
Header1.fieldNames H1F1,H1F2,H1F2,...
Header1.fieldFixedLengths 10,5,10,.....
Header1.keyFieldValue H1
Header1.keyFieldInStructure add
Header1.endSeparator 'nl'
Header1.lastFieldsOptional YES
and same for Header2, Notes, Line1, Line2
It picks up only first Header1, Header2, Notes, Line1 and Line2 in a recordset.
Does anyone have idea how could we do this content conversion? Any help would be appreciated.
Reagrds,
N@v!nHi Navin,
You can check the below links :-
Complex File Content Conversion - with random multiple occurrences
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2007/08/03/file-adapter-receiver--are-we-really-sure-about-the-concepts
Complex content conversion File sender
These might be of some help.
Regards,
Rohit -
JMS content conversion adapter module
Hi All,
In JMS Content conversion module Xml2Plain how do u put two new lines 'nl'.
I am using localejbs/AF_Modules/MessageTransformBean in adapter module.
If I put xml.record.fieldSeparator in parameter name and in parameter value if I put one 'nl' it gives me one new line. Now I require two new lines in my output text so I put 'nl' 'nl' in parameter value but it takes only one new line.
e.g
Vivek
mumbai
India
John
Delhi
India
Now I want the output as:
Vivek
mumbai
India
John
Delhi
India
Thanks in advance.
ravijeettry,
xml.record.fieldSeparator '0x0D''0x0D'
or
xml.record.fieldSeparator '0x0A''0x0A' -
Hi
In the sender JMS content conversion, I do not want Recordset name hence I specified,
Parameter Name: xml.ignoreRecordsetName
Parameter Value: true
But am still getting the Recordset name in the payload...
Is this working for someone or a bug?
Thanks in advance!
Amulya>
Amulya Lewis wrote:
> Hi
>
> In the sender JMS content conversion, I do not want Recordset name hence I specified,
> Parameter Name: xml.ignoreRecordsetName
> Parameter Value: true
> But am still getting the Recordset name in the payload...
> Is this working for someone or a bug?
>
> Thanks in advance!
> Amulya
when using the MessageTransformBean do note that xml.ignoreRecordsetName does not work -
Testing JMS content conversion
Hi Experts,
I have a scenario MQ-->PI--ECC.
MQ sends a flat file and there is JMS content conversion used in sender JMS channel. On MQ side channels are not yet setup. Now I need to test if JMS content conversion is working properly. I cannot test by triggering flat file from RWB.
Is there a way I can trigger a file from any third party tools and test the content conversion. Do you have any suggestions to make this test possible.
Thanks,
Avinash.Hi Avinash
One option is to create a temporary File/FTP sender channel and use it in the sender agreement replacing the JSM channel. In the File/FTP channel, use the MessageTransformBean to achieve content conversion. This way, you can test out the content conversion parameters, and once the JMS server is ready, you can just swap it.
Rgds
Eng Swee -
Receiver file Content Conversion with Header line
Hi,
Here I am doing receiver file content conversion with header line.
I am able to get the output file correct, when I open the file in notepad the header line and data appearing in the same line (not accepted).
But when I tried to open the name file in internet explorer I can see the header line and data in two different lines (accepted).
What should I do I want to see the same output in the notepad?
Please help me out.
Thanks in advance,
Srikanth.You can use NameA.addHeaderLine.
Specify whether the text file will have a header line with column names. The following values are permitted:
0 u2013 No header line
1 u2013 Header line with column names from the XML document
2 u2013 As for 1, followed by a blank line
3 u2013 Header line is stored as NameA.headerLine in the configuration and is applied
4 u2013 As for 3, followed by a blank line
The below weblinks will help you to know the other paramters.
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
http://help.sap.com/saphelp_nwpi71/helpdata/en/44/686e687f2a6d12e10000000a1553f6/content.htm -
Handling flat file conversion with spaces inbetween at sender side
Hi,
I am facing some problem in configuring the sender JMS adapter file content conversion. Please find the structure of my file below
010AG 07/17/2007 000130800 TOZ07/17/200710:48:46
010AU 07/17/2007 006682800 TOZ07/17/200710:48:46
010-Record key
AG-Metal code
07/17/2007 -price Date
000130800 -pricevalue
TOZ-Unitofmessure
07/17/200710:48:46-Unitofmessure
there are 2spaces inbeween 1and 2nd fields and one space beween 2nd and 3rd ,one space between 3rd and 4th fileds
I declared my source data strucute like below
<source_MT>
<PriceData>
<Metal code>
<price Date>
<pricevalue>
<Unitofmessure>
<shipDate>
</priceData>
</source_MT>
I am using this PDF to configure my serder communication channel https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/50061bd9-e56e-2910-3495-c5faa652b7
. but i got struck up in declaring these two fields as i need deal with spaces.
xml.NameA.fieldNames
xml.NameA.fieldFixedLengths
It would be great if sombody tell me how ican decalre content conversion rules for the file
Thanks
sudheerHi,
Please check some links on FCC.
Introduction to simple(File-XI-File)scenario and complete walk through for starters(Part1)
Introduction to simple (File-XI-File)scenario and complete walk through for starters(Part2)
File Receiver with Content Conversion
Content Conversion (Pattern/Random content in input file)
NAB the TAB (File Adapter)
Introduction to simple(File-XI-File)scenario and complete walk through for starters(Part1)
Introduction to simple (File-XI-File)scenario and complete walk through for starters(Part2)
How to send a flat file with various field lengths and variable substructures to XI 3.0
Content Conversion (Pattern/Random content in input file)
NAB the TAB (File Adapter)
File Content Conversion for Unequal Number of Columns
Content Conversion ( The Key Field Problem )
The specified item was not found.
File Receiver with Content Conversion
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Regards,
Phani -
File sender adapter and content conversion with polish character
We are loading a csv file with PI 7.0 file sender adapter using "content conversion" - all fields go through EXCEPT a special character hex '208C' (space in front) looks like "Æ" is converted to hex 'C28C'.
We are using code page UTF8
We are using:
enclosuresign "
enclosuresignescape ""
fieldcontentformatting nothing
enclosureconversion NO
Hope some one can helpHi Bohamo,
Hope you have set the following for your file sender adapter :
1. Transfer Mode is set to Binary,
2. File Type Text,
3. Encoding ISO-8859-1( for Western European Latin ).
Inorder to recognize Polish Character, try as follows :
Your sender file after coming into Pi has XML encoding declaration 'UTF-8'.
Write a simple XSLT mapping to change the value of the attribute "encoding" to "ISO-8859-1" in the output XML of message mapping . Include this XSLT map as the second mapping step in your interface mapping.
First step in your interface mapping will be your already existing message mapping.
An example of the XSL code :
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='xml' encoding='ISO-8859-1' />
<xsl:template match="/">
<xsl:copy-of select="*" />
</xsl:template>
</xsl:stylesheet>
or you can also do java mapping if you are comfortable with java code !
Cheers,
Ram. -
File Content Conversion with Multiple structures
Here is the scenario
Legacy to XI -> XI to R/3 (App Server)
txt file and fixed length.
<b>Test file</b>
100WELCOME 0430000960603201321
2000000000040008000803
<b>Table2</b>
RecordType
PriorityCode
Destination
BankOrginNo
CreationDate
CretionTime
Spaces
<b>Table2</b>
RecordType
Destination
BankOrginNo
ReferenceCode
ServiceCode
RecordLength
CharactersPerBlock
PartialCompression
CompressionSpaces
<b>Content Conversion Parameters:</b>
Document Name: Details
RecordsetName : recordset
Recordsetstructure : Table1,1,Table2,*
Recordsetsequence: Ascending
RecordsetperMessage: *
Keyfieldname : KF
Kefieldtype : String(Case-Sensitive)
Table1.keyFieldValue :'1'
Table1.fieldFixedLengths:1,2,10,10,6,4,47
Table1.fieldNames :RecordType,PriorityCode,Destination,BankOrginNo,CreationDate,CretionTime,Spaces
Table2.keyFieldValue :'2'
Table2.fieldFixedLengths: 1,10,10,10,3,3,4,1,38
Table2.fieldNames:RecordType,Destination,BankOrginNo,ReferenceCode,ServiceCode,RecordLength,CharactersPerBlock,PartialCompression,CompressionSpaces
ignoreRecordsetName :true
When I am trying with first structure it is working fine, where as 2 structures it is not.
in the adopter monitoring it show it pics the file from Legacy(file adopter display green), where as SXMB_MONI it is not showing any thing.
can any body help on this do I need to maintain any other parameters for file content conversion.
Thanks
MHI,
I can see that.
The number of characters in the file for TABLE2 is lesser then the number of field size given.
for eg. if the table2 fixed field length sum is 20 ,your file contains only 10 characters. Please give complete data for table2
Test file
100WELCOME 0430000960603201321
<b>2000000000040008000803</b>
Table2.fieldFixedLengths: 1,10,10,10,3,3,4,1,38
Ragards
vijaya
Message was edited by: vijaya kumari -
Sender JMS Content Conversion - How to process multiple records
Hi All,
I use a Sender JMS Channel with Content Conversion.
My message structure is like this
<root>
<rec> </rec>
<rec> </rec>
</root>
I have fixed length flat file with multiple records.
i have given the parameters FixedFieldLength, FieldNames and StructureTitle.
Which parameter i need to use specify the RecordDelimiter
Because my input file will have more than record
my input file -
xxxx
yyyy
if i dont specify any delimiter value, in the module parameter,then for each newline of the file, a new mesage is created.
<root>
<rec>xxxx</rec>
<root>
<root>
<rec>yyyy</rec>
<root>
But i want the output to be like this
<root>
<rec>xxxx<rec>
<rec>yyyy</rec>
</root>hi,
You can do your FCC for sender JMS by going through page 5 of this document.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/50061bd9-e56e-2910-3495-c5faa652b710 -
JMS Content Conversion - Need to control RecordSet per Message
Hi All,
I have done a simple JMS to JMS scenario with content conversion.
I need to control RecordSet per Message ( similarlly we do for the FILE . that is , Recordset Structure = Records, 500 and Recordset per message = 1)
How to achive this in JMS adapter.
Regards,
B.JudeThere doesnt seem to be an option for that in the messagetransforbean
http://wiki.sdn.sap.com/wiki/display/XI/HowTo...ContentconversionmodulewithJ2EEJMS+adapter -
Content Conversion with Substructures
I'm very new at all of this, and I have a bit of a complex mapping. In an attempt to make it a little tidier, I made several substructures when I set up the data type.
For example, most of the lines start with a 'record id' made up of 4 fields. So I created a structure with those 4 fields, and then another structure with the rest of those fields, and then put both structures together to define the line.
I thought I was making things cleaner, but when I got to the file content conversion, I realized I'd just made a big mess.
Here is a somewhat simplified example of my structure, after it comes out of the mapping.
<EmployeeData01>
<RecordID>
<RecordType>01</RecordType>
<SSN>1234-56-7890</SSN>
<EmployeeID></EmployeeID>
</RecordID>
<Employee>
<FirstName>Mickey</FirstName>
<MiddleName>M</MiddleName><LastName>Mouse</LastName>
<Prefix>Sir</Prefix>
<Title>Jr</Title>
<Gender>M</Gender>
</Employee>
</EmployeeData01>
Originally I tried just using the employeedata01, and that gets me an error in the adapter monitor about the RecordID structure not being defined.
Then I tried not defining employeedata01 and instead defining RecordID and Employee. That works, sort of. But it puts the RecordID segment and the Employee Segment on seperate lines.
Is there a way to do this with the structure I have? I know I can solve it by going back and completely rewriting my structure, but I'd really rather not have to do that.
Thanks for any help at all.Abhy,
I am using content conversion already. I'm trying to figure out how to configure the content conversion.
Those blogs are not so useful, because they are all about sender adapters, and this is a receiver adapter.
The sender is ABAP Proxy, the receiver is a file adapter.
The mapping works fine, and maps the document in XML exactly how I want it mapped.
My problem is getting the file adapter configured properly to receive XML and write it out the way that I need it written.
Here are the things I've tried:
#1
Recordset Structure: EmployeeData01
Parameters:
EmployeeData01.fieldFixedLengths with all the individual field lengths for the whole record
Result: Error in the adapter monitor
Error: Message processing failed: Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'RecordID' found in document', probably configuration error in file adapter (XML parser error)'
#2
Recordset Structure: Employee,RecordID
Parameters:
RecordID.fieldFixedLengths - with lengths for the record id fields
Employee.fieldFixedLengths - with lengths for the rest of the fields
Result: Mapping works, but prints out the record id section and the employee section on seperate lines, instead of one line
What I need to know is how to set up the file content conversion parameters in order to make the entire employeedata01 (recordid + employee) print out on one line
Does this help clarify my question? -
Hi all,
is possible to do content conversion in JMS Adapter of a file whit the following structure?
-Root
--Header
---A
---B
---C
--Content
---Record_A
D
E
F
---Record_B
G
H
Record_C
I
J
And if it's possible....how to do it?
Thanks all
ManeHi,
Refer to these links
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
Check the how to guide provided by prabhu and also this link on the XMl To TeXtCoversion Module,
http://help.sap.com/saphelp_nw04/helpdata/en/44/748d595dab6fb5e10000000a155369/content.htm
Regards,
Kumar.
**reward points if helpful!!! -
Doubt in jms content conversion
Hi ,
I m doing content conversion in sender jms channel.
My input is of the format
AAAAAAA#bbbbbbb#ccccccc#
I want to map it to XML Structure
<Root>
<Record>
<item>AAAAA </item>
</Record>
<Record>
<item>bbbbb</item>
</Record>
<Record>
<item>CCCC</item>
</Record>
</Root>
Is it possible?Resolved
Maybe you are looking for
-
Mbp late 2009- switching from 9600/9400
Is it not possible to set the graphics card to use the 9600 when connected to a power source and the 9400 when its on battery power I see the setting to allow me to change this- but whenever I switch one setting (the other one changes as well) cant f
-
How can I degrade from 3.6.8 to 3.6.7
After update to 3.6.8, firefox hangs more often then previous version. I need to degrade from 3.6.8 to 3.6.7 == This happened == Every time Firefox opened == update to 3.6.8
-
OMG! Why won't it generate?
This is...maddening. During a training session, I had the trainer run through a set of procedures while Captivate ran in the background. I stopped the recording during breaks so the file wouldn't be of a ridiculous size. The first time I stopped Capt
-
Our base app is 100 and language is CROATIAN and we set to translated application 101 language english. We have made translatation according all 6 steps to "How to Translate" page in application. How can we call english app from base app. Our URL of
-
How do I change my plan to the student/teacher plan when I have the individual plan
how do I change my plan to the student/teacher plan when I have the individual plan?