Strange timestamp-format in Dynamic Configuration
Hi all,
In the Dynamic Configuration Section I can retrieve the name and timestamp of the inputfile I use. But the timestamp is in a format I don't quite understand.
For instance, the last changedate of the inputfile is 24-06-2008, 10:58. In the Dynamic Configuration section I find the timestamp "20080624T035800Z". There seems to be a difference of 5 hours here, and I have no idea what the "Z" on the last position means.
How can I convert this timestamp from the Dyn.Conf. to the actual timestamp?
Thanks,
William
You can use subString to get the desired output.
There is no such Java Function available for you.
even TimeStamp differs your output
function myudf(String a, Container container)
//input is yyyymmddThhmmssZ
String year=a.subString(0,4);
String mon=a.subString(4,2);
String date=a.subString(6,2);
String hour=a.subString(9,2);
String min=a.subString(11,2);
String sec=a.subString(13,2);
// output is dd-mm-yyyy hh:mm:ss
String ret=date"-"mon"-"year" "hour":"min":"+sec;
return ret;
Similar Messages
-
Dynamic configuration in ABAP tables
Hi,
is there any ABAP table in XI containing the dynamic configuration's xml of a message (or an equivalent information in any format)?
Thanks,
Danielehi
Dynamic configurations will be a part of the xi message header
chk these tables
1.SXMSPMAST: (Integration Engine: Message Queue (Master)) The table is the master table for the monitoring information. You can get the timestamp, interface status, message id, and many more information.
2.SXMSPEMAS: (Integration Engine: Enhanced Message Queue (Master)) The table provides the namespaces, the business systems and message interfaces involved in the interface.
3.SXMSMSTATT: (Exchange Infrastructure: Message Status Description) This table provides a message status description.
4.SXMSMSTAT: (Exchange Infrastructure: Message Status) This table is helpful if you want to show the process status icon for the corresponding message state.
refer this for code sample
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/909760cb-0ec8-2a10-4a96-ee8417acfbc9
rgds
arun -
Dynamic Configuration Parameters - FileName
Hi to ALL.
I have a File(EDI) to File(XML) scenario and I use seeburger . I want to get the source file timestamp . I made UDF with dynamic configuration and actived parameters on sender channel. (Source file timeStamp)
My problem is the I can't get the value because the configuration with seeburguer use the channel split (EDI).
On sxi_monitor I see two records one is for Functional Acknow. and the other is for the interface.
On the first record I see the value but in the second ( when the mapping is procesing) the dynamic value refill with anothers values from Seeburger.(file converted to XML)
I get this values from dynamic configuration ()
SAP:Record namespace="http://seeburger.com/xi/Split997" name="maxSplitNumber">1</SAP:Record>
<SAP:Record namespace="http://seeburger.com/xi/Split997" name="splitSender">YYYYY</SAP:Record>
<SAP:Record namespace="http://seeburger.com/xi/Split997" name="splitState">ACCEPTED</SAP:Record>
<SAP:Record namespace="http://seeburger.com/xi/Split997" name="splitMapping">XXX_E2X_ANSIX12_XXXX</SAP:Record>
<SAP:Record namespace="http://seeburger.com/xi/Split997" name="actSplitNumber">1</SAP:Record>
</SAP:DynamicConfiguration>Hi Luis,
you can use the parameter "attributeCopyList" with the Splitter Module
With this parameter you can copy Dynamic Attributes across to your new channel.
For example, if you want to copy the attribute "test1" with the namespace "http://sap.com/xi/test",
the value for attributeCopy List is "http://sap.com/xi/test/test1"
So your module chain might look like this:
ModuleKey: splitter
ParameterName: attributeCopyList
ParameterValue: http://sap.com/xi/test/test1
Each new "Split-File" will then have the Dynamic Attribute http://sap.com/xi/test with value "test1"
regards,
Daniel -
Dynamic Configuration - Set Directory Path for File Receiver Adapter
Hi Experts,
I have a question regarding the dynamic configuration for the file adapter. Is it possible to set a directory path without a message mapping for the file receiver adapter? the problem is that I want to import a pdf document. this pdf document I want to store in a dynamic directory (depending on the filename). so I have to read the filename out of the dynamic configuration and generate (depending on the filename) a directory for this file. Is that possible without a message mapping? I cannot make a message mapping because the file has the pdf format and should not get changed.
best regards
Christopher KühnHi Gaurav,
I use the ASMA (respectively the filename) for the sender adapter. After the pdf was imported into XI this filename is in the ASMA.
But what then??? How can I get this filename with the help of the variable substitution? and if I have this filename I have to change this filename a bit to generate the name / path of the directory.
Please explain it to me detailled
Thanks and regards
christopher -
Dynamic configuration of Receiver FTP File channel
Hi,
The scenario is sending an IDOC from an R/3 system (using IDOC adapter) to a FTP file system. I want to dynamically configure the filename and the target directory in the following cases
1. With filename and the target directory coming as a part of the source IDOC
structure
2. There is mapping involved (pass thru) and the file name and target directory are
NOT a part of the source IDOC structure.
I have seen blogs which explains the situation using mapping for File-To-File scenario (Not IDOC-To-File scenario) and some blogs explaining for Http adapter and email adapter, but not for the above scenarios for IDOC-To-File Scenarion.
Your input is highly appreciated.
Regards
Ganeshhi
use Varable susbtituion in receiver file adapter
you set the Enable indicator, you can enter variables for the Target Directory and File Name Scheme. Enter the names of the variables and references in the table.
● Enter each variable that you reference in the Target Directory and File Name Scheme fields without the surrounding percentage sign under Name of Variables in the table.
The variables can refer to attributes of the message header or elements of the message payload.
○ If the variables are to refer to an attribute of the message header, add the prefix message: to the name of the variable under Reference. You can specify the following attributes of the message header:
sender_party, sender_service, receiver_party, receiver_service, interface_name, interface_namespace,
message_id (message ID with hyphens, for example 9fbe1ff1-9a0d-11d9-8665-cbf10a126331)
message_id_hex (message ID in hexadecimal format, for example 9fbe1ff19a0d11d98665cbf10a126331)
For example, if you want to specify the interface name from the message header in the target directory or in the file name scheme, enter message:interface_name as the reference.
or look into help
http://help.sap.com/saphelp_nw04/helpdata/en/ae/d03341771b4c0de10000000a1550b0/frameset.htm
please reward points
Thanks
Sreeram.G.Reddy
Message was edited by:
Sreeram Reddy -
Hi,
i am trying to use dynamic configuration variable DCJMSMessageQueue as a condition for determining the receiver within the Receiver Determiniation. I can see the value in the DCJMSMessageQueue, but the condition is not applied.
Have anyone tried to use this variable within the Receiver Determination (SP14)?
Thnx in advance.
Regards, Erik HubersHi Erik,
I'm using JMS Channels and Adapter-specific attributes quite a lot (in my case it's DCJMSCorrelationID).
So far I never had the requirement to use it in conditions in a Receiver Determination, but I set up
a Receiver Determination to test it and it worked with SP15.
Now what was a little strange is that the expression only worked if I set it up in the following way:
DCJMSMessageQueue = queue:///EVENT_EB5331?targetClient=1
where my queue name is solely EVENT_EB5331 (I'm using WebSphere MQ in native mode).
Maybe that solves your problem (I actually copied this value, because it is the way it is written in the DynamicConfiguration
piece of the XI message).
There is another issue I had with the JMS Adapter Specific Attributes in SP14.
The namespace of the attributes was implemented wrong (at least the one for DCJMSCorreleationID). Instead of
'http://sap.com/xi/XI/System/JMS'
it was just 'JMS'.
Now if the condition is - by any reason - evaluated against the correct namespace (the long one)
this could also be a reason why it is not working.
Check the values in the DynamicConfiguration and have a look at the Trace.
You should find something like this in the R E C E I V E R D E T E R M I N A T I O N part of it:
<Trace level="3" type="T">...call rule engine for Condition %CL_SAI_SWF_RULE_ENGINE.MSG_GET_SYSTEM
(MSG=&_MSG&;SYSFIELD="DCJMSMessageQueue";
SYSNSP="http://sap.com/xi/XI/System/JMS")% = queue:///EVENT_EB5331?targetClient=1</Trace>
<Trace level="2" type="T">......attachment XI_Context not found</Trace>
<Trace level="3" type="T">......extracting from attachment: DCJMSMessageQueue =
queue:///EVENT_EB5331?targetClient=1</Trace>
<Trace level="2" type="T">......extracting values found: 1</Trace>
Compare the namespaces there with the one in the DynamicConfiguration.
If there is a mismatch upgrade to SP15 or open an OSS Message.
I hope that helps...
regards,
Peter -
App-V 5.0 SP1 Bug: Dynamic Configuration Registry DWORD values?
While sequencing Google Chrome in App-V 5.0 SP1 I came across an interesting issue.
When setting registry settings using Dynamic Configuration it seems DWORDs are handled strangely.
This is what I am trying to do:
<Key Path="\REGISTRY\Machine\Software\Policies\Google\Chrome">
<Value Type="REG_DWORD" Name="DefaultSearchProviderEnabled" Data="00000001" />
</Key>
This should export to:
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome]
"DefaultSearchProviderEnabled"=dword:00000001
Instead I get an invalid DWORD value which actually looks like a binary value. If I change to:
<Value Type="REG_DWORD" Name="DefaultSearchProviderEnabled" Data="1" />
I get a dword hexadecimal value of 31 or decimal value of 49.
So I played around with the values. I used ! as the value and got a hex 21/decimal 33 back. It seems to me that it follows this standard:
http:// www. klcconsulting. net/images/ascii-full.gif - sorry verification woes :-(
, but in reverse.
The documentation is minimal, so perhaps I am doing something wrong, but there's nothing to the contrary I can find.
Any ideas?What happens if you set the data to "0x00000001"
Please remember to click "Mark as Answer" or "Vote as Helpful" on the post that answers your question (or click "Unmark as Answer" if a marked post does not actually
answer your question). This can be beneficial to other community members reading the thread.
This forum post is my own opinion and does not necessarily reflect the opinion or view of my employer, Microsoft, its employees, or other MVPs.
Twitter:
@stealthpuppy | Blog:
stealthpuppy.com |
The Definitive Guide to Delivering Microsoft Office with App-V -
Getting an error in Dynamic Configuration
Hi Guys,
I need to dynamically post the file into different directories based on the file in the source payload.
In Receiver File Communication Channel
Target Directory : *
Filename : *
Checked the ASMA Attributes for filename and directory
Iam refering this weblog
/people/william.li/blog/2006/04/18/dynamic-configuration-of-some-communication-channel-parameters-using-message-mapping
In the mapping
<filename> ---> UDF --> topnode of target message.
My UDF is as below
public String Directory(String a,Container container){
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "FileName");
DynamicConfigurationKey key1 = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "Directory");
String FileName = conf.get(key);
FileName = a;
conf.put(key, FileName);
String Directory = conf.get(key1);
Directory = "/SAPInterface/XI/PPD/DHX/out";
conf.put(key1, Directory);
return " ";
But in runtime(moni) iam getting error as
com.sap.aii.af.ra.ms.api.MessagingException: The Adapter Message Property 'FileName' was configured as mandatory element, but there is no 'DynamicConfiguration' element in the XI Message header: com.sap.aii.adapter.file.configuration.DynamicConfigurationException: The Adapter Message Property 'FileName' was configured as mandatory element, but there is no 'DynamicConfiguration' element in the XI Message header
Please suggest me how to correct this.
Thanks
SrinivasHi Srinivas,
You said you are having dynamic directories to post the file. But I see you hardcorded or put constant for directory which is /SAPInterface/XI/PPD/DHX/out. I think you need to put //SAPInterface/XI/PPD/DHX/out.
Try this in udf:
public String Directory(String a,Container container){
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "FileName");
DynamicConfigurationKey key1 = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "Directory");
String FileName = conf.get(key);
FileName = a;
conf.put(key, FileName);
Directory = "//SAPInterface/XI/PPD/DHX/out";
conf.put(key1, Directory);
return " ";
Put FileName and Directory in file name and directory paramters in receiver communication cahnnel and cehck.
Regards,
--Satish -
Two FileName in Dynamic Configuration
Hi All,
I have a very rare problem. In an interface which uses BPM, where file is the sender and Proxy is the target,
there is an ABAP Class in the mapping which uses Dyanmic Configuration to retrieve the FileName and create a Proxy structure and posts it to the ECC. In this scenario, Multiple files are picked from different folder using advanced Selection and sent to BPM which uses the ABAP Class.
When i run the interface with 5 different files placed at source, In SXMB_MONI, I can see that after 3 files are processed successfully with a single filename in the Dynamic Configuration, the 4th or the 5th one wil have 2 filenames in the dynamic configuration out of which the first filename will be the copy of the earlier processed filename and the second one wil be the actual required filename. The above behaviour keeps on chainging.
How can this be possible as the Context Object 'FileName' can have only single filename through out the interface instance, as there is no setting of the filename done in dynamic configuration.
Please reply if anyone has a solution to the above problem.
Thanks.Hi Jaideep..
Thanks for the reply.
Yes.. its a serial processing. Let me explain a bit more.
as i said above, after the 3rd BPM instance (Just as an example.. keeps on chainging), the 4th instance has a unique filename compared to before 3. but after processing, the Dynamic Configuration in SXMB_MONI will have 2 fileNames. which will have a copy of any one of the earlier filenames along with actual filename. -
Acces dynamic configuration variable (e.g. filename) in ABAP mapping class
Hi experts
I am searching for a possibility to acces a dynamic configuration variable (DCV) in an ABAP mapping class. Since I could not find a solution in SDN and other sources, I hope somebody in this forum can help me.
What I already found is the following code which can be used to set a DCV, but what I would be interested in is how to read a DCV.
Any help is appreciated.
Markus
METHOD if_mapping~execute.
DATA l_record type mpp_dynamic.
* copy payload
result = source.
* add an adapter specific attribute
l_record-namespace = 'http://sap.com/xi/XI/System/File'.
l_record-name = 'FileName'.
l_record-value = 'test.xml'.
dynamic_configuration->add_record( l_record ).
ENDMETHOD.Hi Markus,
you can find everything in my blogs
/people/michal.krawczyk2/blog/2007/04/26/xipi-throwing-generic-exceptions-from-any-type-of-mapping
Regards,
michal -
Dynamic configuration required in sender file - Adapter Module
Hi Everybody,
I am developing an Adapter Module in the file adapter (sender) using Adapter Specific Message Attributes.
I am using Dynamic configuration inside the Module Process method in the adapter module.
We are getting an error saying Dynamic Configuration cannot be resolved.
Can anybody tell me the package to be used.
Thanks,
ZabiullaYou can access the dynamic configuration in adapter module like this:
Message msg = (Message) inputModuleData.getPrincipalData();
String fileName = msg.getMessageProperty("http://sap.com/xi/XI/System/File", "FileName");
You do not need any addition library besides the adapter module API.
Hope that helps
Stefan -
Dynamic Configuration File Names
Hi,
I have a RFC->XI->File scenario.
I have to put the target files names based on the calculation of values in 2 fields in the input.
I tried using Dynamic Configuration in my message mapping for this.
This is the code:
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create(u201Chttp://sap.com/xi/XI/System/Fileu201D,u201CFileNameu201D);
String MyFileName = a + "_" + b +".xml";
conf.put(key, myFileName);
I checked ASMA in both the sender RFC adapter as well as the receiver file adapter.
But it never works.
I saw the dynamic configuration tab in SXMB_MONI but i can see only the RFC destination parameter.
Cant see the file filename parameter.
What is the problem here?No need enable ASMA on RFC sender adapter.
See if the file channel is activated after selecting ASMA with FileName.
The UDF might not be use in the mapping. Check this.
Edited by: Praveen Gujjeti on Feb 23, 2010 1:05 AM -
IDC File name format - customaize TIMESTAMP format
Hi.
Can we change the default TIMESTAMP format in IDC as we want to deliver the filename as yyyymmddhhmiss.dat?
Is there any provision in Oracle B2B?
Regards
JawahPlease refer -
Re: IDC format - customize TIMESTAMP format
Do not run two parallel threads for the same problem please.
Regards,
Anuj -
File name cant be fetched from Dynamic configuration...mutli-mapping used
In a scenario, i have a BPM which has a transformation step which contains a mutimapping ...means 2 messages mapped to 1 messgaes, here in the mapping i m using an UDF and written code to extract the file name from dynamic configuration.....
the problem is ...the same BPM contains another transformation step which contains a message mapping (which is not multi mapping), and here the code (UDF) works to fetch the file name...
the code is all correct....and it looks like
DynamicConfiguration conf = (DynamicConfiguration)
container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
String sourceFileName = conf.get(key);
if (sourceFileName == null ){
sourceFileName = "ErrorFile.xml";}
return sourceFileName;Hi,
Yes u r correct it will show error in operation mapping.. bcoz u cannot check the DynamicConfiguration in Operation mapping...
It will throw Exception..
The parameter to UDF depends on ur requirement.... Let us know ur requirements exactly...
If u r doing for file to file means no UDF required,, just check ASMA on both sides....
Babu -
Problem in Dynamic Configuration bean
Hi
I am trying to dynamically change the filename using Dynamic Configuration bean with some constant value but target file is having same name as source. In communication channel logs I can see the successul proHi,
M not sure what will be the error with this when u r using dynamic configuration bean.But same functionality can be better achieved by using this dyanamic configuartion UDF :
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File", "FileName");
conf.put(key, a);
return value;
Regards,
Anoop
Maybe you are looking for
-
Stock transfer are not showing correct expire date for Shelf life subcontracting
Hi Gurus, We have shelf life active for PPDS. We had added 5 characteristic to have min and Max shelf life in APO so that data will be considered during pegging. Self life works perfectly fine for production plant where based on manufacture date min
-
Selected element in HtmlSelectOneMenu is not correctly set
Hi, I have multiple dropdown lists in a jsf page. It seems that there is a problem with the generated html regarding the "selected" attribute of the "option" html tag. It does not corresponds to the value of the h:selectOneMenu id ="tests" value="#{t
-
Premiere Elements 6 and 7 - I am trying to burn a DVD. According to the documentation there is supposed to be a Quality slider that appears when you uncheck the "Fit Contents to available space" checkbox. No such slider appears. It does not matter wh
-
Writing int [ ] Array in a file
Hye Can you tell me which Stream I can use to write an Integer Array (defined as int [ 7000]) in a file .txt I want to write as a whole not one by one. Thanks
-
How do I find the song that has been sent to me?