Use of adapter specific mess atributes,variable transportbinding in mailada

hi all.
i just want to know what is the purpose of adapter specific message  atributes,variable transportbinding in mail reciever adapter .
one more thing is wat for VARIABLE HEADER NAME1,NAME2,NAME3.
waiting for your any great answer.
bye.
regards.
seet

check this for the receiver mail adapter
http://help.sap.com/saphelp_nw70/helpdata/en/ae/d03341771b4c0de10000000a1550b0/frameset.htm
this blog would help u more
/people/prasad.ulagappan2/blog/2005/06/07/mail-adapter-scenarios-150-sap-exchange-infrastructure

Similar Messages

  • Purpose of adapter specific message atributes at sender,reciever file adapt

    hi.
    i want know birefly about adapter specific message atributes at sender ,reciever  adapters.
    and what would be the result if we enable this adpspecmessatb checkbox
    waiting for your response.
    bye.
    regards.
    seeta ram.

    hi santosh .
    thanks for yor your answer.
    but when i mapped constant  a to the udf and mapped to target and while iam testing i got the error like
    10:38:30 Start of test
    Compilation of MM_SapIsuTo3rdpartyAccountStatementExtraction successful Runtime exception during processing target field mapping /ns0:MT_SapisuTo3rdpartyAccountStatementExtraction/accstmtdetails/body/status. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MM_SapIsuTo3rdpartyAccountStatementExtraction_ method filename$[a, com.sap.aii.mappingtool.tf3.rt.Context@421badd8] com.sap.aii.mappingtool.tf3.MessageMappingException: Runtime exception during processing target field mapping /ns0:MT_SapisuTo3rdpartyAccountStatementExtraction/accstmtdetails/body/status. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MM_SapIsuTo3rdpartyAccountStatementExtraction_ method filename$[a, com.sap.aii.mappingtool.tf3.rt.Context@421badd8] at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:350) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:401) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInternal(ServerMapService.java:431) at com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:169) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.execute(MapServiceBean.java:52) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.execute(MapServiceRemoteObjectImpl0_0.java:301) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:146) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:320) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:198) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.utilxi.misc.api.BaseRuntimeException: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MM_SapIsuTo3rdpartyAccountStatementExtraction_ method filename$[a, com.sap.aii.mappingtool.tf3.rt.Context@421badd8] at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.getValue(FunctionWrapper.java:56) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:282) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:401) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInternal(ServerMapService.java:431) at com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:169) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.execute(MapServiceBean.java:52) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.execute(MapServiceRemoteObjectImpl0_0.java:301) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:146) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:320) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:198) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.getValue(FunctionWrapper.java:47) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:282) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:312) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:401) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInternal(ServerMapService.java:431) at com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:169) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.execute(MapServiceBean.java:52) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.execute(MapServiceRemoteObjectImpl0_0.java:301) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:146) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:320) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:198) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:129) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Caused by: java.lang.NullPointerException at com.sap.xi.tf._MM_SapIsuTo3rdpartyAccountStatementExtraction_.filename$(_MM_SapIsuTo3rdpartyAccountStatementExtraction_.java:119) ... 26 more RuntimeException in Message-Mapping transformation: Runtime exception during processing target field mapping /ns0:MT_SapisuTo3rdpartyAccountStatementExtraction/accstmtdetails/body/status. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MM_SapIsuTo3rdpartyAccountStatementExtraction_ method filename$[a, com.sap.aii.mappingtool.tf3.rt.Context@421badd8]
    10:38:37 End of test
    what would be the reason for this.
    waiting for u r response.
    bye.
    regards.
    seeta ram.

  • Use of "Adapter-Specific Message Attributes"?

    Hi,
    What is "Adapter-Specific Message Attributes" and when should we use this?
    Is it different for sender and receiver channel? Please help.

    Hi Aamir,
    You can refer these links too.
    What is "Adapter-Specific Message Attributes" and when should we use this?
    Adapter specific message attribute in pi 7.1 | SCN
    Is it different for sender and receiver channel?
    Adapter-Specific Message Attributes in the Message Header (SAP Library - Partner Connectivity Kit)

  • Adapter specific attributes - SOAP Adapter

    Hi,
    I am trying to use the adapter specific attributes of the receiver SOAP adapter. But I am not able to view the Dynamic configurations in sxi_monitor corresponding to this message. Any clue why!?
    I read through the SOAP adapter help on help.sap.com,
    <i>http://help.sap.com/saphelp_nw2004s/helpdata/en/69/a6fb3fea9df028e10000000a1550b0/frameset.htm</i>
    Here it says:
    <i>If you want to use header fields, set the relevant indicator for Variable Header. The technical names for the fields are XHeaderName1, XHeaderName2, XHeaderName3. The parameters are embedded in the HTTP request under the names you enter here.</i>
    But I donot find an option where I can enter the names. Am I missing something here?
    Regards,
    Smitha.

    Hi Smitha,
    I did not try to use adapter-specific attributes with SOAP-adapter, but with mail-adapter. The documentation is quite similar, so I excpect similar results...
    So as far as I understood, the parameters XHeaderName1, ... etc are for dynamic extension of the set of adapter-specific attributes. For example, if you want to add some more information in the message header, you can program an adapter module and you have now a guide how to name the additional attributes.
    Usually, the "standard" adapter-specific attributes are starting with "S" (Sender) or "T" (Receiver). You can find the names in the documentation of the SOAP-adapter.
    In order to use the adapter-specific attributes, you have to check both indicators (adapter-specific attributes, variable transport binding). If this still doesn't work, you should use OSS. In my scenario (mail adapter) this didn't work, too. The reason was, that there was a bug in the adapter metadata (Integration Repository) of SAP BASIS. There was a SAP note, where I could download the correct adapter metadata. Maybe you can find a SAP note for the SOAP Adapter.
    Although this is probably not the final solution, I hope this guides you a step further.
    Regards,
    Torsten

  • SOAP Use Adapter-Specific Message Properties and Variable Transport Binding

    Hi Friends,
       I am new to use to Soap Adapter. Please help me out bellow doubts.
       1.When you use Use Adapter-Specific Message Properties and Variable Transport Binding .
       2. Where exactly  we r using below parameters.
    Remote User : (technical name: SRemoteUser )
    Remote Host : (technical name: SRemoteHost )
    SOAP Action (technical name: SHeaderSOAPACTION )
    To transfer further header fields, set the relevant indicator. You can then store the following attributes and their values in the XI message header:
    Variable Header : (technical name: XHeaderName1 )
    Variable Header : (technical name: XHeaderName2 )
    Variable Header : (technical name: XHeaderName3 )
    Thanks&Regards
    G.Bhanuprakash

    Hi,
       1.When you use Use Adapter-Specific Message Properties and Variable Transport Binding .
    SAP Help says both are needed to be checked when you want to process adapter attributes
    Configuring the Receiver SOAP Adapter - SAP NetWeaver Exchange Infrastructure - SAP Library
    These attributes can be get/set using dynamic configuration and their technical names are what you have pasted:
    Remote User : (technical name: SRemoteUser )
    Remote Host : (technical name: SRemoteHost )
    SOAP Action (technical name: SHeaderSOAPACTION )
    To transfer further header fields, set the relevant indicator. You can then store the following attributes and their values in the XI message header:
    Variable Header : (technical name: XHeaderName1 )
    Variable Header : (technical name: XHeaderName2 )
    Variable Header : (technical name: XHeaderName3 )
    Remote User - the username used to send a message to the adapter engine using SOAP
    Remote Host - hostname which the remote user used
    SOAP Action - SOAP Action of the XI webservice (sender) / SOAP Action of the receiver webservice
    Variable Headers are additional key-value pairs in the HTTP Header that could be accessed in the XI Header using dynamic configuration. The limit is only three though.
    Regards,
    Mark

  • Using Adapter-specific attributes in Mail adapter

    Hi,
    I try to use adapter-specific attributes in my Mail adapter. I set the "Use Adapter-Specific Message Attributes" indicator, but I do not get a result in the mapping and also in the SXMB_MONI the attributes are not visible.
    The documentation also refers to Variable Transport Binding indicator:<a href="http://help.sap.com/saphelp_nw04/helpdata/en/23/c093409c663228e10000000a1550b0/content.htm">http://help.sap.com/saphelp_nw04/helpdata/en/23/c093409c663228e10000000a1550b0/content.htm</a>
    Could this be the problem? I cannot find this indiciator! Does anyone know where I can find this indicator?
    Regards,
    Torsten

    Hi,
    The values for the parameters, set using adapter specific message attributes are available at runtime in the path http://sap.com/xi/XI/System/Mail.
    We need to write UDF's that can extract the values from this path.
    For Ex:
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters() .get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create(
        “http://sap.com/xi/XI/System/File”,
        “FileName”);
    String valueOld = conf.get(key);
    if (valueOld != null) {
        String valueNew = valueOld.replaceAll(“input”,”output”);
        conf.put(key, valueNew);
    If you check Dynamic configuration in sxmb_moni, you would be able to find the values for all the attributes that have been set in the adapter.
    Regards,
    Smitha.

  • Dequeue (using a AQ Adapter) based on a "Variable" condition

    Hi,
    I use an AQ Adapter to dequeue messages from an AQ and send it to an BPEL process. I have setup the adapter for conditional dequeuing as follows:
    My message object has a field called "title" so in my adapter i use the Dequeue condition as below and it works perfectly:
    <jca:operation
    ActivationSpec="oracle.tip.adapter.aq.inbound.AQDequeueActivationSpec"
    QueueName="DETPAYLOAD_QUEUE"
    DatabaseSchema="APPS"
    DequeueCondition="tab.user_data.title='Test Case'"
    OpaqueSchema="false" >
    </jca:operation>
    My question is : Is it possible to configure the adapter based on a Variable in the BPEL process?
    For example: Can i use the DequeueCondition as : DequeueCondition="tab.user_data.title=Process_Variable" (where Process_Variable is a BPEL process variable that has been populated in the previous activity)
    I have tried some of the below ways to get this working but have not been successful so far. Has anyone tried this before?
    - DequeueCondition="tab.user_data.title=(String)getVariableData("Process_Variable")"
    - DequeueCondition="tab.user_data.title=:Process_Variable"
    - DequeueCondition="tab.user_data.title=@Process_Variable"
    Thanks,
    Amol

    That's the way.

  • Using adapter specific message attributes in SOAP adapter configuration

    Hi,
    Can you please let me know how to use adapter specific message attributes in receiver and sender SOAP adapter configuration. If possible , with example.

    See here:
    Adapter-Specific Message Attributes in the Message Header
    http://help.sap.com/saphelp_nw04/helpdata/en/43/0a7d1be4e622f3e10000000a1553f7/frameset.htm
    Sender Soap Adapter:
    http://help.sap.com/saphelp_nw04/helpdata/en/fc/5ad93f130f9215e10000000a155106/frameset.htm
    Receiver Soap Adapter
    http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/frameset.htm

  • Error using XI HTTP adapter specific message attribute URL parameters

    Hi XI gurus, in our XI 7.0 SPS11,
    we have problem using URL parameters of plain HTTP receiver adapter.
    If I set Adapter specific message Properties in communication channel and activate switch for Apply URL parameters (using Parameter 1 to 5) filling them using message mapping, we have no effect; instead we have error "Dynamic Header - Missing Message Attributes: Fields/Parameters".
    We carried out this test:
    1. not using adapter specific message attribute and setting
    a static URL target with fixed parameters it runs correctly.
    2. using adapter specific message attribute for target
    URL and URL parameters both doesn't runs correctly.
    3. using adapter specific message attribute only for target
    URL doesn't run correctly.
    These attribute key used for URL parameters:
    URLParamOne
    URLParamTwo
    URLParamThree
    URLParamFour
    URLParamFive
    Namespace: http://sap.com/xi/XI/System/HTTP
    Can you solve this issue? Are there oss notes, corrections, ...
    Thanks in advance.
    Marco Tricase

    Some other test done with TCP gateway.
    Activated adapter specific message properties for
    *URL
    *HTTP Header fields (one header field named "lisca")
    *URL Parameters (one param named "objectType")
    The HTTP message catched by TCP Gateway
    POST /csl/cslinker HTTP/1.0
    content-type: text/xml; charset=UTF-8
    content-length: 318
    connection: close
    accept: /
    user-agent: SAP Web Application Server (1.0;700)
    host: 10.10.43.94:54000
    accept-encoding: gzip
    <?xml version="1.0" encoding="UTF-8"?>
    seems nothing has been generated, and obviusly URL and params have been set in message mapping.
    Hope some guru has been solved the issue ...
    Pasquale Rossiello

  • Using adapter specific parameters in  a multiple receiver scenario.

    Hi all,
    I have a scenario in which I am sending a binary file from one folder to another using a file sender and file receiver adapter.
    But, I have another file receiver to this message which expects the filename of the above binary file in the form of an XML file.
    I want to know is this possible to receive an adapter specific value in the form of XML when we havent sent any xml from source side?
    Please reply.
    Sumit

    Sumit,
    I got ur sceario.
    I'm sure u have designed the data type for the target file am I right.
    Let say it looks  like
    DT_Filename
    File   1..1
        Filename 1..1
    U might have created the message type for the same.
    Please create the message mapping with the source and target as same(above structure).
    Now create simple UDF with no input.
    DynamicConfiguration conf = (DynamicConfiguration) container
    .getTransformationParameters()
    .get(StreamTransformationConstants.DYNAMIC_CONFIGURATION );
    DynamicConfigurationKey key = DynamicConfigurationKey.create(
    "http://sap.com/xi/XI/System/File","FileName");
    String name = conf.get(key);
    return ""name"";
    UDF mapping
    UDF --> Filename[Target node, as per my data type designed above]
    Hope it helps!!!
    If not kindly revert back.
    Best regards,
    raj.

  • I need to update specific records(of variable lengths) in a file. I can get the correct record but when I update it(add info), it overwrites part of the record following it. I am using labview 6.0

    I need to update specific records(of variable lengths) in a file. I can get the correct record but when I update it(add or change info), it overwrites part of the record following it. I am using labview 6.0. I need to be able to insert information into the middle of a file without disturbing the data before and after

    It's hard to give more specifics without more detail, but in general you're going to need to read in the entire file, split it into three pieces (everything before the record of interest, the record itself, and everything after the record of interest), modify the record, reassemble the three pieces in proper order, and write the whole thing back to the file.Of course if the file is very large you might not want to actually implement it this way, but conceptually at least, this is what you are looking at.If this file some sort of proprietary format?Mike...PS: this type of issue is why I really like databases...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • XSLT Mapping of Adapter-Specific Message Attributes

    Hi,
    We have the requirement to build a soap request with a custom soap envelop/header which contains a sessionId.
    Therefore we developed a xlst mapping which is called directly after a graphical mapping.
    In the graphical mapping the session id is written to the dynamic configuration.
    The goal is to read this session id in the xslt mapping from the dynamic configuration using XSLT Mapping of Adapter-Specific Message Attributes. We used  [this|http://help.sap.com/saphelp_nwpi711/helpdata/en/43/03fe1bdc7821ade10000000a1553f6/content.htm] documentation as an example.
    But we are getting the following error: TransformerConfigurationException triggered while loading XSLT mapping. The error is raised at this node: <xsl:variable name="dynamic-conf" select="map:get($inputparam, 'DynamicConfiguration')" />
    This is the coding of the xslt transformation:
    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet version="1.0"
          xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
          xmlns:ns1="urn:enterprise.soap.sforce.com"
          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 indent="no" />
    <xsl:param name="inputparam"/>
    <xsl:template match="/">
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
    <urn:SessionHeader>
    <xsl:variable name="dynamic-conf" select="map:get($inputparam, 'DynamicConfiguration')" />
    <xsl:variable name="dynamic-key" select="key:create('http://sap.com/xi/XI/System/SOAP', 'sessionId')" />
    <xsl:variable name="dynamic-value" select="dyn:get($dynamic-conf, $dynamic-key)" />
    <urn:sessionId><xsl:value-of select="$dynamic-value"></xsl:value-of></urn:sessionId>
    </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
    <xsl:copy-of select="*"/>
    </soapenv:Body>
    </soapenv:Envelope>
    </xsl:template>
    </xsl:stylesheet>
    Any help will be highly appreciated.
    Regards, Henk

    Hi, yes we did try that and lot's of other combination.
    The results of those trials are that it seems to go wrong with <xsl:variable name="dynamic-conf" select="map:get($inputparam, 'DynamicConfiguration')" />
    When we enclose it with <xsl:if test="function-available('map:get')"> the transformation is not dumping, but the function is not available.
    Regards, Henk

  • Multi-Message-split with ABAP mapping and adapter specific attributes

    Hi all,
    With <b>ABAP-Mapping I split 1 message to n messages</b>.
    So many files are generated in <b>file-Adapter</b>.
    Everything fine.
    But now I want the file names different using adapter specific attributes.
    It is not possible to use variable substitution and write the file name in payload because of receiver restrictions.
    I tried this with following similar coding in ABAP-Mapping:
    data: lt_records TYPE MPP_DYNAMIC_TAB.
          Loop.
          l_file_name = "payload-Inbound"-information
          ls_record-namespace = 'http://sap.com/xi/XI/System/File'.
          ls_record-name = 'FileName'.
          ls_record-value = l_file_name.  "l_file_name comes from inbound-payload
          append ls_record to lt_records.
         Endloop.
      CALL METHOD dynamic_configuration->set_all_records
        EXPORTING
          records = lt_records.
    If I start the interface I see in the monitoring the dynamic configuration with many entries for file-name in the the SOAP-Header mapping of the request message (following extract):
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Mapping der Request-Message
      -->
    - <SAP:DynamicConfiguration xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Record namespace="http://sap.com/xi/XI/System/File" name="FileName">BPAADDRESS.XML</SAP:Record>
      <SAP:Record namespace="http://sap.com/xi/XI/System/File" name="FileName">BPABROKERROLE.XML</SAP:Record>
      <SAP:Record namespace="http://sap.com/xi/XI/System/File" name="FileName">BPACOMPANYSEGMENT.XML</SAP:Record>
      <SAP:Record namespace="http://sap.com/xi/XI/System/File" name="FileName">BPACUSTOMERROLE.XML</SAP:Record>
    The result is that <b>all files have the same file name</b> (last entry in dynamic configuration).
    Is it possible to write the adapter specific configuration in ABAP-mapping <u>for every single result message</u>??
    Thank you for your help,
    Florian

    Hi Florian,
    I've a different idea...I dont think its a "right solution" but just another work around..it involves a BPM...
    In your ABAP mapping..set the dynamic config with as many variables as number of different messages...i.e. use the variables like 'FileName1', 'FileName2'...'FileName6' instead of 'FileName'. But use the same namespace 'http://sap.com/xi/XI/System/File'
    Call the above mapping in a BPM and capture the individual messages and set the attribute 'FileName' from the values of 'FileName1' to 'FileName6' accordingly using Message Mapping and then send the message using the 'Send' step.
    before you try this, try using the variable names 'FileName1' ...'FileName6' in the receiver adapters...enable the ASMS. <b>I know we need to select which variables from the dynamic config to be used by the adapter by specifically selecting 'FileName', 'Directory' etc...but just give it a try and see if it works..</b>
    Or..instead of using a BPM..you can combine Henrique's idea...use Adapter module to set the value for 'FileName' from variables 'FileName1'...'FileName6' accordingly.
    hope I'm clear..lemme know if you have any questions..
    cheers
    praveen

  • Overwrite Adapter-Specific Message Attributes in MAIL adapter.

    Hi guru.
    I'm trying to use the SENDER MAIL Adapter.
    My scenario is the following:
    a remote system send an email with an XML file like attachment. The PI System read the mailbox and tries to map the payload.
    When I try without the "Adapter-Specific Message Attributes" the flow work well, but I need to know the email of the sender.
    When I try to enable the Adapter-Specific Message Attributes the system finds an error in the SOAP envelop, in the "SHeaderX-CR-HASHEDPUZZLE" Node.
    This is a part of the ENVELOP.
    <sap:DynamicConfiguration SOAP:mustUnderstand="1">
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderTO">email</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SUser">testxi</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-ORIGINATING-IP">[XX.XXX.XX.XXX]</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SGreeting">
    Lotus Notes POP3 server version X2.0 ready on xxx.</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderSUBJECT">GROUDWORK_REMOTE</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-MSG-REF">
    server-10.XXXX.com!1224858537!24401109!1
    </sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderMESSAGE-ID"> 00a801c935e4$d4b4e3d0$7e1eab70$
    </sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-VIRUS-SCANNED">amavisd-new at xxx.com</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-ENV-SENDER">EMAIL</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-STARSCAN-VERSION">5.5.12.14.2; banners=-,-,xxx.it</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-SPAMWHITELISTED">domain whitelist</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-VIRUSCHECKED">Checked</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-MIMETRACK">
    Itemize by SMTP Server on IXXX(Release 6.5.5|November30, 2005) at 10/24/2008 16:28:57,Serialize by POP3 Server on IXXX(Release 6.5.5FP2|October23, 2006) at 24/10/2008 16:38:51,Serialize complete at 24/10/2008 16:38:51
    </sap:Record>
    *THE ERROR IS IN THE FOLLOWING NODE*
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-CR-HASHEDPUZZLE">
    7hY= AFac ANQ+ Ad/R ArpP BnYc C6X8 EpvL FLPB GGaw GaCt HKM+ I0Nu JIhk JdJ4 KIZZ;1;dABlAHMAdAB4AGkAQABwAHIAbwB0AG8AdABpAHAAbwAuAGkAdAA=;
    Sosha1_v1;7;{CCB182EF-E812-44B6-9C48-85873A18C72};bQBhAG4AdQBlAGwALgBjAGgAaQBhAHIAZQBsAGwAaQBAAGkAbgBmAHIAYQBjAG8AbQAuAGkAdAA=;
    Fri, 24 Oct 2008 14:28:46 GMT;RgBXADoAIABDAE8ATQBFAFIAXwBSAEUATQBPAFQARQA=
    </sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-CR-PUZZLEID">{CCB182EF-E812-44B6-9C48-B85873A18C72}</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderTHREAD-INDEX">
    Ack1vUKnx+miPqT4T22mKaVcKhgAvwAAEmwwAAGwdQAABvplAAAAK6sgAAARhjAAAGHCAAAAKwPAAABcPNA=
    </sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderRECEIVED">
    from XXX.com ([xx.xxx.xxx.xx])         by mail3.XXX.com (Lotus Domino Release 6.5.5)         with SMTP id 2008102416285733-32229          for EMAIL ;         Fri, 24 Oct 2008 16:28:57 +0200
    </sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderDATE">Fri, 24 Oct 2008 16:28:48 +0200</sap:Record>
         <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SServerLocation">pop://popserver</sap:Record>
    </sap:DynamicConfiguration>
    My question is:
    Can I  overwrite in the adapter the <sap:Record namespace="http://sap.com/xi/XI/System/Mail" name="SHeaderX-CR-HASHEDPUZZLE"> ?
    <post_modified>
    Edited by: Juan Reyes on Nov 3, 2008 7:22 PM

    Hi
    Check the details of the Email in Mail box are all the Adapter specific parameters are coming. If not then this will not read Adapter Specific parameters. Some Legacy system dont generate all parameters But you can add your using variable header.
    Thanks
    Gaurav

  • Change Adapter Specific Message Attributes with ABAP Mapping

    Hi everyone,
    I have an IDOC -> PI -> File scenario and I need the file name to be a combination of several fields of the file so variable substitution is quite complicated. I have been reading about Adapter Specific Message Attributes and since the File name is one of those attributes I think maybe I can use it. The only thing is that I'm using ABAP mapping. Can I set the file name in that way? Has anyone done it?
    Thank you for your help.
    Regards,
    Pablo

    I found it myself:
      DATA: l_dyn_record      TYPE mpp_dynamic.
          l_dyn_record-namespace = 'http://sap.com/xi/XI/System/File'.
          l_dyn_record-name = 'FileName'.
          l_dyn_record-value = w_nombrearch.
          dynamic_configuration->add_record( l_dyn_record ).
    Thanks anyway.

Maybe you are looking for