Receiver FCC parameter to preserve spaces
Hi Gurus,
Our scenario is using Outbound (IDoc to Fixed Field Length Flat File) and we are using File Content Conversion
However upon testing, the spaces are not being preserved in the flat file. We tried to map fields with Constant number of spaces (e.g. 5 char field mapped with Constant having value 5 spaces) but it is not working, space is still not preserved in the flat file generated.
For those that have encountered this scenario, what did you do with this issue? As i've said the scenario is fixed field length flat file so the field lengths still have to be in the flat file even if the field has no value
Hoping for your kind response
Hi,
It may happen that the spaces are coming and u cannot see in the editor.
Goto SXMB_MONI of PI system and check the payload after mapping(Target Payload).
Right click on the payload and open it... then see if spaces are coming in the payload or not
Babu
Similar Messages
-
Tab Delimited File Using Receiver FCC
Hi Experts,
I need to generate a Tab Delimited File Using Receiver FCC. I have achieved the same by copying the tab length from a notepad and used the same in name.fieldSeparator parameter.
The other below mentioned values for name.fieldSeparator didnu2019t produce the expected result:
name.fieldSeparator=u2019htu2019
name.fieldSeparator=u2019\tu2019
name.fieldSeparator=u2019 0x09u2019
So just need to know if my approach for achieving this is fine or not.
Thanking you in advance.
Aditya.Verma,
name.fieldSeparator=u2019 0x09u2019
I see a space after the first comma. Try removing it and give a try.
'0x09' with no spaces.
Regards,
---Satish -
Put Date Before Header Line in Receiver FCC
Hi,
I have to create a csv file with format :
Date : dd/mm/yyyy to dd/mm/yyyy
PRODUCT_CODE,NAME,ADDRESS
123,ABC,xyz
123,ABC,xyz
123,ABC,xyz
123,ABC,xyz
123,ABC,xyz
How should i achieve putting the date before header line?
What should be my target structure format?
What parameters to enter in receiver FCC?Hi,
have you tried..
Have you tried:
(http://help.sap.com/saphelp_nw04/helpdata/en/e3/94007075cae04f930cc4c034e411e1/frameset.htm)
● NameA.enclosureSign
Specify a string that acts as a text delimiter.
Text enclosed by such delimiters is transferred to the target structure unchanged, although the default setting is to remove all text delimiters. Separators within such texts are ignored.
This parameter is optional. The default setting is an empty value (no text delimiter).
● NameA.enclosureSignEnd
If the text delimiters for the beginning and end of the text are different, specify the text delimiter for the end of the text here.
If you do not make an entry here, the entry from NameA.enclosureSign is used.
● NameA.enclosureSignEscape
Specify a string that replaces the text delimiter if it occurs within a text that it delimits.
When the text is transferred the string is replaced by the value specified in NameA.enclosureSign .
● NameA.enclosureSignEndEscape
Specify a string that replaces the text delimiter for the end of the text if it occurs within a text that it delimits.
When the text is transferred the string is replaced by the value specified in NameA.enclosureSignEnd.
● NameA.enclosureConversion
To remove the delimiter upon transfer, or to replace it with escape characters, enter YES. This is the default value.
To transfer the characters unchanged enter NO.
Note
If you specify xml.enclosureSign= and xml.enclosureSignEsc=, text enclosed in quotation marks is transferred unchanged and the quotation marks are removed.
If the escape character for a quotation mark () occurs in the text itself, it is replaced by the quotation mark during the transfer.
Thanks,
Vijaya. -
Taskflow Method call receiving null parameter.
Hi all,
I am using 11.1.1.6. I have created in my application an extra project which is pure Java objects and exposed a master class as a POJO DC. In my application, I have a taskflow where I have dragged and dropped one method from my POJO DC - 2 of the parameters of this methods are coming from an application scope bean. I have debugged the application, and made sure that the object being returned by the getter of my app scope bean is not null. So basically, when the breakpoint is in the return statement of my getter the oject is not null and it has been correctly initialized. Just after that, the next breakpoint is in the class receiving the parameter in my POJO DC class. In there, the object is NULL.
Does anyone knows wat could be the reason??Hi Frank Nimphius-Oracle,
That is precisely the problem. The object is being passed as to the taskflow as an input parameter (getting it from my application scope bean). If I access the pageFlowScope inside my taskflow I see it and its there, correctely intialized. However, when I call a method call activity that consumes that object as parameter, all what it gets is null.
The method that consumes this object is in a separate project, and its exposed in a POJO DC. I don't know if it has to be with the complexity of the object I am passing or what but I don't understand why its not being passed correctly to the DC Method. -
Preserving spaces in XSLT Mapping
Hi ,
My source structure has a field
<field1> aaaa1234</field1>
whens this field is transformed by using a XSLT mapping the output is as follows
<field1>aaaa1234</field1>
This output is visible in the interface mapping itself.
The leading spaces are truncated. Can any one suggest me on how to preserve leading spaces during XSLT mapping?
Thanks
VasSHi,
Refer this link
http://www.w3.org/TR/xslt20/Overview.html#element-preserve-space
Regards
Suraj -
FCC parameter in IDoc to File scenario
Hi,
We have configured FCC parameter to get the comma separated flat file. File is getting created but I want header line in the file which is not getting created. Can any please suggest on the same?
Target DT structure is as below:
Inside root node FileName_Values is used for variable substitution in target File Name and these fields should not be present in file content.
Second node inside root node is having actual structure of file.
FCC configuration is as below:
Thanks,
VertikaHello,
>>Please see the screen shot it doesn't any thing about occurrence.
Duplicate Subtree option will make sure that whatever is the cardinality of Main node (i.e Oildex_File node) will be passed on to the duplicated node as well.
So don't have to worry about that.
>>If I am mapping constant value in first node which is the original node and actual line items in second node I am not sure what will happen in case of more that 1 line item.
Answered above.
If there are more then 1 source line items and if u have mapped source line item to that duplicated target node, then as many occurrences of target node will be created as present in the source item - so treat duplicate node as any other node having multiple cardinality.
>>Can you please use full word instead of using acronyms? I am confused what exactly you said in your last post.
I thought i have written a straight forward reply and used so called acronyms only for simple PI words like Operation mapping, meessage type, occ, ur Message type name...
Anyway, in my previous reply i was proposing u another approach where i was suggesting to create one more mapping between ur target structure only i.e. MT_Oildex_Invoice.
So with the second approach, you don't have to change anything in your existing mapping.
Create one more 1 to 1 mapping between your target structure only (and while doing mapping change the occurrence of message type so that multimapping tags gets added automatically) and then u can use duplicate subtree option on "oildex_File" node on the target side.
So while doing mapping just repeat the same process which i have explained you above for first occurrence of oildex_File node (i mean just map constant values in the first occ of oildex node) and for the second occurrence of "oildex_File" node just do 1 to 1 mapping (map second occurrence of oildex_file node in target side to the source "oildex_File" node)
Let me say it again, ur second mapping will be between MT_oildex_Invoice TO MT_oildex_Invoice
once done, add ur second mapping under Operation Mapping and then check if you are getting constant values before the actual values or not?
Thanks
Amit Srivastava -
Hi Experts,
We need to do a file content conversion in the Receiver File Adapter for a fixed length file, format of which is like:
MT_Message
Shipment..........1..1
field1
field2
field3
Order.................1..1
field1
field2
field3
Tare..................0..unbounded
field1
field2
field3
Item...............0..unbounded
field1
field2
field3
occurrence of all field level elements are 0..1. Shipment, Order and Tare are at the same level and Item is under Tare, which can occur multiple times.
I have tried using the normal File receiver FCC, the localejbs/AF_Modules/MessageTransformBean bean and the StrictXml2PlainBean but am not getting the desired output, where each segment is to occur on a separate line.
Any help would be highly appreciated.
RegardsHi Sarkar,
I think the structure you are using is not correct. It should have one root node above all these Segment, Order nodes etc.
Probably like this:
MT_Message
<Recordset>
Shipment..........1..1
field1
field2
field3
Order.................1..1
field1
field2
field3
</Recordset>
check this blog as well
File Receiver with Content Conversion
Sachin -
Receiver FCC Structure For Header and Trailer
Hi Guys ,
I need to go for receiver FCC for header and trailer in PI .How the FCC in communication channel needs to be configured if I am taking a separate node for header and trailer in mapping .Output of the file should be as the file attached.
Thanks.
Regards.Hi,
If you are using File communication channel as a reciver you can go with FCC.
Use record set structure as : Header,detail,trailer.
https://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Otherwise if you are going for SFTP to create the file ... follow the Indrajit suggestion..
Still facing any issue.. Please let us know..
Thanks,
Sreenivas... -
Oracle XSLT Transformation not preserving space in text element
If we have a BPEL process which is calling a XSLT transformation contains the code similar as below:
for Populating an element with white space only
<tns:TargetField>
<xsl:text disable-output-escaping="yes"> </xsl:text> <!--Note the whitespace , also tried with disable-output-escaping =”no” -->
</tns: TargetField>
Our expected result / output would be:
<tns:TargetField> </tns: TargetField> <!--Note the whitespace -->
But, we get:
<tns:TargetField/>
Oracle XSLT is ignoring the white space even if we try with preserve space in XSD, or in XSLT this is not producing the expected output.
This looks a BUG with Oracle XSLT Transformation .
For a workaround solution we can use below XSLT snippet:
*<tns:TargetField>*
*<xsl:value-of select="string(' ')"/> <!--Note the whitespace -->*
*</tns:TargetField>*
This is returning Output:
*<tns:TargetField> </tns:TargetField> <!--Note the whitespace -->*
Any other work around do you find?
Edited by: panks on Jul 29, 2011 12:37 PMThe workaround only works with one white space, if one put more white spaces, it do not work.
<tns:TargetField>
<xsl:value-of select="string(' ')"/> <!--Note the whitespaces -->
</tns:TargetField>
This is returning Output:
<tns:TargetField> </tns:TargetField> <!--Note the only one whitespace -->
Edited by: user10697506 on Aug 10, 2011 3:27 PM -
Dear All expert
I have define FCC parameter for flat file to IDOC scenario but its not working
But when we send XML format file it posted successfully so any way to check where we have put wrong value of FCC and why it not working
Txt Format -
1 5500 20080508
2 ARTN VANHUSEN - 2 5000
2 ARTN VANHUSEN - 2 5000
2 ARTN VANHUSEN - 2 5000
Thanks
Amit ShivhareHi All
this is my FCC value
Record set structure MP01,1,MP02,*
Record Sequences - ascending
Record Set per message -2
Key field value - KZ
Key Filed Type - integer
MP01.fieldNames KZ,POS_StoreCode,POS_Date
MP01.keyFieldValue 1
MP01.keyFieldinStructure Ignore
MP02.fieldSeparator '0x09'
MP02.endSeparator 'nl'
MP02.fieldNames KZ,QUALARTNR,ARTNR,VORZMENGE,UMSMENGE,UMSWERT
MP02.keyFieldValue 2
MP02.keyFieldinStructure Ignore
IgnoreRecordsetName true
Thanks
Amit Shivhare -
Diplaying segment name in output file using receiver FCC
Hi,
we have a idoc to file scenario. we are using FCC at the receiver. the flat file generated should have the segment names before the values .
for example, if the structure is something like this
<root tag>
<serment1>
field1
field2
<segment2>
field1
field2
<segment2>
field1
field2
the output should be in the below format
segment1 field1value,field2value
segment2 field1value,field2value
segment2 field1value,field2value
can some one guide me how to achieve the same. Also if the segment repeats, in the output also it shoukld appear
Best Regards
DeepikaIn mapping, output structure, create an extra field at the beginning and
map that field to a constant value same as the source segment name.
In Receiver FCC, use following configuration.
Recordset Structure: segment1,segment2(specify all segments seperated by comma)
segment1.fieldSeparator : , (it is comma)
segment1.endSeparator :'nl'
segment2.fieldSeparator : ,
segment2.endSeparator :'nl'
specify the same fieldSeparator and endSeperator for the other segments also -
Removing the empty line during Receiver FCC!
Hi, Guys,
I used file content conversion in receive FCC. My data type is like this:
<TextFromSAP_DT>
<FileName>
<FileName>abc.txt</FileName>
</FileName>
<Record>
<TEXT>dasfafaf</TEXT>
</Record>
<Record>
<TEXT>qqqqqqqq</TEXT>
</Record>
<Record>
<TEXT>fgfffff</TEXT>
</Record>
</TextFromSAP_DT>
I need to get file name from <FileName> and output a flat file with the value in <TEXT>. But I always got an empty line at the file beginning. And I tried to move <FileName> to the end. And I got an empty line at the file end. My custom said they are having trouble to read the file with the empty line no matter it is in the beginning or end.
I followed sample as link below but does not work.
https://wiki.sdn.sap.com/wiki/display/profile/2007/07/30/Removing%20the%20empty%20line%20during%20Receiver%20FCC!
Does any body can give a help?
Thanks a lot!
Meiying
Edited by: Meiying Yang on Aug 14, 2009 11:16 PMHi Yang,
You create the value udf GetFileName with one input value say a. Add this code:
Imports: java.*;
Add this code:
//write your code here
DynamicConfiguration conf = (DynamicConfiguration)container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http:" + "/" + "/" + "sap.com/xi/XI/System/File", "FileName");
conf.put(key, a);
return "";
Map like this:
FileName --> GetFileName(udf) --> target_mt
Map other fields like:
Record --> Record
TEXT ---> TEXT
Save it and activate it. When you test in mapping you will get an error so dont worry. I go the error like:
RuntimeException in Message-Mapping transformation: Runtime exception during processing target field mapping /ns0:Target_MT. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._TestFileName_ method file1$[abc.txt, com.sap.aii.mappingtool.tf3.rt.Context@32dcebf1]
Dont worry about this activate and do the rest of the configuration.
In your receiver communication channel for file name put as FileName and check the file name in adapter specific message attributes. Then test it and it should work and you will get the file with file name abc.txt. I tested the whole end to end scenario and I am getting the file name abc.txt and the output what you want. If you still could not get it send me a m ail to my i d from my business card. I will send you the screen shots.
Regards,
---Satish -
Receiver FCC: Ignore first field
Hi Experts,
Is it possible to ignore only the first field in receiver fcc?
Thanks,
VishalHi Vishal,
Always the best option is in this case to create a new segment and use it for varibale substituion and trim it in communication channel
else
Pass the value to a segment and you can use that in communication channel.
Regards,
---Satish -
Lightroom 5.7 just installed with 864GB free disk space. Receive error message saying disk space is critically low. ??
I have the same issue with 1.7TB free. This seems to have been an ongoing problem in earlier versions.
Is there a solution? -
Receiver FCC: endSeparator now working
Hi,
I am having an issue while doing file content conversion at receiver side.
My XML structure is as below:
<ROOT>
<MASTER>
<DATA1>data1</DATA1>
<DATA2>data2</DATA2>
</MASTER>
<MASTER_DETAIL>
<DATA3>data3</DATA3>
<DATA4>data4</DATA4>
</MASTER_DETAIL>
<MASTER>
<DATA1>dataA</DATA1>
<DATA2>dataB </DATA2>
</MASTER>
<MASTER_DETAIL>
<DATA3>dataC</DATA3>
<DATA4>dataD</DATA4>
</MASTER_DETAIL>
</ROOT>
Now entries in Receiver FCC were
ROOT,MASTER,MASTER_DETAIL
MASTER.fieldSeparator=|
MASTER_DETAIL.fieldSeparator=|
MASTER.endSeparator='nl'
MASTER_DETAIL.endSeparator='nl'
ROOT.endSeparator='nl'
ROOT.fieldSeparator='nl'
Output got:
data1|data2|data3|data4
dataA|dataB|dataC|dataD
Expected output :
data1|data2
data3|data4
dataA|dataB
dataC|dataD
Please let me know what to specify?
Regards, Anirudh
Edited by: Anirudh Vyas on Sep 17, 2008 3:05 PMProblem solved!
I was supposed to do 2 stage mapping to map the parent and child segment of Idoc to Parent and child XML structure and then do mapping to have parent and child nodes as siblings of ROOT.
As below
MAP1: Idoc to XML1
MAP2: XML1 TO XML2
XML1:
<ROOT> *
<MASTER>
<DATA1>...</DATA1
<MASTER_DETAIL>*
<DATA3>...</DATA3>
</MASTER_DETAIL>
</MASTER>
</ROOT>
XML2:
<ROOT>*
<MASTER>
<DATA1>...</DATA1>
</MASTER>
<MASTER_DETAIL>
<DATA3>...</DATA3>
</MASTER_DETAIL>
</ROOT>
I was doing content conversion with XML1.
I didn't add MAP2 in interface mapping.
Now my output is as expected.
Thank you all for your help.
regards,
Anirudh.
Maybe you are looking for
-
Hp photosmart 5514 Windows7-64bit I get server error 6-403 on e-print and Google cloud print what ever I try and can not find any way of obtaining a new printer code can anyone help please This question was solved. View Solution.
-
Photosmart 6520 and Mac OS X Yosemite: What utility should I install?
I uninstalled the utility for my Photosmart 6520 e All-in-One because it wasn't working with new Mac OS X Yosemite. In hindsight, I wish I had just used the Apple Upgrade, but I didn't know about it. I tried installing the utility for Mac 10.10 Maver
-
Hi, I can't seem to be able to change the openbox menu, whether by manual edit thru menu.xml or using the graphical end obmenu. Restart PC, openbox --reconfigure, openbox --restart, nothing seems to be working. _xinitrc_ http://pastebin.com/tNCQ5MXT
-
How can i change the user on FaceTime? im trying to do this on a iMac
how can i change the user on FaceTime? im trying to do this on a iMac
-
EC-CS: Consolidation Error Message no. G3694
Hi Gurus, Greetings I am doing consolidation with respect to 4 different company codes each assigned with the same chart of accounts. But the consolidated financial statement is not getting reconciled with the individual financial statement data. Whe