Suppressing Field In Receiver File Adapter
Hi
I have a Data type with fields
1. name
2. No
3. city.
I am using File adapter @ receiver end to create a flat file using this data type. But the requirement is to have only 2 fields in the Output file( say name , no). How to suppress the city field from being populate in the target file( I dont want even separator/Delimiter or blank spaces for city field but separator is needed btwn name & no)
Appriciate ur help
Regards
Kishore
Kishore-
Just have a look into this thread-http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
<i>I also tried ur 2nd options but it's creating extra line with 0 space.this will be a problem as i am using field separator it's coming extra.</i>
If you do City is a part of another node(e.g CityNode) in the Data structure, and then if you use this CityNode in the Content Conevrsion(Receiver) with Cut Parameters, then I don't thik so , you will get the extra field separator or space. Just check with the blog mentioned earlier.
<i>3rd option is not possible as we don't have SP15 .</i>
Inorder to write Adapter Java modules , it is not required to have SP15. It is there in much earlier SPs.
For this you can check this thread-
Creating Adapter Modules
http://help.sap.com/saphelp_nw2004s/helpdata/en/8b/895e407aa4c44ce10000000a1550b0/frameset.htm
Hope this helps,
Regards,
Moorthy
Similar Messages
-
Receiver file adapter creates an innecesarry extra line
Hi,
I have an issue with an extra line that add the receiver file adapter with the content conversion.
The file XML that the file adapter has to convert, is the next;
<root>
<cofig>
<FileName>NameOfTheFile.txt</FileName>
</cofig>
<lines>
<line>
<data>BBBBBBBBBBBBBBBBBBBBBB</data>
<data>Aaaaaaaaaaaaaaaaaaaaaa</data>
</lines>
</root>
Because FileName is not necessary, I remove it with:
cofig.fieldFixedLengths 0
cofig.fixedLengthTooShortHandling CUT
but it leaves an empty line that i don't want. that is, the text in the file start in the second line.
Any help?
Thank you in advance.Can you do a small change in your mesg. structure ?
change it to....
<root>
<lines>
<line>
<data>BBBBBBBBBBBBBBBBBBBBBB</data>
<data>Aaaaaaaaaaaaaaaaaaaaaa</data>
</lines>
<i><b><cofig>
<FileName>NameOfTheFile.txt</FileName>
</cofig></b></i>
</root>
and then use
cofig.fieldFixedLengths 0
cofig.fixedLengthTooShortHandling CUT
followed by
endSeparator 0
Ref: Suppressing Field In Receiver File Adapter for more details. -
Receiver File Adapter - Directory field - home directory
How do I populate the Directory field in the receiver file adapter if I don't know the directory. I want to use "home directory", but I don't know what that is. I'm sending a file to a IBM i5 OS.
I have already asked for the path. This is the answer I got.
Directory listings from FTP sessions are disabled. We use IBM i5 OS for the FTP server because it's immune to exploits aimed at Windows and Linux based servers. Since you can only "PUT" a file, it is analogous to a bank night deposit box (lots of companies can make deposits to this same metal box on the brick wall but none of them can use it to make withdrawals). -
Problem with fixedlenthgs in receiver file adapter
HI,
I am doing XML to flat file scenario and using mutli mapping concept without BPM.
in the receiver file adapter I am using FCC with fixedlengths,then it generated just 3 output files out of nearly 100 source files.the errored one are succcessful in the SXMB_MONI and failing in RWB-->Message moni with waiting status and MDT says that XI_J2EE_ADAPTER_FILE ,Error Code PROCESSING_ERROR .
i tried in SDN and then found something like enable the disablesecurity check box in variable substitution parameters ,then I got 4 files out.
these are my FCC params for all structures:
struc1.fieldFixedLengths
struc1.fixedLengthTooShortHandling
struc1.endSeparator
and I tried with fieldSeparator then it gives successfully all output files.
so,where is the problem?I didnt understand?
any suggestion.
thank you,
regards,
Babu SriBhavesh,
I felt the same way,but assumed that ,in that way fixedlenghths wont work.
in my target structure most of the fields have 0-1 occurences ,and even in the source structure too.so,I think it might be the reason.Then I have to make all my about 60fields 1-1 madatory and using mapWithDefaultValue function, as my sources are optional.
you think it will work just using the "mapWithDefaultValue" function without changing my occurences to 1-1 in the target structure(mandatory)?infact I can try but ,cos of pain for changing like 60 fields....:) and even dont know which fields are causing the problem,so that we can apply "mapWithDefaultValue" function only on those fields.
thank you,
Babu Sri -
Setting dynamic file name in Receiver file adapter - not from payload
Guys I just remember reading a weblog but can't find it now that I need it, on how to set the file name in message mapping dynamically but not using any payload field.
Please let me know if you remember this.
Thanks a lot,
Viktor Vargaalso u can check in
<a href="/people/jayakrishnan.nair/blog/2005/06/28/dynamic-file-namexslt-mapping-with-java-enhancement-using-xi-30-sp12-part-ii file name(XSLT Mapping with Java Enhancement) using XI 3.0 SP12 Part -II</a>
<a href="/people/michal.krawczyk2/blog/2005/11/10/xi-the-same-filename-from-a-sender-to-a-receiver-file-adapter--sp14: The same filename from a sender to a receiver file adapter - SP14</a> -
Sender_interface_name in Variable Substitution in Receiver File Adapter CC
Hi,
as per this page : http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/frameset.htm
it says:
Variable Substitution (Target Directory/File Name Scheme)
If you set the Enable indicator, you can enter variables for the Target Directory and File Name Scheme. Enter the names of the variables and references in the table.
● Enter each variable that you reference in the Target Directory and File Name Scheme fields without the surrounding percentage sign under Name of Variables in the table.
The variables can refer to attributes of the message header or elements of the message payload.
○ If the variables are to refer to an attribute of the message header, add the prefix message: to the name of the variable under Reference. You can specify the following attributes of the message header:
sender_party, sender_service, receiver_party, receiver_service, interface_name, interface_namespace, message_id, message_id_hex
Can we not access sender_interface_name and sender_interface_namespace are not mentioned in above list of variables.
Is it not possible to access sender_interface_name or sender_interface_namespace as variable substitute parameters from within Receiver File Adapter Communication channel.
thanks.>Shabarish Vijayakumar wrote:
>>the sender interface details will always remain a constant
>>so you can hard code the value, isnt it?
Yes, i can hardcode, thats not a bad idea, i need to create then 3 different Reciever File Communication Channel objects, as I am dealing with 3 scenarios for which sender system and sender interface is different.
>Shabarish Vijayakumar wrote:
>>if you look at the mapping runtime constants, those are also for the receiver since the sender interface will always remain constant for any particular CC.
>>http://help.sap.com/saphelp_nw04/helpdata/en/b3/9a2aeb24dc4ab6b1855c99157529e4/content.htm
yes in this link you provided i can see..
INTERFACE Interface
INTERFACE_NAMESPACE InterfaceNamespace
SENDER_SERVICE SenderService
RECEIVER_SERVICE ReceiverService
RECEIVER_NAME ReceiverName
RECEIVER_NAMESPACE ReceiverNamespace
it seems both INTERFACE (,INTERFACE_NAMESPACE) and RECEIVER_NAME(,RECEIVER_NAMESPACE) are present, may be one is for sender, and another is for receiver.. may be if i use dynamic configuration, possibly my issue would be addressed.. correct me if i am wrong.
thanks. -
0 byte txt file using receiver File Adapter
HI,
My scenario is Flat File to Fixed Length File.
Mapping : Based on the condition Reciever node need to generated , In some cases it wont generate any node ( No data )
Receiver Communication channel : I used FCC for Fixed length Format.
Problem : When i am generatingf the receiver file with some data it executes. But when i am generating the file with no data , it fails in the receiver comminication channel.
Could not process due to error: java.lang.Exception: Exception in XML Parser (format problem?):'java.lang.Exception: Message processing failed in XML parser: 'Conversion configuration error: Unknown structure 'ns0:Message1' found in document', probably configuration error in file adapter (XML parser error)'
I need the receiver file to generate with 0 bytes when there is empty data.
can any one help on this.
ThanksHi,
>>Problem : When i am generatingf the receiver file with some data it executes. But when i am generating the file with no data , it fails in the receiver comminication channel.
What happens in this case is, when you send a blank file to PI it processes but once it went to Receiver Adapter, it looks out for some fields because of the FCC settings. So it throws an error/exception because some fields are expected and it is not coming. Because of that you getting below exception.
Secondly, Once you send data with few values or fields it will process in Receiver file adapter FCC and if there is some error it throws error. this is why you getting exception in moni, and other places.
Regards
Aashish Sinha -
RECEIVER FILE ADAPTER FCC ERROR
Hi team
My scenario is a text file has to be picked up by PI, has to processe it and the receiver is Proxy and it has to get updated and sent back to FTP location.
i am using Sender File Adapter with FCC and Also receiver File Adapter with FCC.
Both the sender and receiver structures are same; i am using the same FCC parameters for both the sides.
in Receiver File Adapter i am getting the following errors
1) Conversion initialization failed: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found:
Parameter '.fieldFixedLengths' or '.fieldSeparator' is missing
2)Conversion initialization failed: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found:
Parameter '1.fieldFixedLengths' or '1.fieldSeparator' is missing
please help me out
thank you
Edited by: vemugantivn on Aug 16, 2010 12:19 PMHi,
> 1) Conversion initialization failed: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found:
> Parameter '.fieldFixedLengths' or '.fieldSeparator' is missing
> 2)Conversion initialization failed: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found:
> Parameter '1.fieldFixedLengths' or '1.fieldSeparator' is missing
It is saying that you are not using the fieldSeparator parqameter.
have you provided the field separator parameter? if not then give like below
order_row.fieldSeparator : , (give what ever the separater you are using)
or
order_row.fieldSeparator : 10,5,... (if you are using fixed length)
Regards
Ramesh -
Receiver file adapter error for special char.
I am using MTB in my receiver file adapter. I am getting a special character from source system at end of the string. How to resolve this type of error u2013 please advice.
This error is not coming for every message.
Error message:
Column value xxxx  too long - must stop, probably configuration error in file adapter
Thanks
VickHi,
Itu2019s basically IDOC to file scenario.
This error is coming for name field.
What I am thinking at this stage to do changes in MTB by define parameters like (NameA.enclosureConversion) -
Dynamic File Name for Receiver File Adapter
Hi All,
How can we use dynamic name for Receiver file adapter?
Can anyone help.
Thanks in Advance
ChemmanzHi Chemmanz,
The dynamic filename generation concept is as follows.
In your filename field. just give a variable with % symbols. (eg: %file% ).
Now, under the option Variable Name Substitution, you can give how the value has to be created.
It can be your interface name, sender service name, etc or it can be some value dynamically from your payload.
For the former, your give
message:interface_name ,etc
and for the payload part you give,
Payload: "your element root which u wanna acecss"
Just check this link out,
http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
And read the contents under variable substitution and it will help you understand the concepts better.
If you have any clarifications, do get back,
Regards,
Bhavesh -
Dynamic Filename on Receiver File Adapter
Hi,
I am running XI 3.0 SP 14.
The scenario is
SAP R/3 (IDOC) > XI (Receiver File Adapter)> FTP Server
There is no mapping on the XI side, we just drop the IDOC XML on to the ftp server.
I would like to configure a dynamic file name on the Receiver File Adapter where if the 'MSATZ' Field
within the E1EPD04 segment of the IDOC is populated then I would like to send a separate
Filename than the one specified on the 'File Name Scheme'.
Has anybody done this or any suggestion how I should go about this please.
Thank you.
Warm Regards,
RanjanHi Guys,
When I tried to create the User defined function as below, I got the Null value for the "StreamTransformationConstants.DYNAMIC_CONFIGURATION" object.
My code looks like this,(this is part of the debuging code)
Start
public String Create(String a,String b,Container container){
if (container.getTransformationParameters() == null)
return "conf.null";
if (container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION) == null)
return "Dynamic.null";
return b;
--End
On the output I get the value "Dynamic.null". I do not know why the object value is Null.
Any suggestion pls.
Thank you.
Warm Regards,
Ranjan -
Receiver File Adapter Content Conversion Problem.
Hi All,
I am getting in receiver file adapter due to content conversion setting. Problem is that all the fields coming in file adapter are optional. In content conversion , i have specified fieldfixedlengths. So whenever any optional field is not present , it fails . How should we handle it? is there any option to declare fields as optional, I know that is the there for sender adapter. But no. of fields is also very large, so putting each and every field as optional is very time consuming.
What should i do?
Ranjeet Singh.Hi Daniele,
Instead of using the standard funciton , i created a UDF for handling this situation.
My logic is UDF is like
//write your code here
int Size = Integer.parseInt(Truncate_Size);
String Return_Value = "";
if (!("".equals(Input)) )
if (Input.length() > Size )
Return_Value = Input.substring(0,Size);
else
Return_Value = Input.substring(0, Input.length());
else
for(int i = 0; i< Size ; i++)
Return_Value = Return_Value + " " ;
return Return_Value;
SO in this case also , it should be able to handle empy source element. But it is not working. -
Receiver File Adapter - Dynamic FTP Server Address
Hi, I would like to pass the FTP Server address to the Receiver File Adapter as an parameter. Is this possible and if so what Name Space / Parametr Names add to the Product to define these values.
Thanks
AndreHi Andre,
If you have your server as a part of your payload, thendynamic file server generation concept can be done is as follows.
In your server name field. just give a variable with % symbols. (eg: %file% ).
Now, under the option Variable Name Substitution, you can give how the value has to be created.
It can be your interface name, sender service name, etc or it can be some value dynamically from your payload.
For the former, your give
message:interface_name ,etc
and for the payload part you give,
Payload: "your element root which u wanna acecss"
Just check this link out,
http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
And read the contents under variable substitution and it will help you understand the concepts better.
If you have any clarifications, do get back,
Regards,
Bhavesh -
Problem: The same filename from a sender to a receiver file adapter - SP14
Blog : /people/michal.krawczyk2/blog/2005/11/10/xi-the-same-filename-from-a-sender-to-a-receiver-file-adapter--sp14
My Problem:
The thing works for me and i am able to get my input files name as my output file name. But one thing i noticed is that in my target message, the field where i have mapped the code it always returns the value "null" but finally when the file is created i get the required result.
My input file name is input.txt and i get the same name in my output file too.
In sxmb_moni if i check DynamicConfiguration link i see the following
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Response
-->
- <sap:DynamicConfiguration xmlns:sap="http://sap.com/xi/XI/Message/30">
<sap:Record namespace="http://sap.com/xi/XI/System/File" name="SourceFTPHost">10.25.116.98:21</sap:Record>
<sap:Record namespace="http://sap.com/xi/XI/System/File" name="Directory">/input/test</sap:Record>
<sap:Record namespace="http://sap.com/xi/XI/System/File" name="SourceFileTimestamp">20060228T112200Z</sap:Record>
<sap:Record namespace="http://sap.com/xi/XI/System/File" name="FileType">bin</sap:Record>
<b><sap:Record namespace="http://sap.com/xi/XI/System/File" name="FileName">input.txt</sap:Record></b>
<sap:Record namespace="http://sap.com/xi/XI/System/File" name="SourceFileSize">770</sap:Record>
</sap:DynamicConfiguration>
But when i check my mapped field i see
<field3>BodyC</field3>
<keyfield>02</keyfield>
<field5>BodyE</field5>
<field6>BodyF</field6>
</Body>
- <Trailer>
<keyfield>03</keyfield>
<b><field2>null</field2> -> Null value instead of input.txt</b>
</Trailer>
</ns0:MT_Putfile>
The code i have used to map the field2 of the trailer is the following ....
<i>DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileType");
String valueOld = conf.get(key);
return valueOld; </i>
Any clues ?Gosh this is spooky
Anyway i tried with that line of code but it throws me an error during activation ...
Activation of the change list canceled Check result for Message Mapping mm_IS | http://t-systems.com/Shabarish: Starting compilation Source code has syntax error: /usr/sap/TXT/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map387c7300a9ac11da9d280011256afae8/source/com/sap/xi/tf/_mm_IS_.java:104: cannot resolve symbol symbol : method getTransformationParameters () location: interface com.sap.aii.mappingtool.tf3.rt.GlobalContainer DynamicConfiguration conf = (DynamicConfiguration) container.getGlobalContainer().getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION); ^ 1 error
The code is :
DynamicConfiguration conf = (DynamicConfiguration) container.getGlobalContainer().getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
//DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
//String valueOld = conf.get(key);
String valueOld = conf.toString();
return valueOld;
Thanx Renjith so far .. but i hope this gets resolved (else i will loose my sleep thinkin abt the situation) -
Problem with File Content Conversion (Receiver FIle Adapter)
Hi Experts,
I have following structure in receiver side:
MT_Test
F1
F2
F3
F4
Now I want a CSV file in target side in below format:
F1,F2,F3,F4
I have provided below config in receiver file adapter under content conversion tab:
Recordset Structure : MT_Test
MT_Test.fieldSeperator= ,
MT_Test.endSeperator= 'nl'
But this is generating blank CSV files in target directory..What might be the reason.. I have checked the msg in adapter engine, the XML file is correct and contains valid values for the fields..Its something like below:
<?xml version="1.0" encoding="UTF-8" ?>
<MT_Test>
<F1>Hai</F1>
<F2>Hello</F2>
<F3>Bye</F3>
<F4>Hi</F4>
</MT_Test>
I should get CSV file as
Hai,Hello,Bye,Hi
But I am getting a blank file with above said config parameters in content conversion tab.
What might be the reason for getting blank CSV files in target side???
Thanks,
AdiHi Adi,
>>My target structure in below format:
<?xml version="1.0" encoding="UTF-8" ?>
- <MT_Test>
<F1>Hai</F1>
<F2>Hello</F2>
<F3>Bye</F3>
<F4>Hi</F4>
</MT_Test>
So, try to edit Data type and include hierarchy level above <F1>.
Finally your Target Structure will resembles like this.
<?xml version="1.0" encoding="UTF-8" ?>
- <MT_Test>
<Structure>
<F1>Hai</F1>
<F2>Hello</F2>
<F3>Bye</F3>
<F4>Hi</F4>
</Structure>
</MT_Test>
FCC Parameters will be like this.
Structure.fieldSeparator = ,
Structure.endSeparator = 'nl'
Hope you were clear.
Thanks,
Siva.
Maybe you are looking for
-
ERROR MESSAGE "MACROMEDIA PROJECTOR HAS STOPPED WORKING"
I am using Windows Vista, and can no longer play any of my games. Was able to play before now I get this stupid error message: "Macromedia Projector has stopped working." I have tried redownloading the games again, tried redownloading the Flash and s
-
WLS 8.1.2 : unsupported encoding: 'UTF-8, UTF-16'
Hello, We are porting a web service from WLS 7.0.4 to WLS 8.1.2.0. It is a stateless session bean, we use "servicegen" to generate the WS deployment descriptor and the client is PocketSoap 1.5 This web service worked fine with WLS 7.0.4, but with WLS
-
Hey, is it anyhow possible to connect 2 devices to sound card? (only fatalty pro) I mean repro + headset
-
Multiple delete is not working.
Hi, Multiple delete is not working. Please find my backend bean code. Please let me know the issue in my code. Table: <af:table value="#{bindings.CmProcessParamValueView13.collectionModel}" var="row" rows="#{bindings.CmProcessParamValueView13.rangeSi
-
Even though i have a year student subscription with creative cloud when i try to open the programmes a window comes up for free trial or to buy the product. I was clicking the free trial option but i guess thats over now so it won't allow me to acces