Filenaming convention-Receiver adapter
Dear All,
In a file to file scenario, I am sending a file with specific file name and now at the receiving end i used have the file name as same name along with timestamp and a counter both. Is there any dynamic file naming program available.
Please provide some suggestions.
Regards,
Nithiyanandam
Hi....
Create a new field in the target structure.
For that map like below
DynamicConfiguration -->
Counter --> concate --> Targetfield
And use variable substituion in the reciever communication channel.and also choose file construction mode as 'AddTimeStamp'.
If you dont want the extra field in the target payload, use FCC and remove that extra field.
Thanks ,
Leela
Similar Messages
-
Q? how to change filename of receiver adapter includeing payload attribute?
hi all.
our scenario is IDOC - XI - FILE.
IDOC is standard type .xml"
Despite of searching help library, just read about how to change using payload value.
How to change the filename using payload attribute?
Message was edited by: ChangSeop SongHi,
You can create the file name dynamically from the payload of the receiver adapter as follows.
From the requirement you have stated, you want your file to be named as,
TPSDLS<shipmentid>.
For this, in the reciver file adapter, give your filename as <b>TPSDLS%var%</b> and under variable name substitution,
<b>var</b> --> <b>payload:IDOCTYPE,1,Shipments,1,ShipmentID,1</b>
here, var acts as your variable name and it first looks for IDOCTYPE and its first occurence, shipment and its first occurence and finally, shipmentID and its first occurence. There by generating the filename dynamically.
For more info on this, check the topic <b>variable substitution</b> under this link.
http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
hope this helps,
let me know if you have any clarification,
regards,
bhavesh -
Filename from payload - FTP receiver adapter
Hello everyone!
I have a scenario wherein I need to get the value from a field coming from an IDOC and then give that value as the "filename" of the file that is saved in the FTP folder.
IDOC > XI > FILE
For example, if /ORDERS05/IDOC/E1EDK02/BELNR = 620000123
then I want the name of the file to be saved in the FTP folder to be 620000123.xml
I understand you may use the 'variable substitution' property in the FTP receiver adapter, but subsequent attempts at trying to configure that property have resulted in errors. Can anyone help me out?
Warm regards,
Glenndo u have recordset name (root message)
For Ex: If you want to refer to the field which is bold
below is your variable substuition:
payload:root,1,e1,1,e2,2
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<dummy>
<e1>
<e2>Data_1</e2>
<f/>
<g attr="abc">text</g>
<e2>Data_2</e2>
</e1>
</dummy>
<e1>
<e2>illegal/value</e2>
<f/>
<g attr="abc">text</g>
<e2 attr="fghij">Example Value</e2>
</e1>
</root>
Similarly
for your strucutre:
<MS_MT>
<order>
<number>
the variable substuition would be
payload:MS_MT,1,order,1,number,1
you have to give complete XML to arrive to this value. -
Receiver determination using substring in filename in file adapter
Hi
In PI 7.11 I would like to determine the receiver based on a substring in the filename in a file receiver adapter. I am planning on using a context object but am having trouble entering the correct code in the "Right Operand" field.
I have tried selecting Context Object = Filename http://sap.com/xi/XI/System/File and entering this code in the Right Operand: "contains(substring('_4000_'))" and an "=" in the as I am looking for a filename, that contains the substring "_4000_".
I would like to avoid using an extra map and using Dynamic Configuration, as I thing this would be the most elegant way of fixing it
Is there a way of referencing the context object if I chose xpath in stead of context object?
MIkaelHi Mikael,
I have the same scenario like you , could you please tell me about the condition how to you use XPath for Context Object
I need to check the file name and according to that I have to put the file in the different directory.
Source File: XXXX_IN_xxxx
XXXX_PH_xxxx
I have to check the 7th and 8th Char of the file and according to that I have to place the file in the folder
Target: DGE008\IN\Inbound
DGE008PH\Inbound
I don't know how to used the XPATH for file and specially how to use the substring in that.
Could you please help.
Thanks, -
Variable Substitution File Receiver Adapter
Hi,
I am in the process of implementing a scenario involving the conversion of a .jpg file to .bmp. In my scenario, I'd like to the .bmp file name to be dynamically controlled; therefore, I have used the Variable Substitution option in the File Receiver Adapter.
In both the File Sender & Receiver comm. channels, I have ticked 'Adapter Specific Messsage Attributes' check-box and selected the 'File Name' option.
The File Receiver comm. channel also has the following:
File Name Scheme*: %File_Name%.bmp
Variable Name: File_Name
Reference: message:FileName
Having done the above, I am getting the following error message in Comm. Channel Monitoring:
Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Error during variable substitution: com.sap.aii.adapter.file.varsubst.VariableDataSourceException: Unknown message header category 'FileName' for variable 'File_Name'.: com.sap.aii.adapter.file.configuration.DynamicConfigurationException: Error during variable substitution: com.sap.aii.adapter.file.varsubst.VariableDataSourceException: Unknown message header category 'FileName' for variable 'File_Name'.
Would really appreciate your assistance on this.
Regards,
Reuben.
PS: The Sender File Adapter has theHi,
The full error message is s follows:
Runtime exception during processing target field mapping /ns0:MaterialBITMAP_In. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._Test_Conversion_ method setfilename$[17092008, osinef, com.sap.aii.mappingtool.tf3.rt.Context@d3b0d3b] com.sap.aii.mappingtool.tf3.MessageMappingException: Runtime exception during processing target field mapping /ns0:MaterialBITMAP_In. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._Test_Conversion_ method setfilename$[17092008, osinef, com.sap.aii.mappingtool.tf3.rt.Context@d3b0d3b] at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:350) 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:312) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) 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(AccessController.java:215) 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._Test_Conversion_ method setfilename$[17092008, osinef, com.sap.aii.mappingtool.tf3.rt.Context@d3b0d3b] at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.getValue(FunctionWrapper.java:56) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:294) 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:312) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) 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(AccessController.java:215) 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:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.getValue(FunctionWrapper.java:47) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:294) 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:312) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) 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(AccessController.java:215) 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._Test_Conversion_.setfilename$(_Test_Conversion_.java:61) ... 24 more RuntimeException in Message-Mapping transformation: Runtime exception during processing target field mapping /ns0:MaterialBITMAP_In. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._Test_Conversion_ method setfilename$[17092008, osinef, com.sap.aii.mappingtool.tf3.rt.Context@d3b0d3b]
11:15:02 End of test
Reuben. -
Problem with Variable Substitution Receiver Adapter
Hi,
I need to use a dynamic filename so I'm using the variable substitution in my receiver adapter. BUT, the filename can't appear in the file. So i used this blog in reference --> Solution to the problem encountered using Variable Substitution with XI-SP12
The PROBLEM is I still get and extra blank line in the file. How can I eliminate this extra line?
Thanks in advance.
Using XI 7.0Hi Gaurav,
Data Type:
Lines
Line
Config
FileName
XML - example:
<?xml version="1.0" encoding="utf-8"?>
<nr1:MT_TP_TipoCambio_Detalle_ECC_Req xmlns:nr1="urn:erplatam/tipocambio:tp:ecc">
<Lines>
<Line>USDSOL0000000000003.10000013-09-200813-09-2008V</Line>
</Lines>
<Lines>
<Line>USDSOL0000000000002.50000014-09-200814-09-2008V</Line>
</Lines>
<Config>
<FileName>SIGMA_TCSAP_F081031.DAT.TXT</FileName>
</Config>
</nr1:MT_TP_TipoCambio_Detalle_ECC_Req>
Output - File, has 3 lines should have only 2:
USDSOL0000000000003.10000013-09-200813-09-2008V
USDSOL0000000000002.50000014-09-200814-09-2008V
FCC parameters:
RecordSet Structure: Lines,Config
Lines.fieldSeparator 'nl'
Lines.endSeparator 'nl'
Config.fieldSeparator 'nl'
Config.endSeparator 'nl'
Thanks in advance! -
Query on Mail Receiver Adapter
Hello Experts,
I am using Asyn Proxy to Mail Scenario.
Mail receiver adapter generating the Mail with Excel file attachment by using the following details.
R3 coding (Proxy calling code):-
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-FROM = From Mail ID.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-TO = To Mail ID
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-SUBJECT = 'Alert Mail'.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-DATE = SY-DATUM.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-CONTENT_TYPE = 'application/vnd.ms-excel;name="filename.CSV"'.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-CONTENT = 'Field1,Field2,Field3'.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-CONTENT_DISPOSITION = 'attachment'.
ID COnfiguration:-
-->Selected the Use Mail Package & Content Encoding = base64
-->Selected the Keep Attachment option.
I have two questions as mentioned below.
(1)Can i generate the Mail BODY and Excel file attachment both together in a single mail?
(2)With this same IR & ID Objects can i generate only Mail body without any attachment (i.e.
by changing the Content_Type in R/3 coding) ?
Please suggest.
Thanks & Regards
JageshHi Michal,
Thanks for ur reply.
I referred your Blog /people/michal.krawczyk2/blog/2006/04/19/xi-rfc-or-abap-proxy-abap-proxies-with-attachments for genreating the
Mail With attachment and Content together.
but when I select the option KEEP ATTACHMENT in the Mail Receiver Adapter and sending only the Content data without any attachment coding as shown in this Blog then also i am getitng attachment(.txt) file and no mail content. In this case i have used the following R/3 coding.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-FROM = From Mail ID.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-TO = To Mail ID.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-SUBJECT = 'subject'.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-DATE = SY-DATUM.
G_ALERT_INPUT-MT_R3REQUEST_MAIL_SEND-MAIL-CONTENT = 'How are u? This is Mail Content'.
Calling the Proxy method.
Important:- with this same coding if i deselct the KEEP ATTACHMENT option in ID then i am geeting
Mail Content properly.
So i think i have to use different communication chaneel one for the Excel file attachment and second for the Mail content.
Please suggest me if i am wrong.
Regards,
Jagesh -
Hi,
We have a mail receiver adapter which is sending out a edi payload as attachment to the external receiver.
When we send the normal .edi file it is ok.
But when we sign and encrypt the payload and send it out, the external customer receiver decrypts and validates the message successfully but when their application tries to read the edi payload it finds the extra header lines as below :
content-id:
<[email protected]>
Content-Disposition: attachment; filename=xxxxxxxx.edi Content-Type:
application/xml
At their end, their application (DataPower) expects the first three characters of the payload
(decrypted payload) to be either UNA or UNB.This is how it validates whether the incoming message is an EDI message.
But it encounters the extra MIME headers in the payload.
Therefore it gets rejected by DataPower which thinks the content is an
unknown message type.
How to suppress the header lines appearing in the payload(after decryption and validation).
Thanks,
Guesthi,
try content-type as "text/xml" -
Mail receiver adapter: THeaderREPLY-TO not working on ASMA
Hello people,
(note: all the @ where changed by " at " because of limitations of SDN)
I'm trying to set some adapter specific message attributes (ASMA) in a mail receiver adapter.
Two properties I'm trying to set: THeaderFROM e THeaderREPLY-TO.
The first one is working great, the second one does not work.
My scenario is Soap to Mail. I send a soap message, in the message mapping a user defined function get the mail address (to and reply-to) and set it with DinamicConfiguration like this (hard coded to be simple):
DynamicConfiguration conf = (DynamicConfiguration)container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/Mail", "THeaderREPLY-TO");
conf.put(key, "reply.to at teste.com";);
DynamicConfigurationKey from = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/Mail", "THeaderFROM");
conf.put(from, "from at teste.com";);
As in the documentation, it should work. But the mail message reaches the mailbox with mime header Return-Path = from at teste.com.
Reading all the notes related to mail adapter (and adapter module processing) I found the tool TCPGateway to monitor what is going from adapter engine to the mail server. So I changed a little the scenario to test it and now the scenario is Soap->TCPGateway->MailServer. In the TCPGateway I got this:
EHLO brjgs916.weg.net
MAIL FROM:<from at teste.com>;
RCPT TO:<roberti at mycompany.net>;
DATA
Date: Thu, 5 May 2011 19:55:17 -0000
Subject: mail - teste
To: roberti at mycompany.net
From: from at teste.com
MIME-Version: 1.0
content-id: payload-98c5c8b0775111e090110018714e4a28 at sap.com
Content-Type: text/xml;charset=utf-8
Content-Disposition: attachment;filename="Untitled.xml";
Content-Transfer-Encoding: binary
<?xml version="1.0"; encoding="UTF-8"?>
<ns0:MTP_SAMPLE_MAIL_MESSAGE xmlns:ns0="http://soa.weg.net/sampleMail"><Title>titulo</Title><Body>body a ser preenchido</Body><Footer>footer tambem</Footer></ns0:MTP_SAMPLE_MAIL_MESSAGE>.
QUIT
With this information, I found that something is not right in the mail adapter, because it is not writing the relevant reply-to attributes to the mail message.
Some of you has any idea about it?
Thank you in advance.
waldemar roberti
Edited by: Waldemar Roberti on May 5, 2011 5:02 PMSatish,
Actually (for testing purposes) I have the email roberti at mycompany.com set in all fields of receiver mail adapter mail attributes (from, to, cc and bcc). I turned all of them on and of and analysed the result. It seems that the information whe put on ASMA overloads the information on these mail attributes. But, in mail attributes, we don't have a field for REPLY-TO, just on ASMA we have this field.
So... the problem is in REPLY-TO. It has not been set in mail adapter, even if I set it with dinamic configuration.
thank you.
Waldemar Roberti -
File Receiver Adapter - time stamp in front possible ?
Hi all together,
is it possible with the file receiver adapter to add a time stamp in front of the filename?
f.ex. <timestamp>_SUFFIX.dat
With file creation mode "use timestamp" and file name scheme
SUFFIX_.dat it will create
SUFFIX_<timestamp>.dat .
Thanx a lot for your help
regards
HansHi,
This is not possible in the communication channel, but if you want to add date time stamp on the filename, you can use dynamic configuration. For that you have to write an UDF in the message mapping concatenate the date tme stamp with the filename and extension.
In the communication channel you need to check on the message attributes so that when the adapter framework is called the filename generated in the message mapping would be used by the adapter. In the communication channel remove the filename and put * in the filename, as filename is one of the mandatory parameters in the comm channel.
Regards,
Indranil
Award points if helpful -
Xml file in dynamic file name in file receiver adapter
Hi,
I'm doing the dynamic file name in file receiver adapter. I have done as per instructed in /people/jayakrishnan.nair/blog/2005/06/20/dynamic-file-name-using-xi-30-sp12-part--i
All turned out okay. I have got the file name I require. Except that the file format is XML and I need to suppress the filename node occupied by the dynamic file name.
The content conversion mentioned in /people/sravya.talanki2/blog/2005/08/11/solution-to-the-problem-encountered-using-variable-substitution-with-xi-sp12, does not seem to solve my problem. As it is only for file format other than the XML one, because we only do the content conversion if we want to "convert" the format of the content from XML to the other format.
Does anybody have the solution to my problem? thanks in advanceThank you Raj for the direction
The way to do it is :
1. In ID, advanced tab, put a check on the adapter-specific message attributes - file name.
2. Put a "*" on the file name scheme
3. In IR, create a UDF to set up target file name :
DynamicConfiguration conf = (DynamicConfiguration) container
.getTransformationParameters()
.get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
// set up file name for receiver adapter
String SourceFileName = conf.get(key);
conf.put(key, TargetFileName);
return " ";
4. Map the above UDF to the header level of the target structure.
Regards,
Idi -
Configuring a Seeburger FTP Receiver Adapter
Hello,
I am trying to build a scenario where SAP ECC 6 sends an invoice to a customer via EDI.
We are using ECC 6.0 and PI 7.0 and the Generic Seeburger EDI Adapters. The VAN is a GEIS EDISWITCH VAN (Eircom in Ireland).
I am able to successfully send an IDoc from ECC 6 and into PI where a Seeburger map converts the message to EDI-XML format. I can use a file adapter to create a file in normal EDI format. But I can't get the Seeburger FTP adapter to work with the VAN.
I have configured the correct IP, port, username and password but I keep getting the following message when the communication channel tries to send the message:
<h6>Message processing failed. Cause: javax.resource.ResourceException: Fatal exception: com.sap.aii.af.ra.cci.XIRecoverableException: >> Description: com.seeburger.jftp.app.exception.FtpExceptionSoftProcessingError: Unexpected reply: 501-Syntax errors in parameter. usage: %[recipient id]%[APRF] where either [recipient] or [APRF] can be omitted. (to change your current default SEND relationship). %% (places you in your 'HOME' TR). &['s'|'single'] ('get' command gets single file). &['m'|'multiple'] ('get' command gets multiple files). >> </h6>
The FTP session is expecting a PUT command with the recipient id and APRF as parameters but these are not getting passed. I suspect this is because I am not passing the correct variables to the receiver adapter but I don't know what variables it expects and where they should be specified. And I can't find the answers in the documentation.
Can anyone shed some light on what I need to do?
Thanks,
BenHi Prateek,
Thanks for your comments. The channel is set to GEIS(GeMarkIII). There is nowhere to specify a directory or filename. The settings I have used are as follows:
Adapter Type: FTP (http://seeburger.com/xi)
Receiver
Transport Protocol: FTP
Message Protocol: GEIS/GeMarkIII
Adapter Engine: Integration Server
Host name: <IP address of VAN server>
port: 21
User Id: <Our mailbox number>
Password: <Correct password>
Host path/VAN Partner ID: <blank>
Script file: <blank>
Transfer type: ASCII
Connection mode: Passive
Use keep alive: <Not checked>
Security Mode: None
Proxy Mode: none
Resource ID: <blank>
Deliver transmission report: <not checked>
Payload mode: Attachment
Attachment ID: SeeburgerMain
Channel status: Active
Use dynamic attributes: <Checked>
Use non-empty attributes: <Checked>
Request displayed report: <Not checked>
Request dispatched report: <Not checked>
Report timeout (minutes): 720
Handle received reports: Refer reports to XI system
There is nowhere in the communication channel configuration that allows me to specify the receiver ID or the APRF. The documentation say this is read from the EDI data and the relevant fields are populated.
Any ideas?
Thanks,
Ben -
How to pass dynamic filename to Receiver JMS channel
Hi experts,
I want to pass the dynamic filename to receiver JMS message Properties.
for example
I am passing directory name via adapter module AF_Modules/DynamicConfigurationBean with key and value combination like below. How to pass dynamic filename value to a dynamic property ( say DCJMSMessageProperty1)
eg.
key.0 - >insert http://sap.com/xi/XI/System/JMS DCJMSMessageProperty0
value.0 - > testdirectory ( which is static value)
Note: Im have not created any ESR object . i just have to bypass the file to a jms queue. I have used AAE integrated configuration scenario ( file to jms )
Regards,
Balaji
Edited by: Balaji Pichaimuthu on Jan 27, 2011 4:45 PM
Edited by: Balaji Pichaimuthu on Jan 27, 2011 4:46 PMAlready given link for the dynamic configuration code snippet in the earlier reply... Below is the code snippet
Note: Use Adapter Specific Message Attributes for the target Communication Channel(CC).Check the indicator for filename in the advanced tab of CC
//UDF code
String filename="";
String NameSpace = "http:/"+"/sap.com/xi/XI/System/JMS";
try{
DynamicConfiguration conf = (DynamicConfiguration) param.get(
StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "FileName");
// read filename value
filename = conf.get(key);
// So far we extracted filename value .. now do your logic something like this...
DynamicConfigurationKey key2 = DynamicConfigurationKey.create(NameSpace,"yourjmsvalue goes here");
conf.put(key2,filename);
} catch(Exception e){ -
Hi...
I have a sender file adapter and HTTP receiver adapter.
In HTTP adapter, in the parameter "ent-filename" , I want to retain the name of the file that was picked.
In Sender File adapter, I have checked the File Name under Adapter specific message attributes.
In the HTTP receiver , I tried putting the value for ent-filename as %FileName% .
When I check in sxmb_moni, it shows me the ent-filename = %FileName%, but not the actual file name.
Kindly help!
Thanks,
Pratibha.Here is a blog how to provide the HTTP header fields:
/people/william.li/blog/2006/04/18/dynamic-configuration-of-some-communication-channel-parameters-using-message-mapping
If you do not want to write a UDF, you can do it like described in that blog:
/people/stefan.grube/blog/2009/06/19/unknown-use-case-of-dynamicconfigurationbean-store-file-name-to-jms-header-without-mapping
Put the modules in sender channel and use the parameters of HTTP adapter. -
Use of SOAP Receiver Adapter in a recursive way with dynamic Target URLs
Hi all,
I have a following scenario.
1. I have to call a webservice with a URL http://myserver.com/default.aspx?action=index
This will return a list of xml filenames as below
<?xml version="1.0" encoding="UTF-8"?>
<filelist>
<file uuid="test1" />
<file uuid="test2" />
<file uuid="test3" />
<file uuid="test4" />
</filelist>
2. Now I have to call the same webservice with a change in action so that the url looks like
URL - http://myserver.com/default.aspx?action=fetch&uuid=
for all the filenames in the list
So in essence, I have to create a dynamic URLs recursively like
http://myserver.com/default.aspx?action=fetch&uuid=test1
http://myserver.com/default.aspx?action=fetch&uuid=test2 and so on
3. And with each call to the URL in step 2, the incoming xml is to be mapped to an IDoc.
I will be creating a ABAP proxy to initiate the calls.
I would like some ideas so as to have a less complex approach to the solution.
Regards,
NeerajHi,
dynamic SOAP URL - adapter specific properties (http receiver adapter)
Dynamic configuration payload - https://media.sdn.sap.com/javadocs/NW04/SPS15/pi/com/sap/aii/mapping/api/DynamicConfiguration.html
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get
(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/SOAP","THeaderSOAPACTION");
String a = http://something.abcd/applicationName/xmlMessage //set the value of actual action here
conf.put(key, a);
return "";
Maybe you are looking for
-
Sharing More than One Movie with iDVD????
Okay.. I would like to know if there is another way to burn MORE than one movie an iDVD project. It seems that sending the movie straight to iDVD creates it's own project, and when you try to send another movie, it creates a completely different proj
-
I want to install Firefox 8.0 on my computer. I'm located in Sweden and I only get the Swedish version offered when I follow the download link. I've tried to search for other language versions, but I can't find any links to alternative downloads.
-
How to know last login in oracle database 9i
hi all, I want to know the last login in oracle database 9i. Can some one help me. Thanks
-
Which MacBook Pro should I get?
I'm gonna do it. Question is, which one? The 1.83 is $500 cheaper, which leaves some extra $$ for upgrading RAM, and going with the 100 GB 7200 rpm HD. I'm guessing the performance difference between the 1.83 and the 2.0 would be negligible. However,
-
Why do PDF files in email open in safari with a quick time logo but only one page shows and I can't scroll through the following pages?