User defined message search on Archived messages in PI 7.31
Hello Experts,
We are using XMLDAS to archive the messages of the adapter engine into a file system.
User defined search is working fine for the messages in the database, based on the UDMS criteria, in database tab of message monitoring. And as per SAP, "Extracted attributes are archived together with the message and could be used for searching".
But for us,once the messages are archived into a file system, the UDMS criteria is not working from the archive tab in message monitor.We are able to retrieve the messages in the archive tab based on the message id and also the payload content from it but not using UDMS.
Please let us know if we need to do any specific configuration for the UDMS criteria to work on archived messages as well.
Regards,
Ram
Hello Michael,
Please check following links for configuration and re-check.
PI 7.3 – Adapter User-Defined Message Search without TREX
Configuring User-Defined Message Search - Advanced Adapter Engine - SAP Library
Also I believe you are searching for new / fresh messages after you configured UDMS. I believe it will not show up old message list prior to UDMS config.
Hope it helps
Regards,
Azhar
Similar Messages
-
User Defined message search on archived messags
hi all,
Am not able to retrieve search result in archived messages when using user defined message search. any idea ?
tx
mikeHello Michael,
Please check following links for configuration and re-check.
PI 7.3 – Adapter User-Defined Message Search without TREX
Configuring User-Defined Message Search - Advanced Adapter Engine - SAP Library
Also I believe you are searching for new / fresh messages after you configured UDMS. I believe it will not show up old message list prior to UDMS config.
Hope it helps
Regards,
Azhar -
User defined function in java for message mapping
I wrote the following user defined function in java for message mapping and mapped vendor with this. The aim of this function is to write a error file at defined path when i send empty Vendor value from File to RFC-Function module BAPI_PO_CREATE. The "err.txt" error file is not written when i execute in TEST but the value "ERROR" is returned to destination Vendor Field.
public String validation(String a, Container container) {
//write your code here
if (a.equals("")) {
try {
String source = "Vendor cannot be empty";
char buffer[] = new char[source.length()];
source.getChars(0, source.length(), buffer, 0);
for (int i = 0; i < buffer.length; i +=2)
f0.write(buffer<i>);
f0.close();
FileWriter f1 = new FileWriter("/10.10.0.55/sapmnt/trans/edixiin/err.txt");
f1.write(buffer);
f1.close();
catch (IOException e) {}
return "ERROR";Hi Senthil,
Check these things :
1) Whether you have permission to create a file in that directory.
2) try giving this
10.10.0.55
sapmnt
trans
edixiin
err.txt
3) Also check for permissions.
Hope this will help you.
Regards
Suraj -
Sequence ID search in archived messages
Hi All,
I was looking to see if the sequence ID search will work on archived messages? I don't see any technical attributes section for extended search in archived messages tab in message monitoring of PO 7.4 SP6. Any idea?
thx
mike>>>I was looking to see if the sequence ID search will work on archived messages.
If i go with the help documentation, I don't think that is possible. (In fact i don't see any other option other than Correlation ID under filters, i'm on SP08)
Advanced Message Search - Advanced Adapter Engine - SAP Library
Technical Attributes
Searching by technical attributes is possible only for the messages displayed in the Database tab. It allows you to find messages whose header contains information about a specific error category, quality of service, IDoc number, IDoc type, IDoc message type, protocol, transport, and many other technical details. You can also search for a message using Correlation ID. You can also use individual elements of Correlation ID like Interchange Number,Sender ID and Receiver ID as search parameters when using the advanced message search. For more information, see Searching EDI Messages using Correlation ID
Note You can use Correlation ID as a search parameter in the Archive database to search archived messages. -
User-defined F4 Search - cancel button in the title bar
Hi,
I implement user-defined F4 search for my WD application. F4 view comes from another component (as described in the tutorial). Everything is fine, I see that view popuped when F4 is clicked for an input field. My problem is, how to make visible the Close button in the title bar of that popup window.
I was able to set window's title text, but have no idea how to control those buttons. I only see maximize button which comes by default.
Also would be nice to create kind of standard OK and Cancel buttons on the bottom bar instead of creating them manually on my view... I've tried set_button_kind(), it works somehow: displayes three empty buttons without icons - need more info about it too...
ThanksHi Serguei,
The empty buttons are worth a ticket.
The behavior for the close button in popups is that the application developer can determine its visibility independent from the buttons in the lower row.
The second aspect is the action that is triggered if someone clicks that button. There the application developer is able to bind a separate action to that close button. If no action was bound and if a cancel button is visible, clicking the close button will trigger the same action as it would have been the case for the cancel button. A bit complicated, I know. We had to do the latter for backwards compatibility.
Best regards,
Thomas -
User Defined activity does not log messages
I have created a User Defined activity which calls a unix shell script.
This script writes messages to standrard output ("echo") that I want
the process flow to catch in its log, so I can see the messages in
Control Center Manager.
This was actually the behaviour of my User Defined activity until recently.
I must have changed, unintentionally, some parameter/configuration that
I cannot remember. Maybe some "suppress script-messages" parameter? :-)
Anyone in this forum who knows which paramater I might have changed
and/or how I can get back the old behaviour of my activity?
// PontusI had the same experience recently: I was trying to log a message to a Unix file, but the process flow would always fail, even though the script executed well from the Unix prompt.
The problem in my case was that redirection is not supported from within an OWB version 9.0.4 process flow. Once I eliminated the "echo My message > logfile" everything was fine. You can even keep "echo My message" with no redirection and it's still ok.
The above holds regardless of where you put your script -- external Unix file, or as part of an "external process" icon in the flow.
If things are the same in your case, you'll need to figure out an alternative way of logging messages when executing the script. I decided to use external files as flags, by renaming them from the script.
Santiago -
Issue in user defined payload search.
Hi Experts,
I tried to configure the payload search in SAP PI 7.1 EHP1 ; I followed the guides given in the links given below. After following every step, I am able to view till the last step but I am not able to get any output.
After I define filter, extractors and prefixes; the filter becomes active. Now if I try to search with the message id I am able to find the values which I required are extracted (as expected). But when I try the same in SXI_MONITOR there is no result. I end up in getting no message available for selection window. I tried every variation which was prescribed in this websites which helped me fine tune my filter but still the error is very much present.
Could you help me in solving this and throw light on why the test extractor is working but user-defined selection criteria is not working.
I am using this in lower environment only.
Links referred:
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/803b22cf-ad75-2f10-0790-da055f2e8c0e?overridelayout=true
http://help.sap.com/saphelp_nwpi711/helpdata/en/48/c85598f63335bfe10000000a42189d/content.htm
http://scn.sap.com/people/niki.scaglione2/blog/2010/02/22/payload-searching-without-trex
regards,
Bharathhi barath,
Extract during message processing will work for the messages that went through PI after this configuration has been done and it will not work for older messages.
Extract with External batch job will apply this filter for older messages as well. Bit for achieving this you have to run batch job for program “SXMS_EXTRACT_MESSAGES”.
We need to run the job for program “SXMS_EXTRACT_MESSAGES”. In SE38 we need to give this program name execute the program and give the date and time.
after we need to check the messages in SXMB_MONI.
Regards,
Rajendar K -
Serching Archived messages -sxmb_moni
Dear All
i have archived messages in SAP PI and i need to know how to search archived messages in XI.. we need to search messages in allready archived ..please let me know if we can serach messgaes through SXMB_MONI ..it is dificult to serch messages by going through one by one ..
Regards
BudhikeHi Budhike,
Yes its possible and we 2 possible search features to search for Archived messages.
using SXMB_MONI
Archived XML messages(Search using Archive)
Arhcived XML messages (using ID)
Using an archive - Mostly Date wise
Using a message ID - Either Message ID or Pipeline ID
Refer to below SAP Help link that brief on the concept and steps
http://help.sap.com/saphelp_nwpi711/helpdata/en/41/b715045ffc11d5b3ea0050da403d6a/frameset.htm
Regards
Sekhar
Edited by: sekhar on Feb 10, 2010 6:06 AM -
LDAP search cannot find entry by user "defined attribute" or "sounds like
Hi, I have an JSP program that searches an LDAP Sun One Directory Server.
All of my search filters ( by givenname,sn,mail and phone #) work fine with the search base set at the very top (root ) of my DIT tree.
However with the same search base, searching by an "User Defined Attribute" fails to return anything (and note that my search filter includes the objectclass that goes with this user defined attribute)?
Yet, if I change the search base so it points all the way down the DIT tree (maybe near RDN?), the "User Defined Attribute" search works fine ?
Additionally, "sounds like" search filter (givenname~=) fails to find anything at
the upper root search base of DIT. If I change the search base to point down in the DIT tree as I did above, the "sounds like" filter will work?
I've tried everything I know?Hi Dora9,
Thanks for your reply.
I am glad that you have solved the problem and thanks for your share us the solution
here, so it would be helpful for other members who get the same issue
and we will close this case.
In addition, I suggest you could try to get
the issue confirmed and diagnose by product team. Would you please create connect report for it? You will get email notification for update from the product team experts:
http://connect.microsoft.com/VisualStudio/feedback/CreateFeedback.aspx,
if you submit it, you could share us the link here, so we could know the latest information from the Product team expert. And I will help you to vote it.
Thanks for your understanding.
Best Regards,
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Need help with user defined function
Hello SDN,
I need some help with a user-defined function. My source message contains multiple
generic records (1000 char string), and my target message is 1 header record,
then multiple generic records. See description of source and target messages below:
Source:
GenericRecordTable 1..unbounded
Row (1000 char string)
Target:
Field1 (char5)
Field2 (char5)
Field3 (char5)
IT_Data
GenericRecordTable 1..unbounded
Row (1000 char string)
Basically, what I need to do in my user defined funtion is to map the first record
in my source record to the 3 header fields, then map all of the rest of the records
(starting from line 2) into the GenericRecordTable.
Can someone please help me with the code for the user defined function(s) for this
mapping?
Thank you.hi,
Activities
1. To create a new user-defined function, in the data-flow editor, choose Create New Function (This
graphic is explained in the accompanying text), which is located on the lower left-hand side of the
screen. In the menu, choose Simple Function or Advanced Function.
2. In the window that appears, specify the attributes of the new function:
Name
Technical name of the function. The name is displayed in the function chooser and on the data-flow
object.
Description
Description of how the function is used.
Cache
Function type (see above)
Argument Count
In this table, you specify the number of input values the function can process, and name them. All
functions are of type String.
3. In the window that appears, you can create Java source code:
a. You can import Java packages to your methods from the Imports input field, by specifying them
separated by a comma or semi-colon:
You do not need to import the packages java.lang., java.util., java.io., and java.lang.reflect. since
all message mappings require these packages and therefore import them. You should be able to
access standard JDK and J2EE packages of the SAP Web Application Server by simply specifying the
package under Import. In other words, you do not have to import it as an archive into the Integration
Repository. You can also access classes of the SAP XML Toolkit, the SAP Java Connector, and the
SAP Logging Service (see also: Runtime Environment (Java-Mappings)).
In addition to the standard packages, you can also specify Java packages that you have imported as
archives and that are located in the same, or in an underlying software component version as the
message mapping.
b. Create your Java source text in the editor window or copy source text from another editor.
4. Confirm with Save and Close.
5. User-defined functions are limited to the message mapping in which you created the function. To
save the new function, save the message mapping.
6. To test the function, use the test environment.
The new function is now visible in the User-Defined function category. When you select this category,
a corresponding button is displayed in the function chooser pushbutton bar. To edit, delete, or add the
function to the data-flow editor, choose the arrow next to the button and select from the list box
displayed.
http://help.sap.com/saphelp_nw04/helpdata/en/d9/718e40496f6f1de10000000a1550b0/content.htm
http://java.sun.com/j2se/1.5.0/docs/api/
/people/krishna.moorthyp/blog/2006/07/29/documentation-html-editor-in-xi
/people/sap.user72/blog/2006/02/06/xi-mapping-tool-exports
http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
UDF -
http://help.sap.com/saphelp_nw04/helpdata/en/22/e127f28b572243b4324879c6bf05a0/content.htm
Regards -
Confirmation of User defined fields on CO11N
Dear All,
Can anybody tell me how to confirm user defined field during operation confirmation of an order. I have created a user field key and assigned in the operation detail screen in routing. Is it required to include a freely defined screen for CO11N in customizing or any other setting is there.
Thanks in advance for your valuable inputs.
Regards,
Uday Parchure<b>Define Customer-Specific Detail Areas for Single Screen Entry</b>The following enhancement is available for production orders:
CONFPP07 define detail areas for single screen entry
With this enhancement you can define your own detail areas (screens), which can be issued for single screen entry of time ticket confirmations.
Enhancement CONFPP07 contains the following enhancement components:
Function module exits
EXIT_SAPLCORU_S_100 Transfer data from SAPLCORU_S to customer-defined screen
EXIT_SAPLCORU_S_101 Return data from customer-defined screen to SAPLCORU_S
Display documentation
Screen areas
Screen areas that you can define yourself are available.
Activities
1. Create the enhancement
To do so, create a new project, or use an existing project.
2. Activate the project.
Your enehancement only takes effect after you have activated it.
Further Notes
Enhancememnts, as opposed to modifications, are fundamentally independent of releases since they are not made in the SAP original, but in a name space that is reserved for customers.
you have to create a customer defined screen and attach as in the link. Add the Freely definable detail screen in OPK0. Confirm the user defined fields.
Regards
MSR
Message was edited by:
Soundararajan Murugesan
Message was edited by:
Soundararajan Murugesan -
InvocationTargetException in User Defined Function in Oracle CEP
I was trying to use a UDF in my CQL query. But I got the following error:
An InvocationTargetException was encountered while attempting to register the user defined function
"mymod". The message was: null
My code snippet is bellow:
Bean:
package com.bea.wlevs.example.function;
import com.bea.wlevs.oracle.ci.event.CiMessages;
public class UpdateMessage {
public CiMessages addChannel(CiMessages cm, String channel){
System.out.println("I am in function");
cm.setChannel(channel);
return cm;
config.xml:
<processor>
<name>CiRuleEngine</name>
<rules>
<query id="filterRule"> <![CDATA[ select addChannel(*,"SMSData") from DCInputChannel[now] as dc ]]> </query>
</rules>
</processor>
content.xml:
<wlevs:processor id="CiRuleEngine">
<wlevs:listener ref="IntermediateChannel" />
<wlevs:function function-name="mymod" exec-method="addCHannel">
<bean class="com.bea.wlevs.example.function.UpdateMessage"/>
</wlevs:function>
</wlevs:processor>
Can any one help me to resolve this error?The asterisk * in invocation addChannel(*,"SMSData") does not mean the event object. This is the cause of the exception.
For your case, it's much easier to implement a userbean to do the insertion of the channel.
Thanks
Junger -
Hi.
Is there any way that I can add a user defined HTTP header when posting messages
to a servlet?
I tried the following --
URL url = new URL("http://localhost:7001/ebXML/receiver");
HttpURLConnection urlc = (HttpURLConnection)url.openConnection();
urlc.setRequestMethod("POST");
urlc.setDoOutput(true);
FileInputStream in = new FileInputStream("ebxml.xml");
byte[] buf = new byte[8192];
buflen = in.read(buf);
System.out.println("len="+buflen);
urlc.setRequestProperty("Content-length", (new Integer(buflen)).toString());
urlc.setRequestProperty("Content-type",
"multipart/related; type=text/xml; boundary=\"BEA-EBXML-Boundary\"; version=1.0");
urlc.setRequestProperty("SOAPAction", "ebXML");
At the receiving side, the servlet uses
HttpServletRequest.getHeaderNames() to get all the headers.
The Content-type and the Content-length headers are shown up properly; however
the "SOAPAction" header is missing.
I tried to put "X-" in front of "SOAPAction". Then, it got through. It seems to
me that our Servlet Container has filtered out user defined headers if they are
not started with "X-".
How can I work around this problem? The ebXML TRP spec specified that the "SOAPAction"
header must be in the HTTP header and I can not change the name to be "X-SOAPAction".
Weird. I use 6.1sp1 and this works as expected. Here is a small test
(app does pretty much the same):
test.jsp:
<%
Enumeration e = request.getHeaderNames();
while(e.hasMoreElements()) {
String name= (String)e.nextElement();
out.println(name + " = " + request.getHeader(name));
%>
Test.java:
import java.io.*;
import java.net.*;
public class Test {
public static void main(String[] args) {
try {
URL url = new URL("http://localhost:7001/test.jsp");
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("Content-type", "some/xml");
conn.setRequestProperty("SOAPAction", "foo:bar");
OutputStream out = conn.getOutputStream();
byte[] data = "Hello, World!".getBytes();
out.write(data);
out.close();
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while((line = in.readLine()) != null) {
System.out.println(line);
} catch(Throwable oops) {
oops.printStackTrace();
# java Test
Content-type = some/xml
SOAPAction = foo:bar
User-Agent = Java1.3.1
Host = localhost:7001
Accept = text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection = keep-alive
Content-length = 13
> Dimitri Rakitine <[email protected]> wrote:
>>Hrm. Unless you use some internal WebLogic version this should
>>work (And it does work as expected - using both 5.1sp10 and 6.1sp1 -
>>
>>SoapAction gets to the servlet just fine).
>>
> I do use WLS 6.1 sp1 release version. I also find out another application using
> java mail to post a request on the same servlet can have any user defined header
> in the HTTP header.
> So, I guess the problem is at the sending side. Have you tried to use the same
> mechanism (HttpURLConnection) I was using to send the HTTP request?
> Thanks!
> Yuhua
>>Yuhua <[email protected]> wrote:
>>
>>> Hi.
>>
>>> Is there any way that I can add a user defined HTTP header when posting
>>messages
>>> to a servlet?
>>
>>> I tried the following --
>>
>>> URL url = new URL("http://localhost:7001/ebXML/receiver");
>>> HttpURLConnection urlc = (HttpURLConnection)url.openConnection();
>>> urlc.setRequestMethod("POST");
>>> urlc.setDoOutput(true);
>>
>>> FileInputStream in = new FileInputStream("ebxml.xml");
>>> byte[] buf = new byte[8192];
>>> buflen = in.read(buf);
>>> System.out.println("len="+buflen);
>>
>>> urlc.setRequestProperty("Content-length", (new Integer(buflen)).toString());
>>> urlc.setRequestProperty("Content-type",
>>> "multipart/related; type=text/xml; boundary=\"BEA-EBXML-Boundary\";
>>version=1.0");
>>> urlc.setRequestProperty("SOAPAction", "ebXML");
>>
>>> ;;;;;;;;;;;;
>>> At the receiving side, the servlet uses
>>> HttpServletRequest.getHeaderNames() to get all the headers.
>>> The Content-type and the Content-length headers are shown up properly;
>>however
>>> the "SOAPAction" header is missing.
>>
>>> I tried to put "X-" in front of "SOAPAction". Then, it got through.
>>It seems to
>>> me that our Servlet Container has filtered out user defined headers
>>if they are
>>> not started with "X-".
>>
>>> How can I work around this problem? The ebXML TRP spec specified that
>>the "SOAPAction"
>>> header must be in the HTTP header and I can not change the name to
>>be "X-SOAPAction".
>>
>>
>>
>>
>>--
>>Dimitri
Dimitri
-
User-Defined Message Search - PI 7.1 - EHP1 - SP06 - Not working
Hi Friends,
Recently, we have imported SP06 in our PI system (PI 7.1 EHP1). The SXMB_MONI has now new tab "User-Defined Selection Criteria".
To implement user-defined search, I have created filer, extractor, namespace prefix for one outbound interface through transaction SXMS_LMS_CONF. (As it is explained in SAP EHP1 features PDF and the link "http://help.sap.com/saphelp_nwpi711/helpdata/en/48/c85598f63335bfe10000000a42189d/frameset.htm".
Also we have created logical port through transaction SOAMANAGER. (followed the steps as mentioned in PDF)
After filters, extractor, namespace prefix created and activated, I have checked the extractor through Test Extractor, it is working fine. (All are green, given below is the output)
Type
Message text
Processing message 4DDFE95BAEC67152E10000009958A8AB
Analyzing payload of message version 000
No filter found
Analyzing payload of message version 004
Filter found for interface name PROACT.PROACT01
Name MATERIAL_ID value RPM312AZ/11522R1 extracted
Analyzing payload of message version 005
No filter found
Analyzing payload of message version 008
No filter found
Now, when I do search the same through SXMB_MONI, by giving inputs in the new tab "User-Defined Selection Criteria", Option button "Search for all" , selected the filter name "MATERIAL_ID" in the input field:Name and put material name in the in the input field:value. (same material I put), it shows the message "No message is available for selection".
Friends, could you kindly clarify why I am unable to search through SXMB_MONI? Am I missed any of the steps?
Kindly reply.
Kind regards,
Jegathees P.Were you able to resolve the issue ?
If not, You need to execute program SXMS_EXTRACT_MESSAGES to build index for the user defined search from the old messages.
The job bulids index from the already processed messages.
Choose the relevant Method when creating the extractor
Method
You can choose between two methods:
Extract During Message Processing
Select this method if you want the attributes to be extracted from the selected messages while these messages are processed.
Extract with External Job
Select this method if you want to extract attributes from messages that were already processed, or if you want to change the extraction of attributes from messages, from which attributes were already extracted.
For this method you need to set up and use the job SXMS_EXTRACT_MESSAGES.
thanks
VJ -
Performance restrictions using User-Defined Message Search in PI 7.1 EhP1
Hi Gurus,
We want to apply the User-Defined Message Search in our productive system.
We also want to set the extractors to run during Message Processing .
Do you have any inputs on how this might affect the system performance?
Any best practices, previous experiences or thoughts on that?
Some of my questions:
How many Filters/Extractors would be a limit to not affect too much the messaging processing performance?
Running the extractors during message processing would greatly affect the performance? When to run the extractors in a batch job instead of runtime?
Any input is greatly appreciated.
Regards,
José OmarHi José ,
We are also planning to use User-Defined Search feature in our PI system. Could you please let me know whether or not were you able to use this in your PI productive environment?
Additionally , if you were able to use it can you please let me know the performance?
Thanks in advance
Edited by: Ravindra Hegde on Jun 3, 2011 11:26 AM
Maybe you are looking for
-
Hi there. I discovered today what is the reason for the strange problem I've been having with FCP X from 10.0.2+. The problem was that I just couldn't use it: I couldn't see any media in the canvas/preview pane, no matter if it was video, jpgs, psds,
-
How do I create a group in my contacts so I can send an email to several people without having to type names individually? In gmail on my computer I have several groups of contacts but I don't see them on my iPad air.
-
Hi even though I have acitivated the pop up blocker I get pop ups. Why? How can I change it? Thanks for any help Andrea
-
Can ne 1 answer this interesting question!!! ?
Hi, I have the name of the method in a String format. I want this information to get evaluated as a method/function. How can I do that? For example, I have a string named "setName" and another string "str". I want this information to get evaluated as
-
I have the Lumia 635, Windows Phone 8.1. I just purchased it less than a week ago. The internet does not work unless it's on WiFi... I purchased the $60 a month plan so I would have 4 GB of data and now I can't even use it...