Reciever File name Scheme

Hi Team,
We have a requierment for File receiver to create a file with the name SA2345_date_time.txt.
Could anyone please help me how to define it in receiver file adapter.
Appreciate your quick response.
thanks & regards,
Ranganath.

Hi ,
You can do dynamic configuration to achive this. Or you can select Add timestamp in receiver file adapter.
Please see this.
Re: File adapter - How to pass File name and path at runtime
Define Processing Parameters
       7.      Select the Processing tab page.
       8.      Select the File Construction Mode.
u25CB       Create
The file is created. The document received last is saved in each case.
If you want the created file to be overwritten, set the Overwrite Existing File indicator. If you do not set the indicator, processing is stopped until the created file is processed.
u25CB       Append
The file is written when the inbound documents are appended.
u25CB       Add Time Stamp
A new file is created for each document. A time stamp with the format yyyyMMdd-HHmmss-SSS is added to the file name. The time stamp is added as the last part of the name before the extension.
This mode guarantees that no file is overwritten. In this way, files that originate from the same adapter configuration can be sorted.
In Mapping also you can do dynamic configuration.
UDF
public String setFileName(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 FileName=SA2345+"_"+getDate()+"_"+getTime();
conf.put(key,FileName);
return FileName;
You need to use this UDF in root node mapping.
Dont forget to check Use Adapter specific message attribute in receiver file adapter.

Similar Messages

  • Reciever File Adapter - Temp File Name Scheme using Variable Substitution

    How can I create a temporary file that uses variable substitution? 
    We are having a problem with files merging when we write files using the "Use Temporary File" setting on the FIle Adapter.  So two independent files are merging into a single file.  We are not using the "Append" setting.
    We would like to use a Temp File Name Scheme that would append the message id onto the temporary file name. 
    Using variable substitution we created a msgid variable.  When added to the temporary file name using %msgid% the temporary file name is created with %msgid% in the name instead of the actual message id.  We put the variable into the "File Name Scheme" as well and the end completed file used the message id in the name.
    Any Ideas?
    Thanks,
    Matt

    HI Matthew,
    Why are you adding the message id into the temporary file??
    I understand that you want the output of the filename to contain message id .. and hence you are using variable substitution for the same.
    Temporary file name will anyways get overwritten by the actual file name (here the actual filename will be using variable substituion).
    So i suggest to achieve your scenario you can add any name in the temporary file and maintain the desired filename you require as output in the variable subsititution.
    Temporary File Name option actually acts as a lock - unlock mechanism from PI side while the file is getting written to the file server so that while PI is writting the file no third party application batch program picks it up.
    I hope this helps.
    Cheers
    Dhwani

  • Temp File Name Schema in Receiver File adapter

    Hi,
    I have a scenario where i have to write the file in the temperaory location before writing it to the FTP loacation, I have selected the Processing Parameter as "Use Temperory File" but when the file gets created it is padded with the Message Id, is thr any option to get the file name as the temp file name without the Message Id or timestamp.
    Please let me know if any one has come across such scenario.
    thankx,
    shree

    Hi,
    Under Write Mode, specify whether the target file is to be written directly in the specified directory. If an additional step is to be added using a temporary file, choose Use Temporary File.
    You can specify a naming scheme for the temporary file under Temporary File Name Scheme.
    This schema is used to determine the prefix and extension of the temporary file; to ensure a unique file name, a time stamp is also added to the name during processing.
    The schema xitemp.tmp, for example, results in the file name xitemp<timestamp>.tmp
    So you have to customise the file name in schema.
    see below link
    http://help.sap.com/saphelp_nw2004s/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
    Regards
    Chilla

  • File Name Scheme - Receiver Adapter

    Hi,
    I have a File Receiver Adapter which is using content conversion to take in XML and output a file. I want the output file to be called EOD286ccyymmdd.txt where ccyymmdd is the current date. Seems to be 2 options for file names:
    1. Add Time Stamp: No use as this adds the Date & Time. I only want the date.
    2. Variables: Don't think I can use this as it only seems to work if the data is part of the XML message packet. The date in ccyymmdd format is not contained in the XML anywhere.
    Is there anyway of getting the File Scheme Name I want ?
    Cheers,
    PaulC.

    Hi,
    You have one option in the File adapter receiver channel: 'Run Operating System command After message processing", where you can give any std OS command or you can give batch file (.bat) to run after the message processing. In batch file, you can write a set of commands which would rename the file according to your name format.
    Another bit complex solution is create your own custom adapter module and change the file name scheme.
    Thanks,
    RK

  • Regarding  File name schema in  Receiver  com. Channel

    Hello,
    I have gone thru  the blog
    The specified item was not found.
    "The same filename from a sender to a receiver file adapter - SP14 for Dynamic configuration"  by Michal Krawczyk....And here in this Scenario in ID (in Reeiver communiation channel)what should we give as file name.(or) can we leave it blank.
    If my client wants the name ,then instead of assigning it to the root can I consider a element and assign the udf...In this case how it will effect the Receiver file name schema in Rec Communication channel in ID

    Hi,
    Pass it as %FileName% which will come from dynamic configuration.
    SAP note may give some hints- 746393 and also this thread has got the answer
    Module Processor : Module exception java.lang.ClassCastException
    Thanks
    Swarup
    Edited by: Swarup Sawant on Aug 22, 2008 11:19 AM

  • Changing file name schema

    In my receiver adapter the file name schema is intern_pay%var1%.dat and in variable substitution var1 is defined as message:message_id_hex.According to this i can see the file in the target directory as intern_payb0ba03a0904711dbbb9e00000e252c96.dat
    Can any one please help me out to change the format of the file in the target directory to intern_pay_yyyymmdd.dat
    Briefly, can any one please explain me how to change the file name schema in the receiver adapter.
    Many Thanks,
    Smith.

    Hi Paul,
    You can use DynamicConfiguration in a user defined function to achieve this.
    Go thro these threads, they will provide you the solution.
    Dynamic Directory and File Naming in Receiver Adapter
    In the above thread look at the post that answered the question. It will certainly help you.
    And go thro this also.
    Dynamic  File Name for Receiver File Adapter
    Regards,
    P.Venkat

  • Variable Substitution for File Name Scheme

    Hi all,
    Please clarify the following issue.
    I have two source fields
    Transfer Order number  -  0000000222
    Transfer Order line item - 0001
    Both i map it into one target field
    The target field output is  - 0000000222#0001
    I need a file name which starts with ABC <TranferOrderNumber>.txt
    The problem is, when i try to use payload i get output
    (ABC0000000222#0001.txt). The reason is i use the target field which was concatenated. I don't have any target field with only transfer order no.
    Please give me a solution where i would get output
    (ABC0000000222.txt).
    Thanks in advance,
    Jose Augastine

    Hi,
    Other way may be like this ..Create a one more segment in your target structure with field name as Transfer Order No. And populate only this no. And in the Reciever File adapter , in the variable sub, use only this field. But this new segment will come in the file. To avoid this, you can make use of " Cut "  Parameter in the File Content Conversion.
    This will hold good, if you have content conversion-
    /people/sravya.talanki2/blog/2005/08/11/solution-to-the-problem-encountered-using-variable-substitution-with-xi-sp12
    Otherwise, you can think of Bhavesh's suggestion
    Regards,
    Moorthy

  • Where to find dtd file name/schema for a certain XML Gateway interface

    Hi folks,
    For a certain XML Gateway interface, in which DB table can I find the dtd file name and dtd schema that this interface use?
    Now I can find its map name.
    Thanks.

    Hello!
    I found the answer myself now.
    The XLST files are part of the static web content of the MI project Visiprise.
    In the SAP MII workbench go to the project Visiprise
    Then under the tab Web the static contecnt can be found under the folder WEB/XSLT/..

  • XI 3.0 File receive comm.channel using variable for folder/file name schema

    Hi,
    I prepared a integration message to produce .txt file output of message.
    I prepared message successfully, it's running properly and producing .txt file.
    My problem is to set .txt file name.
    I must set file name using by some information in .txt file.
    I must get some part of the first line of .txt to set filename.
    I declared a variable to do it.
    How can i set referance of variable?
    payload:..?
    Thanks.

    Hi,
    this blogs might be helpful:
    http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417800%29ID0935780750DB11281184595516315205End?blog=/pub/wlg/13704
    http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417800%29ID0935780750DB11281184595516315205End?blog=/pub/wlg/2664
    http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=%28J2EE3417800%29ID0935780750DB11281184595516315205End?blog=/pub/wlg/1888
    http://wiki.sdn.sap.com/wiki/display/XI/CombiningthreedifferentaspectsofPIinoneshot
    Regards
    Patrick

  • File Name Schema

    Dear All,
    I am working on Idoc-XI-File scenario. Currently I am getting an output file with the name "xi_timestamp" but now I want to change the timestamp with the "Delivery No" which is there in the flat file.
    Kindly suggest how this can be done.
    Warm Regards,
    N.Jain

    Hi,
    As prateek suggested you need to use Adapter Specific Message Attributes Indicator.
    Follow the blogs
    Dynamic File Name Part 1
    /people/jayakrishnan.nair/blog/2005/06/20/dynamic-file-name-using-xi-30-sp12-part--i
    Dynamic File Name Part 2
    /people/jayakrishnan.nair/blog/2005/06/28/dynamic-file-namexslt-mapping-with-java-enhancement-using-xi-30-sp12-part-ii
    Hope it was helpfull.
    <b>Cheers,
    *RAJ*</b>

  • Variable substitution not working for dynamic file name in Receiver File CC

    Hi Experts,
    I am doing the scenario of Proxy sender to File receiver and my purpose is to Create the text file
    as per the filename available in Source Message payload.
    I am using the Variable Substitution method for this as shown below.
    Source Message Structure:-
         <Row>            -
    having Cocurence 1.1
             <Filename>     -
    having Cocurence 1.1
             <Item>            -
    having Cocurence 1.Unbounded
              <Field1>
              <field2>
             <Item>
             <Item>
              <Field1>
              <field2>
                <Item>        
         <Row>
    Target structure is same as the source structure and i have mapped the Filename field of the Source
    with the Target structure Filename.
    In ID the following is the File receiver CC Configuration.
    File Name Scheme:- %Dyn_filename%
    In Advance tab, I have selected the Enable option and added one row as Variable name %Dyn_filename%
    and Reference as payload:Row,1,Filename,1
    In testing I am getting the Error as 'variable Dyn_filename is not found in Message payload'.
    Please suggest me.
    Regards,
    Jagesh

    Hi Pooja,
    Hi Pooja,
    Thanks for your valuable reply..
    I  tried with the same. but still Filename is appearing in Output file.Giving you some details regarding my Receiver File Configuration settings.
    Target Message Type:-
              <MT_Target_Struct>
                    <Row>----
    1.1 occurence
                            <Filename_test>----
    1.1 occurence
                            <ITEM>----
    1.unbounded occurence
                                  <Field1>
                                  <Field2>
                            <ITEM>
                            <ITEM>
                                  <Field1>
                                  <Field2>
                            <ITEM>
                    <Row>
              <MT_Target_Struct>
    Recordset structure:-  Row,Filename_test,ITEM
    Row.fieldSeparator----
    >'nl'
    Filename_test.fieldFixedLengths----
    >0  (Zero)
    Filename_test.fixedLengthTooShortHandling----
    >Cut
    ITEM.fieldSeparator----
    >,
    ITEM.endSeparator----
    >'nl'
    I want only ITEM node to be written in the output file.
    Please suggest.
    Regards,
    Jagesh

  • Changing time stamp format in the file receiver adapter file name

    Hi all,
    How can we change the standard date time stamp from
    filename_yyyymmdd-hhmmss-mil
    to
    filename_yymmdd_hhmmss
    i.e.,  I want "underscores" instead of "hyphens" and also I do not want the MilliSeconds.
    I read in the forums that I have to use the combination of variable substitution and mapping functions to do this, but not sure how exactly.
    Can the experts help me with this please?
    Many thanks.

    Hello Ramesh,
         You can make this possible using runtime filename creation using UDF.
    Please go though the below steps.
    Message mapping:  
    Create an UDF and include the piece of code that captures the Filename and Timestamp from source side via ASMA.
    Modify them according to our requirement by adding the <Timestamp> at the end of <filename> with _.
    Map the UDF to any of the top level node so that the modified filename will be available for the target communication channel
    UDF Code is:
    try {
    String filename    = "";
    String timestamp = "";
    DynamicConfiguration conf1 = (DynamicConfiguration) container
        .getTransformationParameters()
        .get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key1 = DynamicConfigurationKey.create( "http:/"+"/sap.com/xi/XI/System/File","FileName");
    DynamicConfigurationKey key2 = DynamicConfigurationKey.create( "http:/"+"/sap.com/xi/XI/System/File","SourceFileTimestamp");
    filename = conf1.get(key1);
    timestamp = conf1.get(key2);
    filename = filenametimestamp".xml";
    filename = filename.replaceAll( "-" ,"_" );
    conf1.put(key1,filename);
    return filename;
    catch(Exception e)
         String exception = e.toString();
          return exception;
    Click on Advanced tab and check the Option u201CSetAdapterSpecificMessageAttributesu201D in addition to that check the attribute that are required to be captured during run time. In our case File Name and Source File Time Stamp are required to be checked
    In the receiver communication channel Mention u2018 * u2018as File Name Scheme.
    Click on Advanced tab and check the Option u201CSetAdapterSpecificMessageAttributesu201D in addition to that check the attribute u201CFile Nameu201D which will carry the modified value in the UDF .
    i hope this will help you.
    Monica

  • OS command to get file name

    Hello All,
    Using a single receiver communication channel I have to generate 2 output files.
    One output file name is OUTPUT.txt and the second output file name is OUTPUT<YYYYMMDD>.txt
    I am generating first output file name using standard file name scheme.
    And for generating second output file name I am using Run OS command option.
    can some one tell me the OS command to get the file name OUTPUT<YYYYMMDD>.txt?
    Thanx,
    Regards,
    Moorthy

    We would really like like to know how you are going to create 2 file (with different names) using same CC.
    If you are going to use "Add timestamp" then both the files will have timestamp at the end (unlike your requirement for the first file).
    I think its better to create 2 CC ..first with output.txt and the other OUTPUT<YYYYMMDD>.txt
    Also, please tell us more about ur requirment..if the content is same then..u can simply use a CC and use OS command (after processing option ) to copy it to the other location with required file name (OUTPUT<YYYYMMDD>.txt)
    Something like this  if u r using unix system and both the files are at same location:
    cp OUTPUT.txt OUTPUT2.txt

  • How to retreive the dynamic file name in the AAE configuration?

    Hi Guys,
    I have configured File to File with the integrated configuration and in the mapping i need to retreive the file name dynamically and i am unable to retreive it from the run time in AAE configuration. I am able to retreive with the normal configuration where integration engine is the run time.
    I am using the code as below.  Is it possible to retreive the file name dynamically in the AAE configuration? any help or suggestions would be appreciated.
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
    String ourSourceFileName = conf.get(key);
    return  ourSourceFileName;
    Thanks,
    Srini

    Hello Srinivas,
    Brief Solution:
    1. Using dynamic configuration, set the attribute value of payload dynamically to ASMA
    2. Using AF module, write the value of ASMA in a variable
    3. Using the variable substitution, set the receiver file name schema
    Plz go through the below link:
    http://wiki.sdn.sap.com/wiki/display/XI/CombiningthreedifferentaspectsofPIinoneshot
    Thanks,
    Satya Kumar

  • SFTP sender to File receiver mapping of file names

    My scenario is: sender channel = SFTP (Seeburger) transferring multiple PDF files to Receiver adapter File (NFS).
    These PDF files need to have the same name as the original files from the sender (3rd party) system.
    Because these files are being processed without an interface, I can't use UDF to help map the file names.
    I've tried using Seeburger's localejbs/Seeburger/AttribMapper to map the names, as follows:
    File (NFS) receiver channel config:
    - ASMA boxes for 'Use Adapter-Specific Message Attributes' and 'File Name' are ticked
    - Module localejbs/Seeburger/AttribMapper is on the first line in the module tab under processing sequence, with module key = AttributeMapper
    - Under Module Configuration: 
      - Module Key = AttributeMapper
      - Parameter Name = http://sap.com/xi/XI/System/File/FileName
      - Parameter Value = @http://seeburger.com/xi/SFTP/dtSubject
    (I haven't entered any attribute module config on the sender side)
    This setup fails on the receiver side with the message 'Delivering the message to the application using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.RetryControlException: Channel stopped by administrative task.' (not very helpful!).  All I can get from that is that it doesn't like my module configuration!
    Can anyone help me understand the correct way to do the file name mapping for my specific scenario?
    Regards,
    Christine

    We've got this working at last!
    The main problem was indeed the missing .sca file from Seeburger:  SeeModuleCollectionPI.sca
    Our Basis team deployed this file this morning.  After a bit of fiddling around with the attribute mapping, my test files were transferred successfully with their original names.
    The config I ended up with is just as described in another forum post for SFTP to FTP, but I'll repeat it in more detail here:
    Sender channel
    Parameters tab:
    Adapter Type = SFTP (Seeburger)
    (sender, transport & message protocol = SFTP)
    Scheduler = x in all appropriate days, with interval = 1 (minimum allowed)
    (rest here is specific to your environment, but I set filename to *.pdf to get all .pdf files from the sender)
    Module tab
    Processing Sequence
    Number  Module Name                                          Type                                          Module Key
    1            localejbs/Seeburger/AttribMapper          Local Enterprise Bean     AttribMapper
    2            localejbs/Seeburger/solution/sftp           Local Enterprise Bean     solutionid
    3            localejbs/CallSapAdapter                   Local Enterprise Bean     exit
    Module Configuration
    Module Key        Parameter Name                                               Parameter Value
    AttribMapper          http://sap.com/xi/XI/System/File/FileName         @http://seeburger.com/xi/common/dtSubject
    Receiver Channel
    Parameters tab:
    Adapter type = File
    (receiver, with transport protocol File System (NFS), etc)
    Target tab:
    Target directory (set to your required PI server directory)
    File Name Schema = * (can be anything, will be ignored)
    Processing tab:
    (your requirements-specific settings - mine were create, write directly, file type binary)
    Advanced tab:
    Under Adapter-Specific Message Attributes (ASMA):
    tick the following:
    Use Adapter-Specific Message Attributes
    Fail If Adapter-Specific Message Attributes Missing
    File Name
    Modules tab:
    Processing Sequence
    Number  Module Name                                          Type                                          Module Key
    1            CallSapAdapter                                       Local Enterprise Bean     0
    (nothing under Module Configuration)
    Thanks to those who kindly took the time to try and help me, your suggestions pointed me at the real problem.
    Christine

Maybe you are looking for