Setting dynamic attachment name in mail adapter

Hi experts,
I have a mail adapter that send e-mails from ECC to several address.
I have configured dynamically the FROM and TO field using the code showed below in message mapping:
public String SetMailParameters(String Mail_address_to, Container container){
   //write your code here
  String valueFrom = "my_address";
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key1 = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/Mail",  "THeaderFROM");
DynamicConfigurationKey key2 = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/Mail",  "THeaderTO");
conf.put(key1, valueFrom);
conf.put(key2, Mail_address_to);
  return  "";
In communication channel I have checked ASMA and variable transport binding (using XHeaderName1 and 2), mail package is not checked.
It works fine!
My question is:
I need to dynamically configure also the Attachment name: is it possible?
I've tried adding the code below:
DynamicConfigurationKey key3 = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
conf.put(key3,Attachment_name);
and also
Transform.ContentDisposition      attachment;filename=<FileName>
in Message TransformBean in communication channel, but it doesn't work!!!
Any idea?
Thanks
Fabio Boni

Hi,
thanks a lot!!
ASMA and variable transport binding must be checked or not?
it raise an error in runtime workbench message monitoring:
2010-09-02 17:41:15 Success Mail: calling the adpter for processing
2010-09-02 17:41:15 Error Mail: call failed; com.sap.aii.messaging.util.XMLScanException: expecting end tag: Mail, but found {'}Content_Disposition at state 1
2010-09-02 17:41:15 Success Mail: sending a delivery error ack ...
2010-09-02 17:41:15 Success Mail: sent a delivery error ack
2010-09-02 17:41:15 Error Mail: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: com.sap.aii.messaging.util.XMLScanException: expecting end tag: Mail, but found {'}Content_Disposition at state 1
2010-09-02 17:41:15 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: com.sap.aii.messaging.util.XMLScanException: expecting end tag: Mail, but found {}Content_Disposition at state 1
2010-09-02 17:41:15 Error Exception caught by adapter framework: com.sap.aii.messaging.util.XMLScanException: expecting end tag: Mail, but found {}Content_Disposition at state 1
2010-09-02 17:41:15 Error Delivery of the message to the application using connection Mail_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: com.sap.aii.messaging.util.XMLScanException: expecting end tag: Mail, but found {}Content_Disposition at state 1.
This is my message in message monitoring:
<?xml version="1.0" encoding="UTF-8" ?>
- <ns1:Mail xmlns:ns1="http://sap.com/xi/XI/Mail/30">
  <Content_Disposition>"attachment; filename="MyFileName.txt"</Content_Disposition>
  <Content>ZLF;0001000079;Dealer Motors UK</Content>
  </ns1:Mail>
In message mapping with target message mail package I've linked Content_Disposition with the constant
"attachment; filename="MyFileName.txt"
If I cancel this relation the mail arrives correctly.
One other thing: when I took mail.xsd from SAP the fields Content_Disposition and Content_Description weren't in, so I added them manually in XSD.
thanks
Edited by: Fabio Boni on Sep 2, 2010 5:42 PM
Edited by: Fabio Boni on Sep 2, 2010 6:06 PM

Similar Messages

  • How to send original filename as the attachment name through mail adapter?

    Hi,
    I have a File to Mail scenario where the file is picked up from a folder in R/3 system and is sent as an attachment through mail. The requirement is to send the file unconverted and with the same file name.
    When tried without creating any ESR objects, it was sending the file with the name Untitled.xml.
    Since the filename has to be picked dynamically, I am not able to configure it through module parameters also (where we can set it through Content_Disposition)
    I tried configuring it as mentioned in the following link: [http://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=138084630]
    But still it is going as Untitled.xml with the whole mail package as the content of the attachment.
    Any pointers to solve this issue will be of great help.
    Thanks
    Justin

    there is no standard way so you will  have to write module beans.
    in other way:
    XI Mail Adapter: An approach for sending emails with attachment with help of Java mapping - XI Mail Adapter: An approach for sending emails with attachment with help of Java mapping
    Dynamic name in the mail attachment - pseudo "variable substitution" :
    XI: Dynamic name in the mail attachment - pseudo "variable substitution"
    Dynamic attachment name in receiver mail adapter

  • Change attachment name using mail adapter

    Hi All,
    I have a problem changing the attachment name in my scenario. I use Mail scenario to send a pdf Attachment from R/3 to email address. Everything working fine except the attachment name that becoming untitled.pdf and untitled.txt.
    Communication Channel setting :
    message protocol : xipayload
    transport protocol : smtp
    checked use mail package
    checked keep attachment
    I have use MessageTransformBean in my receiver adapter, but no luck. It was produce an error.
    anyone have an idea to solve my problem?
    thx,
    Robby

    Hi,
    You need to go to the Module tab of the Mail adapter receiver communcation channel and give the parameter as Transform.contentDisposition and its value as attachment ( since you needed the output to be sent as an attachment) and give the name of the attachment as you required.
    Please see the help page : [http://help.sap.com/saphelp_nw04/helpdata/en/57/0b2c4142aef623e10000000a155106/frameset.htm] for more details and more options of the parameters.
    Regards,
    Kalpana.

  • Mail Receiver adapter - dynamic file name without mail package

    I know that we can get the dynamic attachment name using mail package... As per the FAQ Mail adapter, the Mail package use is deprecated and hence we do not want to go that route.
    I have seen the following wiki entry for setting the file attachment name...
    http://wiki.sdn.sap.com/wiki/display/XI/Adapter%20Module%20PI%207.0%20Set%20Attachment%20Name?bc=true
    Is this the only approach to dynamic attachment name using Mail adapter (and without Mail package). Or a different approach without Adapter module is possible?

    There is a different approach without using mail package or adapter module.
    Have a look at this Wiki:
    http://wiki.sdn.sap.com/wiki/display/ESOAInfrastructure/Dynamic+Email+Attachment+name+for+Received+Mails+with+ASMA+and+without+using+mail+package

  • Dynamic excel filename Receiver Mail adapter

    Hi all,
    May i know what is the way to dynamically set the file name of attachment in receiver mail adapter.
    Can we do using DynamicConfiguraion???
    If yes how?
    Thanks In Advance,
    H.L.Babu

    But i am not using any mail package.
    and also in adapter module i have written code like..
    byte by[] = generateExcel(is);
                      xp.setName(filename);
                      System.err.println("The name of the file."+filename);
                      xp.setContentType("application/vnd.ms-excel");
                xp.setContent(by);
                      System.err.println("After successful setting of XML Payload");
                msg.setDocument(xp);
                System.err.println("Message Set is successful");             
    But it is not getting the excact file name..
    Any coments..

  • Using header paramter SHeaderX-MS-HAS-ATTACH  in Sender mail adapter

    I am trying to check if an e-mail contains attachment in reciever determintion
    I set the Variable Header XHeaderName1 to be SHeaderX-MS-HAS-ATTACH
    in Sender mail adapter
    I added a condition in the receving determintation
    XHeaderName1 = yes
    I see the DynamicConfiguration tab in sxmb_moni and the value of SHeaderX-MS-HAS-ATTACH is "yes"
    but the message fails with the error
    No receiver could be determined
    any ideas?

    Hi,
    In Receiver determination you need to set SHeaderX-MS-HAS-ATTACH = yes instead of XHeaderName1.
    As far my understanding, in receiver determination you need to verify the condition with  SHeaderX-MS-HAS-ATTACH = yes (check with syntax also ie. case sensitive and all)
    Thanks
    Swarup

  • How to download / read  text attachment  in Sender Mail Adapter  IN XI

    Hi
    I would like to know how to download / read text attachment in sender mail Adapter & sent same attachment to target system using file adapter.
    Please help how to design / resolve this concept.
    Regards
    DSR

    I would like to know how to download / read text attachment in sender mail Adapter & sent same
    attachment to target system using file adapter.
    Take help from this blog:
    /people/michal.krawczyk2/blog/2005/12/18/xi-sender-mail-adapter--payloadswapbean--step-by-step
    From the blog:
    However in most cases
    our message will not be a part of the e-mail's payload but will be sent as a file attachment.
    Can XI's mail adapter handle such scenarios? Sure it can but with a little help
    from the PayloadSwapBean adapter module
    Once your message (attachment) is read by the sender CC, you can perform the basic mapping requirement (if any) to convert the mail message fromat to the file format.....configure a receiver FILE CC and send the message...this should be the design...
    Regards,
    Abhishek.

  • How to set dynamic table name in sql query?

    I want set dynamic table name by parameter in sql query,just like:
    select * from :tbname
    but run report is error,BI P report table name is invalidation.
    What can i do? Thanks!

    Hi,
    that's only possible inside a data template with a lexical parameter.
    Regards
    Rainer

  • Dynamic File name in File Adapter

    Hi,
    I have a requirement to pass dynamic file name in File Adapter.
    Is there any way to pass a variable for the file name attribut in file adapter.
    I am looking for some options apart from %yyMMddHHmmss%,%SEQ%...etc
    Please suggest if any of you have information on how to put values from a variable to file name attribute in file adapter
    regards
    Saiju

    Hi Saiju,
    Yes there is.
    Assign your file name to a variable, let's say 'fileName'.
    Now go to your invoke activity(for the specific fileadapter) -> Property tab-> find a property call jca.file.FileName -> in the value field assign 'fileName' variable.
    That's it... (assuming you are using 11g)
    Arik
    Edited by: Arik on Jun 27, 2012 3:12 PM

  • Text file as an attachment in reciever mail adapter

    Hi Experts,
    I want to pick the text file using sender file adapter using file content converion, same file i need to send an attachment in reciever mail adapter.
    Can anybody help me how can i do this.
    Kind Regards,
    Praveen.
    Edited by: Praveen Kumar on Mar 10, 2010 9:08 AM

    Hi,
    >>>I want to pick the text file using sender file adapter using file content converion, same file i need to send an attachment in reciever mail adapter.
    use payload swap bean to put the attachment in place of the message payload - do the content conversion using
    content conversion adapter module, then do the same in the reverted order at the receiver
    there are dozenz of blogs showing how to use the two adapter modules I mentioned so just do a little search in blog section
    Regards,
    Michal Krawczyk

  • Dynamic email address in MAIL adapter

    Hi ALL,
                 Is there a way of sending dynamic email addresses in mail adapter?
    Regards,
    XIer

    Xier,
    Yes. You can do it. Using Mail adapter option with Use MailPackage option.
    raj.

  • Help on Dynamic queue name in JMS Adapter

    Hi Experts,
      Could you please explain how to configure dynamic queue name in JMS Adapter.
    My requirement is i would have to add the date and time to JMS Queue Name in receiver JMS Adapter.
    Thanks in Advance
    Chilla

    hi,
    as it's not in Adapter-Specific Message Properties
    http://help.sap.com/saphelp_nw04/helpdata/en/10/b1b4c8575a6e47954ad63438d303e4/content.htm
    looks like you cannot do it with jms adapter in standard
    use proxy or your own adapter instead
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Dynamic file name of the attachment in sender mail adapter

    Hi
    I have configured a sender mail adapter which receives some attachments.
    Right now the file name of the attachment is hardcoded to "MailAttachment-1" "MailAttachment-2" using the content-description from "AF_Modules/PayloadSwapBean" module.
    I want to set it to dynamic ie. instead of "MailAttachment-1"... i want it with real name of the attach.
    please suggest a solution w/o the need to develop a custom adapter module.
    Thanks!
    Regards,
    Mariano.

    Thanks Prateek,
    Now, i can see that the name of the original file is into the content type named as  text/xml; name"name of the file.xml" when i send the email from outlook.
    If i send it from hotmail, this is not happend.
    Do you know why happend this?
    If i always would have the original name inside the content type, my problem will be solved.
    Edited by: Mariano Vidal on Feb 13, 2009 2:26 PM

  • 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

  • Dynamic file name of the attachment in receiver mail adapter

    Hi
    I have configured a receiver mail adapter which receives the payload as an xml attachment.
    Right now the file name of the attachment is hardcoded to "invoice.xml".
    I want to set it to dynamic ie. instead of "invoice.xml"... i want it as "invoice<invoicenumber>.xml".
    Invoice number is present in the payload.
    please suggest a solution w/o the need to develop a custom adapter module.
    Thanks!
    Regards,
    Faria Mithani

    Hi,
    Go through this thread..
    Dynamic  File Name for Receiver File Adapter
    Regards,
    Sarvesh

Maybe you are looking for

  • Deletion of unsed scenarios in PI landscape

    Dear Experts, We need some guidance on deletion of unsed scenarios in PI. We are using PI7.1, having 100+ scenarios in PI landscape (DEV,QAS,PROD). We found few of them are no longer needed and we want to delete those from all the landscape of PI. Is

  • Pointer to a function (C .dll files)

    Hi, We have a .c dll file that we are trying to use in Labview to talk to a USB transceiver. What happens is that when we try to configure the device we call c functions using the "call library function node" utility in Labview i.e. void open_channel

  • UNKNOWN_MESSAGE - BPM

    Hi,    I have created a simple file to file scenario by using BPM.    After activating the changes, the file is picked up from the source  folder but it is not moved to the destination. In the adapter monitor, I am seeing this error message. "UNKNOWN

  • Who else is using Java Desktop System?

    Is anyone buying this thing?

  • My Laptop Config for video editing...is it right for me?

    hello all, greetings to all of you. this is my first post.  i want to know can i edit sd video on the laptop that i have decieded to purchase? i have decieded to go for dell inspiron with following specs: dell studio S541036IN8 Intel® Core™ i5-540M P