Dynamic directory name in Receiving File adapter
Hi,
In File to File senario, In receiving system i want to create directory name dynamically. In my mapping there is a field called name, the directory name in the receiving system will be value in the name field. Any one can help me how to do this one...
Thanks
Rao
Hello,
Please follow the below to achieve the same.
input - Store number,
UDF
String dynaname = input;
DynamicConfiguration conf = (DynamicConfiguration) container
.getTransformationParameters()
.get(StreamTransformationConstants.DYNAMIC_CONFIGURATION );
DynamicConfigurationKey key = DynamicConfigurationKey.create(
"http://sap.com/xi/XI/System/File","FileName");
conf.put(key,dynaname);
return "";
UDF mapping
Source[input] -
> UDF --> Rootnode of target structure.
Hope it helps.
best regards,
raj.
Similar Messages
-
Error dynamic File Name in Receiver File Adapter
Hi all,
Dynamic file name for Receiver file Adapter Problem
my multi mapping look like this in design mode
messages
message1
SD01_E
FileName
row
message2
SD02_E
FileName
row
by processing the xml look like this:
<ns2:SD01_E xmlns:ns2="urn:lsv.de/SAP/XXX">
<FileName>L40SA939.xiConstant</FileName>
- <row>
or
<ns2:SD02_E xmlns:ns2="urn:lsv.de/SAP/XXX">
<FileName>L40SA939.xiConstant</FileName>
- <row>
in file receivere adapter i have try this but it dos not work
payload:SD01_E,1,FileName,1
Error:com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here: (hex) 0(:main:, row:1, col:0)
is there any way to have access to Filename in different root elements??
regards
RalfHi Ralf,
i think, you need for each XML msg (each different root element) a new adapter -> a new IF determination, new rec agreement and a new channel.
Regards,
Udo -
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 -
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> -
Dynamic File name in Receiver File adapter
Hi,
My Scenario is Proxy to File.
I must create filename dynamically in the receiver file adapter by taking the sales order number and divison from the source.
How can i create a dynamic filename? i searched the forum, but i could not get the correct answer,
Please help me out.
Regards
SrinivasHi Srinivas,
> My Scenario is Proxy to File.
> I must create filename dynamically in the receiver file adapter by taking the sales order number and divison from the source.
public String targetFileName(String Sono, String Div, Container container) throws StreamTransformationException
DynamicConfiguration conf = (DynamicConfiguration)container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
String MyFileName = sono + div + "<filename>"+".xml";
conf.put(key, MyFileName);
return MyFileName;
File name you can format according to your requirement.
And one more thing for this you have to specify the ASMA properties. For this check the below link step-1 and step-2.
/people/michal.krawczyk2/blog/2005/11/10/xi-the-same-filename-from-a-sender-to-a-receiver-file-adapter--sp14
Regards
Ramesh -
Dynamic attachment name in receiver mail adapter
Hi all,
i am doing a receiver mail scenario (PI 7.1). my requirement is like this :
Receiver file need to be send in receiver mail attachment and attachment name should be dynamic
format for the attachment name should be like this
R+value from a particular field in payload +Timestamp
for example my file name should be like this R001_510815021009062532.xml
which is R+ 001_510815 + 021009062532 + .xml
can anybody suggest me how to go for this requirement? is ther any UDF or should i go for adapter module developement?
Thanks
sandeep sharma
Edited by: sandeep sharma on Oct 13, 2009 8:55 AMHi K Fatima,
I read your solution.I have a similar requiement but I need to send the entire output payload as an attachment,so I am using XSLT to send the payload as an attachment.
I am creating the file name through dynamic configuration in XSLT but the name of attachment is not as required but its any random generated name:
*code used:*
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:map="java:java.util.Map"
xmlns:dyn="java:com.sap.aii.mapping.api.DynamicConfiguration"
xmlns:key="java:com.sap.aii.mapping.api.DynamicConfigurationKey">
<xsl:output method="xml" version="1.0" encoding="UTF-8" />
<xsl:output indent="yes" />
<xsl:param name="inputparam"/>
<!-- mail parameters -->
<xsl:template match="*">
<ns:Mail xmlns:ns="http://sap.com/xi/XI/Mail/30">
<xsl:variable name="new-value" select="Shipment/InternalShipmentNum"/>
<Subject>Mail</Subject>
<From>xyz</From>
<To>abc</To>
<xsl:variable name="dynamic-conf"
select="map:get($inputparam, 'DynamicConfiguration')" />
<xsl:variable name="dynamic-key"
select="key:create('http://sap.com/xi/XI/System/File', 'Directory')" />
<xsl:variable name="dynamic-value"
select="dyn:get($dynamic-conf, $dynamic-key)" />
<xsl:variable name="new-value"
select="concat($dynamic-value, 'subfolder\')" />
<xsl:variable name="dummy"
select="dyn:put($dynamic-conf, $dynamic-key, $new-value)" />
<!--Content type -->
<Content_Type>application/xml</Content_Type>
<!Content Description>
<Content_Disposition>attachment;filename "<xsl:copy-of select="$new-value"/>"</Content_Disposition>
<!--Content Disposition -->
<Content_Description><xsl:copy-of select="$new-value"/></Content_Description>
<Content>
<xsl:copy-of select=".">
<xsl:apply-templates/>
</xsl:copy-of>
</Content>
</ns:Mail>
</xsl:template>
</xsl:stylesheet>
Please suggest ! I need the value in "Shipment/InternalShipmentNum" as name of attachment.
Thanks in advance!
Indu Khurana -
Dynamic attachment name with receiver mail adapter and use mail package
We need to send mapped XML payload as attachment (with dynamic name) to a recepient (recepient email id is part of input xml payload, but not part of the mapped XML payload).
I could probably do this using the adapter module (as per the following link),
http://wiki.sdn.sap.com/wiki/display/XI/Adapter%20Module%20PI%207.0%20Set%20Attachment%20Name?bc=true
I would like to explore if this would be feasible using Mail package and XI payload.I already have a Java mapping that is converting the input XML to required Output format. If I am using Mail package (XI Payload), how do I go about sending this Output XML from java mapping as attachment to email id available in the input payload?Hi,
1) XML payload as attachment (with dynamic name)
2) recipient (recipient email id is part of input xml payload, but not part of the mapped XML payload)
These two is possible by using Mail Package. You have a standard xsd for mail package which you can download from the SAP Note 748024.
The xml created in you java mapping which will be your attachment should be put into the <content> tag of the mail package xml structure. and the file name can be set in the <Content_Type> tag.
<?xml version="1.0"; encoding="UTF-8"?>
<p2:Mail xmlns:p2="http://sap.com/xi/XI/Mail/30">
<Subject>My Invoice</Subject>
<From>from email address<;/From>
<To>to email address</To>
<Content_Type>text/plain;name="MyFile.csv";</Content_Type> --> file name here
<Content>123;A49;aaa</Content> -> attachment xml here
</p2:Mail>
And you have to select MailPackage in the receiver mail adapter.
Regards,
Aravind -
Payload as File name at Receiver File Adapter
Hi All,
I have a requirement for a PROXY to File Scenario where Receiver files has to be named dynamically with a value from the Payload that I get. Also the particular field that has the file name should be unmapped with the Receiver.
For Example,
<row>
<Name>Alex</Name>
<DOB>27062014</DOB>
<City>Delhi</City>
</row>
If this is the Payload I get, I want the Receiver file name to be "27062014.txt". At the same time this particular field should not be mapped at the Receiver end.
I have tried a few links which confuse me further.Kindly help me,
Thanks in advance,
Sree RamHi Sree,
Please check if the case is correct. refer the below discussion
Problem in variable substitution
reference blog for variable substitution
Variable Substitution for Directory or File name.
regards,
Harish -
Dynamic attachment name in receiver mail adapter for 1 attachment?
Hi,
seems to be a tricky thing....
The sender interface (file) picks up an xml file and a pdf document.
The receiver wants to get the xml file as a txt file and the pdf, both sent together by mail.
We are following this thread:
"Sending multiple attachments winthin a single Receiver Mail adapter in required format".
So far we are able to generate the txt file and send it together with the pdf to the recipient.
The txt file gets its name from the payload of the xml file.
Unfortunately the pdf should be renamed to the same name as the txt file.
And here we are stuck.
We generate the filename for the txt file in the mapping to the mail message (as usual ximail30.xsd).
But for the pdf we are only able to set a static name in the channel module page using
Transform.ContentDisposition.
Any ideas how to solve this are really welcome!!!!
(Solutions that do not talk about using a new module to be written are prefered.)
Regards
DirkHi,
seems to be a tricky thing....
The sender interface (file) picks up an xml file and a pdf document.
The receiver wants to get the xml file as a txt file and the pdf, both sent together by mail.
We are following this thread:
"Sending multiple attachments winthin a single Receiver Mail adapter in required format".
So far we are able to generate the txt file and send it together with the pdf to the recipient.
The txt file gets its name from the payload of the xml file.
Unfortunately the pdf should be renamed to the same name as the txt file.
And here we are stuck.
We generate the filename for the txt file in the mapping to the mail message (as usual ximail30.xsd).
But for the pdf we are only able to set a static name in the channel module page using
Transform.ContentDisposition.
Any ideas how to solve this are really welcome!!!!
(Solutions that do not talk about using a new module to be written are prefered.)
Regards
Dirk -
Dinamic Directory Path in Receiver File Adapter
Hi everyone,
I have a question for you.
How can I give a dinamic path to the target directory in a file to file scenario?
The scenario is like this:
I have to take only certain files from a source directory. The names of the files are like 'S10048796050.txt', when the four chars in the beginning (1004) are the company code.
With this code, I have to put the file in a different target folder.
Examples:
file with code 1004 --> p/xrt/universe/LOGISTICA/Conciliacion
file with code 1005 --> p/xrt/universe/SEVISUR/Conciliacion
etc...
The easiest solution is to create an interface for every company, but I'm trying to do it dinamically.
I only have SP14.
Any ideas?
Thank you very much.
I'll give points who can help me.Hi,
Please try the follwing code in Java UDF. This will work.
Map map= container.getTransformationParameters();
String strFilePath ="";
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey keyFileName = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
String sourceFileName = conf.get(keyFileName );
if(sourceFileName.indexOf("1004") !=-1)
strFilePath = "p/xrt/universe/LOGISTICA/Conciliacion";
}else if(sourceFileName.indexOf("1005") !=-1)
strFilePath = "p/xrt/universe/SEVISUR/Conciliacion";
DynamicConfigurationKey keyFileName = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "FileDirectory");
conf.put(keyFileName, strFilePath );
return strFilePath ;
PS: Check the property Adapter-Specific Message Attributes -> Use Adapter-Specific Message Attributes , File Name in Source and File Path in Target Channels respectively.
Thanks
Amit
Reward points if solution helps -
Counter in file name in receiver file adapter
Hi,
I am using FTP, my requirement is to add counter in the file name i.e XYZ001.
And added to this i can increment the counter till XYZ020, after this i am supposed to start again from XYZ001.It will be some how handled that when i place XYZ001 for the second time , it will not overwrite the earlier one as it will be proccess by that time.
I could have used addcounter but it doesnt work for FTP:(...also have seen /people/shabarish.vijayakumar/blog/2009/10/05/pixi-maintaining-sequence-numbers-in-file-name-scheme
Do we have any new feature added in PI 7.1 for handling this.
Regards,
Abhithanks shabz..
Request you to please let me know how to proceed with the first option which you have mentioned i.e,how to create tables and will i be able to start the counter again from xyz001 once i reach xyz020? is there any abap code to be written (wiil be asking SAP counterpart ) or we need to do it in the dynamic configuration udf? Please let me know how to do the same.
1. Maintain a table in SAP. Use/Code a RFC call to look up the sequence number from this table, incrementing the value after it is read. The result is then used in a dynamic configuration code, and the file name can be generated at that point.
Will this impact performance ?..mine is a credit card authentication interface and response time is imp...
Regards,
Abhi -
Variable Substitution - dynamic names in receiver file adapter :)
Hi,
anyone tried this new feature yet?
Variable Substitution
http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
I hope it's working fine it may be a good answer to many questions on the forum:)
I can't wait till I get my hands on XI SP12:)
if anyone has a document the describes <b>all</b> of the changes that came with sp12 please post the link
Regards,
michal
Message was edited by: Michal KrawczykHi,
I can't wait to test the new test tool
http://help.sap.com/saphelp_nw04/helpdata/en/6b/874a4273bb3830e10000000a155106/content.htm
it looks like a very helpful thing
come on, come on I want my sp12:)
Regards,
michal -
Reg: File name in receiver FILE adapter
Hi Experts,
i have Scenario proxy to file
from source side i got input values in one field(long String). in the target side i need to split that field
finallly i need get the out put file like this
q2344eretrnnsd sewewerereefre wereretrtrtreeterte ertrterwytdyt rtretyeytyutueyt
sdgfghfhyghhjhj sdfgfdhdghgjgjh sdfgdfhgfhjgjgjfgh dfgdhdgghgh dfghfgfgfgfgfgf
sfdggggggggddf sdfdfsddfdfdfdfd sdfdfdfdfdfddfdfs sdfsdfdfdsfd asdfsdafdsfds
the problem is while place file in the target directory the file need save as according to the "version no" (it is included in the long string of source field)
file name should be change according to the "version no"
so please suggset to me how can i change the file name according to the version no which is include in the long string in the source side
Thanks in advanceHi Mani kandan,
thanks for the reply can you please tell me one more thing in FCC
source side we have only one field which is long string so we need put the value of that field in to the below format in target location
source (field value==<line>sapsdnforumsprocessintigration</line>) ocurs multiple times
in target file it has to appear as in below format.
sap sdnforums processintegration
sap sdnforums processintegration
sap sdnforums processintegration
sap sdnforums processintegration
please suggest wat type of file cotent conversion parameter rquired to achive this in the receiver communication channel
Thanks in advance
Edited by: katakoti on May 17, 2011 8:44 AM
Edited by: katakoti on May 17, 2011 9:28 AM -
Dynamic file name (Date) in Receiver File Adapter
Hi,
can any one tell me how to create outbound file name with receiver file adapter in format like Name_22-08-2006.dat. I need from a current Date in the name of the message (without any other information). In message payload I dont have that date. Is it possible to use variable from user defined function in message mapping for that name?
Regards,
NaychoNaycho,
that's exactly what I've managed to perform using DynamicConfiguration. Check these links:
http://help.sap.com/saphelp_nw2004s/helpdata/en/43/03612cdecc6e76e10000000a422035/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/43/09b16006526e72e10000000a422035/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/43/03fe1bdc7821ade10000000a1553f6/frameset.htm
Particularly, I've created a Java API for using setDirectory and setFileName methods through mappings. I use XSLT with java enhancement because it's a million times easier to parse and get node values with XSL than pure java.
I'm writing a blog on the subject, if you don't resolve the problem until it's out, let me know.
Regards,
Henrique. -
Target Directory & File Name parameters in Receiver File Adapter with ASMA
Hi Experts..
I have the following question....
What am I suppose to inform in the Target Directory & File Name obligatory parameters in Receiver File Adapter if I am using ASMA to fill it? Is it any dummy value?
Also, if you have any step by step guide/blog to forward on how to use ASMA in file adapter I will be greatful.
Thanks in advance,
DanielaYou can give any dummy value in dir and file name... Just go through these blogs
/people/michal.krawczyk2/blog/2005/11/10/xi-the-same-filename-from-a-sender-to-a-receiver-file-adapter--sp14
/people/madanmohan.agrawal/blog/2009/05/20/combining-three-different-aspects-of-pi-asma-af-module-and-variable-substitution-in-one-shot
Maybe you are looking for
-
How do I keep the command window open?
I want to write a batch file that will leave the window open after running so I can see what the output is. I kind of remember having to use %k But I'm not sure exactly how to do it. UPDATE: I found what I was looking for, it's /k when you execute th
-
I am trying to locate documentation for the grants module, any recommendations? Specifically, do I need FY as a segment in my chart of accounts.
-
Satellite P50t - how caching SSD is built in?
Hi, I am considering to buy a P50t, with the 1TB HDD and 8gb caching SSD. I have searched this forum and the web, but was unable to determine how the SSD is built into the laptop. I know other laptops the caching SSD is plugged into a mini PCIe slot
-
Using "case" to poplulate multiple dropdowns
I'm using a case script to populate a dropdown switch (this.formattedValue) // use the current bound value of the dropdown case "NW1 - Arlington WA": OSRlumber.addItem("Gary"); OSRlumber.addItem("Miker"); OSRlumber.addItem("James"); OSRlumber.addIte
-
Hi folks, Ok, so the title is a bit misleading, it's not inner classes that are pesky, more the fact that there is something I don't understand about them. I'd really appreciate some help. What I would like to do is to create some JButtons, which are