How to get the message ID generated by the PI system during message mapping

Hi All,
I have a file to file scenario, where during the mapping, I want to map and send the Message ID generated by PI.
Can anyone please help me with this?
Kind regards,
Joe

Hi,
You have write UDF for this.
Please see the below code .
java.util.Map map = container.getTransformationParameters();
String MesID = (String)map.get(StreamTransformationConstants.MESSAGE_ID);
return MesID;
Hope this helps to you.
Regards,
P.Rajesh

Similar Messages

  • How to get the storage details during 5 min interval

    Hi,
    I used below java code to collect the storage details. But i didn't get any output. Without filter condition it display all the records available in table. How to get the
    last five min data. Based on this how to change the tablequery.? I used partition key too. that also didnt work.
    1) How to use the tick count in this example.
    CloudStorageAccount httpAcc = CloudStorageAccount.parse(storageConnectionString);
    CloudTableClient tableClient = httpAcc.createCloudTableClient();
    CloudTable table = tableClient.getTableReference("$MetricsHourPrimaryTransactionsTable");
    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
    TimeZone utc = TimeZone.getTimeZone("UTC");
    sdf.setTimeZone(utc);
    String upperBound = TableQuery.generateFilterCondition("TIMESTAMP",QueryComparisons.LESS_THAN,sdf.parse("2015-02-04")); // // sdf.format(cal.getTime())
    System.out.println("call lowertime ->"+upperBound);
    String lowerBound = TableQuery.generateFilterCondition("TIMESTAMP",QueryComparisons.GREATER_THAN,sdf.parse("2015-02-01"));
    System.out.println("call uppertime ->"+lowerBound);
    String filter = TableQuery.combineFilters(upperBound, Operators.AND, lowerBound);
    //String startTick = TableQuery.generateFilterCondition("TIMESTAMP",QueryComparisons.GREATER_THAN,sdf.parse("2015-09-03"));
    //System.out.println("the startTick==="+startTick);
    //String tick = TableQuery.generateFilterCondition("PartitionKey",QueryComparisons.GREATER_THAN,startTick);
    TableQuery<DynamicTableEntity> query = TableQuery.from(DynamicTableEntity.class).where(filter).select(new String[] {"Availability","TotalRequests","PercentSuccess"});
    for (DynamicTableEntity ent : table.execute(query))
    EntityProperty countProp = ent.getProperties().get("Availability");
    if (countProp == null) 
    throw new IllegalArgumentException("Invalid entity, Count property not found!");
    System.out.println(countProp.getValueAsString());
    EntityProperty countProp1 = ent.getProperties().get("TotalRequests");
    System.out.println(countProp1.getValueAsString());
    EntityProperty countProp2 = ent.getProperties().get("PercentSuccess");
    System.out.println(countProp2.getValueAsString());
    Regards,
    Rathidevi
    rathidevi

    checkout this document for secure web application
    http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf6167e-7fff.html    

  • Data aquisition board installation,how to get the operation system know that the board exsist and to give it a number?

    I'm a green hand on hardware. This question is maybe kind of a silly quetsion.
    I already have a data acquisition board installed (built-in) and there is the corresponding program to control it.
    Now I need to install another board to the computer, and make the necessary Vi to control the new board. I'm wondering what should be the procedure like? HOW to get the computer know the new board. Should there be any driving program coming along with the hardware. Or the operation system should get to know the existing of the new hardware once it's installed( i mean plug in). Thank you for your kind reply!

    Hi Fenny,
    What is the model number of the second board? If your existing driver has support for this board (which I'm assuming is a NI board, and it's plug and play), your OS (which I'm assuming is Windows) should recognize it when you start up your computer after installation. You can find out the driver support for your board and OS from the link below. If the installation was successful, you should be able to see the new board in the Measurement and Automation Explorer (MAX) under "Devices and Interfaces". If you can see the board in MAX, there will be a device number assigned to the board, which you can use in your VI to communicate with it.
    If any of the above assumptions is incorrect, please provide some details (i.e. hardware used, driver you currently have installed, OS, and the application you'd like to use this new board for), and we can work from there.
    Data Acquisition (DAQ) Installation/Configuration Troubleshooter
    Thanks,
    Lesley Y.

  • How to get the errors thrown during SwingWorkes-doInBackground-method

    Hi,
    I got an annoying problem.
    I use a SwingWorker to do some operations in background...
    Now it could be, that some of those operations throw an exception...
    but the SwingWorker do not throw those...
    The only exception i get is a final Exception cause of an object who
    wants to display the result of the background activity...
    In detail : a method done in background throws an index out of bounds exception
    but how i can get this error?
    I try to surround the swing worker object with a try and catch for general exceptions but
    this don't work.
    regards
    Olek

    There are two things you can do. First, you might wrap the code in doInBackground() in try/catch. I'd discourage this since it will make your code more complicated. Secondly, if an exception occurs, the SwingWorker will switch its state to 'done'. If you invoke the get() method (even if you're returning null in doInBackground()), an ExecutionException will be risen. Using Exception#getCause(), you will get the original exception that occured, in your case the ArrayIndexOutOfBoundsException.

  • How to get the Portal System details?

    Hi,
    I have a webdynpro application which has links that the user can click and point to various systems. For instance, there is a link for SAP Transaction,. if the user clicks this link, the SAP transaction is opened as a URL.
    Among, these: There is a SAP transaction for BEX Analyzer (RRMXP).A transaction iview has been configured for this BEX ANALyser. I have a <b>link to URL</b> UI element defined in my application. All i need now is the <b>system and host</b> details of the Portal system (EP), where this transaction iview has been configured. Which is the best way to get the system/host/port details of Portal System (EP). Im not talking about backend, nor of the WAS, but the system where Iviews are configured?

    Hi Christian,
    When i tried this, i got <b>2 errors</b>
    cannot resolve symbol
    symbol  : method getProtocolAdapter ()
    location: interface com.sap.tc.webdynpro.services.task.ITask
    String hostName = TaskBinder.<i>getCurrentTask().</i>getProtocolAdapter ().getServerName();
    cannot resolve symbol
    symbol  : method getProtocolAdapter ()
    location: interface com.sap.tc.webdynpro.services.task.ITask
              int port      = TaskBinder.g<i>etCurrentTask</i>().getProtocolAdapter().getServerPort();
    <b>Questions:
    1. Are we missing any jar files?
    2. Does this work for https?</b>

  • How to determine the target system during runtime of a Generic DS?

    Hi Experts, good afternoon.
    I am coding a Generic Extractor using Function Module. I have to select the field TIMESTAMP on table ROOSPRMSC. To do so, I need the value of RLOGSYS that is the BW system that is calling the Extractor.
    Do anybody knows how to determine via ABAP the RLOGSYS (Remote Logical System) during the runtime of the Generic DataSource Function Module?
    The table ROOSPRMSC keep the TIMESTAMPs values of the last delta upload for each DataSource and for each BW target system. As I have 2 BW's loading data from the same SAP ECC system, I need to know, during runtime of my Generic DataSource, the actual system that is requesting the delta. That's the reason why I need to know the BW's logical system name that is "runnig" the delta InfoPackage.
    Plese, help!!!
    Thanks in advance!
    Leandro Vani

    Leandro,
    The calling program of your FM should have a local variable I_RLOGSYS which is populated with the BW server ID.
    If you don't know how to access a variable in a program that is in call stack using field symbols, search SDN.
    I haven't tested this, so you may have to explore a little.
    Good luck.

  • How to get the latest Version of Interface Mapping

    Hi
    I made some changes in IR, and when I am sending the Request...as per Monitor..it is not picking up the latest Interface Mapping Object. I am checking it from Trace in Monitor and then cross checking it with Object Version ID in Repository for Interface Mapping.
    I cleaned all the cache as well (from Design, Config and also from Admin), but still I am seeing old version id.
    Any suggestion....?

    Right now I do not have access to XI system but I remember these are the places you can check.
    Did you go to http://host:5<sysnr>00/rep/start
    There click on the Administration, and log on using XISUPER. Click on Cache and there is a drop down for mapping programs list. Check that out.
    regards
    SKM

  • How to get the DB2 system date in the ODI

    Hello,
    I m new to ODI. And I m having some issues.
    I ve a source in DB2. And I ve to load the data from DB2 to Oracle.
    So in the source(DB2) I ve some tables. One Table is ABCD. In that we have nearly 15 columns. In that we have a column called AG2R(Expiration Date).
    The data is displayed as
    1,021,100
    1,031,100
    1,030,500
    1,100,400
    and so on....
    So here my question is I ve to apply a filter. (AG2R)The Expiration Date should be greater than that of System Date(Current Date).
    Can anyone help me in this.
    Waiting for replies.
    Regards,
    Murali.

    You have to understand what is the format of AG2R column and to cast this column with a valide date format...
    To convert a character string to a date or time value, you can use:
    TIMESTAMP ('2002-10-20-12.00.00.000000')
    TIMESTAMP ('2002-10-20 12:00:00')
         DATE ('2002-10-20')
         DATE ('10/20/2002')
         TIME ('12:00:00')
         TIME ('12.00.00')

  • How to get the return message after running BD20 tranaction ?

    Hi Gurus,
    My requirement is to Post vendor invoice through ALE/IDOC ( Inbound IDOC ).
    - For that I had generated the IDOC using  Function module 'IDOC_INBOUND_WRITE_TO_DB '
    - Then I had processed that generated IDOC by calling the standard program rbdapp01(BD20-Tranaction ) using the below statment
    SUBMIT rbdapp01 WITH SELECTION-TABLE lt_seltab .
    Could any one suggest me how to get the report output of standard program (rbdapp01) to an internal table so that I dispaly as an seperated report like Posted Document number with messages or Error message
    Suggest me any Function module or any other standard program to process the IDOC so that I can fulfill my requirement.
    Regards
    Paul

    Use can read the IDOC status after processing...
    Eg.
      SELECT * FROM edidc INTO TABLE t_idoc_control_tmp
          FOR ALL ENTRIES IN t_update WHERE docnum = t_update-docnum.
    and then add your own logic IF SY_SUBRC EQ 0.
    I hope this will help you.
    Regards,
    Amey

  • In iphoto how to get the gold you delete a photo warning message when you check the box not ask

    in iphoto how to get the gold you delete a photo warning message when you check the box not ask

    Try trash the com.apple.iPhoto.plist file from the HD/Users/ Your Name / library / preferences folder.
    (On 10.7 or later: Hold the option (or alt) key while clicking on the Go menu in Finder to access the User Library)
    (Remember you'll need to reset your User options afterwards. These include minor settings like the window colour and so on. Note: If you've moved your library you'll need to point iPhoto at it again.)
    What's the plist file?
    For new users: Every application on your Mac has an accompanying plist file. It records certain User choices. For instance, in your favourite Word Processor it remembers your choice of Default Font, on your Web Browser is remembers things like your choice of Home Page. It even recalls what windows you had open last if your app allows you to pick up from where you left off last. The iPhoto plist file remembers things like the location of the Library, your choice of background colour, whether you are running a Referenced or Managed Library, what preferences you have for autosplitting events and so on. Trashing the plist file forces the app to generate a new one on the next launch, and this restores things to the Factory Defaults. Hence, if you've changed any of these things you'll need to reset them. If you haven't, then no bother. Trashing the plist file is Mac troubleshooting 101.

  • How to get the number of messages consumed by a MDB ??

    Hi all,
    How to get the number of messages consumed by a MDB displayed in OEM in a Java Application ???
    DMS ??? what use DMS ???
    tanks

    ok.
    Well using DMS is one way to get at these sorts of stats in a programmatic manner.
    There's a Java API you can use, or you could call out to the Spy servlet to query the DMS stats in either text or XML form.
    I don't have an MDB published so I can't show you specifiically, but here's the sort of query you can use to extract the data.
    http://localhost:8888/dms0/Spy?format=raw&table=oc4j_ejb_stateless_bean&recurse=children
    Which produces a table of the TEXT form:
    <DMSDUMP version='9.0.4' timestamp='1163456821185 (Tue Nov 14 08:57:01 CST 2006)' id='8888' name='OC4J'>
    <statistics>
    /oc4j [type=n/a]
    /oc4j/default [type=oc4j_ear]
    /oc4j/default/EJBs [type=oc4j_ejb]
    /oc4j/default/EJBs/jmsrouter_ejb [type=oc4j_ejb_pkg]
    /oc4j/default/EJBs/jmsrouter_ejb/AdminMgrBean [type=oc4j_ejb_stateless_bean]
    pooled.count:     11     ops
    pooled.maxValue:     1     count
    pooled.minValue:     0     count
    pooled.value:     0     count
    ready.count:     11     ops
    ready.maxValue:     1     count
    ready.minValue:     0     count
    ready.value:     0     count
    session-type.value:     Stateless     
    transaction-type.value:     Bean     
    /oc4j/default/EJBs/jmsrouter_ejb/EnqueuerBean [type=oc4j_ejb_stateless_bean]
    pooled.count:     11     ops
    pooled.maxValue:     0     count
    pooled.minValue:     0     count
    pooled.value:     0     count
    ready.count:     11     ops
    ready.maxValue:     0     count
    ready.minValue:     0     count
    ready.value:     0     count
    session-type.value:     Stateless     
    transaction-type.value:     Bean     
    /oc4j/default/EJBs/jmsrouter_ejb/TimerHandlerBean [type=oc4j_ejb_stateless_bean]
    pooled.count:     11     ops
    pooled.maxValue:     0     count
    pooled.minValue:     0     count
    pooled.value:     0     count
    ready.count:     11     ops
    ready.maxValue:     0     count
    ready.minValue:     0     count
    ready.value:     0     count
    session-type.value:     Stateless     
    transaction-type.value:     Bean     
    </statistics>
    </DMSDUMP>
    Or produces an XML document of the form:
    http://localhost:8888/dms0/Spy?format=xml&table=oc4j_ejb_stateless_bean&recurse=children
    You can use the Spy console to find the table that contains the details for MDB and then take it from there.
    This is not what you specifically want to do, but it does provide a good overview of how DMS is used.
    http://www.oracle.com/technology/pub/notes/technote_dms.html
    -steve-

  • URGENT: how to get the database error message into application?

    Hi, pls give some idea:
    For example, the database is MS Access. When insertion failed, the getMessage() method of SQLException will print "General error", while the log file created by ODBC will be "[MICROSOFT][ODBC DRIVER]column ID no found in student table"(...just a example).
    So, how to get this message in our application?

    instead of using the getMessage method, have you tried something like this:
             try {
             } catch (Throwable t1) {
                System.out.println(t1.toString());
             }If that still doesn't work, you can always redirect the log entries into a textarea but then everything that appears in the log file will be redirected!
    ;o)
    V.V.

  • How to get the java code of the message mapping

    how to get the java code of the message mapping,
    I mean to ask how to get the background java code of the message mapping(graphical mapping).
    And where to view it?

    Hi Satya,
    The JAVA code for graphical msg mapping is in below folder:
    \usr\sap\<SID>\<DVEBMGS10>\j2ee\cluster\server0\temp\classpath_resolver
    Here all the mapping jars are there in this folder.
    Just decompile these jars and you can see the code.
    Thanks,
    Rajeev Gupta
    Message was edited by:
            RAJEEV GUPTA

  • How to get the information of the log related to t.code generated by basis.

    In the log generated by the basis personnel we found the details of user and corresponding t.code used details.  How to get the information reg. which document he went into using this t.code? For example me29 t.code used by 'x' user.  The log is showing time date t.code and user.  By using me29n which document he attended is the requirement. How to get this information. Let me know it pl.
    TS

    Thanks all for the help.
    Here is my solution. A mix from Julian and Thomas.
    In future I will encapsulate the code in a function module.
    DATA: BEGIN OF usr_tabl OCCURS 10.
            INCLUDE STRUCTURE uinfo.
    DATA: END OF usr_tabl.
    DATA: th_opcode(1) TYPE x.
    DATA: LV_TID LIKE  SY-INDEX.
    CONSTANTS: opcode_list LIKE th_opcode VALUE 2.
    CALL 'ThUsrInfo' ID 'OPCODE' FIELD opcode_list
      ID 'TAB' FIELD usr_tabl-sys.
    CALL FUNCTION 'TH_USER_INFO'
      EXPORTING
        CLIENT = sy-mandt
        USER   = sy-uname
      IMPORTING
        TID    = LV_TID.
    read table usr_tabl with key tid = lv_tid.
    IF sy-subrc = 0.
      CASE usr_tabl-type.
        WHEN 2.
          write :/ usr_tabl-type, 'SYSTEM'." (system)
        WHEN 4.
          write :/ usr_tabl-type, 'GUI'." (Gui)
        WHEN 32.
          write :/ usr_tabl-type, 'RFC'."(RFC)
        WHEN 202.
          write :/ usr_tabl-type, 'PLUG-IN'." (Plug-in &).
      endcase.
    ENDIF.

  • How to get the Error message from hr_contact_rel_api.create_contact

    Hello All,
    I am using this API for creating a contact for an employee in R12.
    But, some times i am not able to create the contact successfully, and Unable to figure out proper reason for record erroring out.
    I dont find any out msg data variables for this API in order to check it for the Error.
    So, can any body help me how to get the ERROR Message for such APIs.
    Thanks inAdvance,
    Amarnadh Js

    user12243334 wrote:
    solved the issue on myselfIt would be nice if you could share the solution with us.
    Thanks,
    Hussein

  • How to get the XML messages from JMS Queue in BPM

    I have one requirement in my application.we are sending XML messages to the JMS Queue.How to get the XML messages from JMS Queue and how to Extract the details from XMl.
    can you please send me the code to get the XML messages from the JMS Queue.
    Thank you,

    Hi,
    Sure others will have some other ideas, but here's what I typically do to get the XML from a JMS queue. Inside the Global Automatic that pops the messages off the queue you'd have logic similar to this:
    artifactInfoNodes as Any[]
    xmlObject as Fuego.Xml.XMLObject = XMLObject()
    load xmlObject using xmlText = message.textValue
    . . . Once you have this, it's a matter of deciding what you want to do with the message. Most times you'll parse the XML (using XPATH statemens), set argument variables and create a work item instance.
    Hope this helps,
    Dan

Maybe you are looking for