April 26, 2012

Maximo URLs

TPAE-based products like MAM, TAMIT, TSRM, CCMDB or SCCD provide a common way to open an application and perform some basic action like displaying a specific entry or performing a simple query. This can be very useful to integrate Maximo with other applications implementing navigation integration or launch in context.

The base URL has this syntax: http://[hostname]/maximo/ui?[arguments]
where:
  • hostname - Server's host name
  • arguments - A set of name-value pairs, similar to the HTTP GET request

In the arguments, you can define the following information:
  • Run an application - event=loadapp&value=[appname]
  • Login - login=true&username=[user]&password=[pwd]
  • Open a record - uniqueid=[uniqueidnumber]
    The unique ID is created using an identity column and is typically hidden. It contains an integer sequence with increasing value.
  • Open an application tab - tabid=[tabid] or changetab=[tabid]
    To determine the ID of a specific application tab, open the application in the Application Designer, and then open the Properties window for the tab. This parameter is used only when the search for a record yields exactly one response.
  • Force refresh - forcereload=true
    ensure that the page is refreshed on subsequent launch of the target page.
  • Perform an action - additionalevent=[action]
    Look at application sigotions for available values.
  • Perform a query using QBE - additionalevent=useqbe&additionaleventvalue=[qbe]
    The additional event value contains a list of attribute value pairs in the format of key1=value1|key2=value2...
  • Perform a query using a where clause - additionalevent=useqbe&additionaleventvalue=[qbe]
    The additional event value has the where clause of a valid SQL statement.
  • Use the new skin - skin=tivoli09
  • Use the old skin - skin=classic
Note: URLs must be properly escaped. For example the "=" character must be converted to "%3D" and spaces must be converted to "%20".


Examples

Here are some useful links (URL) that can be used to open Maximo UI and perform some action.

Move to home page
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=startcntr

Move to home page (with automatic login)
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=startcntr&login=true&username=maxadmin&password=maxadmin

Open ROLE application
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=role

Create a new PERSON record
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=person&additionalevent=insert

Create a new PERSON recor and populates some fields
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=person&additionalevent=insert&additionaleventvalue=firstname=Scott|lastname=Dickerson

Display an ASSET record using the UID of the record
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=asset&uniqueid=1152

Display a WORKORDER record using the WONUM of the record
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=wotrack&sqlwhere=WONUM%3D1000

Display a WORKORDER record using the WONUM of the record (using additionalevent)
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=wotrack&additionalevent=sqlwhere&additionaleventvalue=WONUM%3D'1000'

Display a WORKORDER record using the WONUM of the record (using QBE)
http://localhost/maximo/ui/?event=loadapp&value=wotrack&additionalevent=useqbe&additionaleventvalue=wonum=1000

Display all work orders with status WAPPR
http://localhost/maximo/ui/?event=loadapp&value=wotrack&additionalevent=sqlwhere&additionaleventvalue=status%20in%20('WAPPR')

Display a WO record AND call a Maximo Action
http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=wotrack&uniqueid=133&additionalevent=viewcosts


28 comments:

  1. Hi,
    Great post!
    I have a little problem, hope you can help me...

    Maximo 7.1.1.6
    Open an application tab - tabid=[tabid] does not work. It opens on main page.
    I used following url:
    https://serverhost/maximo/ui/login?event=loadapp&value=wotrack&uniqueid=971412&tabid=plans

    Can you help?

    Regards,
    Alexey

    ReplyDelete
    Replies
    1. The 'tabid' parameter is documented here: http://publib.boulder.ibm.com/infocenter/tivihelp/v49r1/topic/com.ibm.mbs.doc/gp_intfrmwk/c_lic_inbound_url.html
      However, I have tried it on a 7.2 and a 7.5 MAM and it doesn't work :-(

      Delete
    2. hi,
      it works when used with additionalevent|value

      additionalevent=gototab&additionaleventvalue%3D1289310562843

      regards
      Erdem

      Delete
    3. Hi Erdem,

      That's great! It works!

      But how did you come up with %3D1289310562843???

      I am trying to point users to other tabs but what is the code for them. I also have a custom build tab in WO tracking application...

      Regards,
      Alexey

      Delete
    4. Sorry for late response.

      there was a typo on my previous post, sorry for that too.
      here is the working one, additionalevent=gototab&additionaleventvalue=relatedrec

      relatedrec for the eventvalue is the tab type. there are only 2 types by default, list and insert.
      you might add your owns by adding type for the related tab in app xmls.



      regards,
      Erdem

      Delete
    5. Thank you Erdem. Missed the type bit. Works like a charm! :)

      Delete
  2. Hi,

    Thanks for the above info.

    Do you know how to reference an incident id? I have tried using the following URLs but I get the error: BMXAA4176E - Attribute XXXX does not exist. (where XXXX are the attributes listed below)

    Maximo does navigate to the incident tab, but it is unable to load the requested incident.

    https://serverhost/maximo/ui/?event=loadapp&value=incident&additionalevent=useqbe&additionaleventvalue=imnum=123456789

    Attributes:
    imnum
    imref
    wonum
    minum


    Thank you for any help,

    Sincerely,

    David

    ReplyDelete
    Replies
    1. David,
      to retrieve the name of a field in Maximo you can put the cursor on that field and press Alt+F1.
      If you open the Incidents application, put the cursor on the Incident field and press Alt+F1 you will see that the name of that field is TICKETID.
      A URL like this should work:
      http://localhost/maximo/ui/?event=loadapp&value=incident&additionalevent=useqbe&additionaleventvalue=ticketid=1002

      Delete
  3. Bruno just wanted to thank you for a great post on this.

    Scott

    ReplyDelete
    Replies
    1. Thank you Scott.
      If you find some useful information on my blog you can reward me by clicking on the +1 button at end of the article.
      Thanks again, I'm always happy to help the Maximo technical community.

      Delete
  4. Good stuff... is there a way to stuff a value into a single attribute? I know we can do this with SCCD much easier (e.g. with JavaScript)

    ReplyDelete
    Replies
    1. Please look at the example 'Create a new PERSON recor and populates some fields'.

      Delete
  5. Can you add this example Bruno? Where additional values are passed to the insert command to populate fields on the new record?

    http:///maximo/ui/login?event=loadapp&value=person&additionalevent=insert&additionaleventvalue=firstname=scott|lastname=dickerson&uisessionid=35&csrftoken=375b8fl4lb7sj9h06qfjlfmidg&forcereload=true

    ReplyDelete
    Replies
    1. Great Scott!
      I have added your example. Thank you.

      Delete
  6. Hi, Please tell me if it's possible to filter on a tab list when i'm in a gotoapp event for exemple, i would like to show a short list of jobplans I tried this:

    http://vmmaximodev:9080/maximo/ui/?event=gotoapp&value=jobplan&sqlwhere=JPNUM in ('1076940','1076941')&uisessionid=14


    For me, it means go to jobplan application and show me all jobplans with jpnum in ('1076940','1076941')

    but it doesn't work.

    Thank's a lot
    Some ideas ?

    ReplyDelete
  7. Hi Bruno, great post!
    I'm wondering how can I route a workflow using additional parameters in a link?

    Thanks!

    ReplyDelete
  8. Hi,

    this is some great info, however, I did not manage to use the additional event to change status of the record (in 7.5).

    This is what I have tried:
    http://localhost/maximo/ui/?event=loadapp&value=sr&uniqueid=3406&additionalevent=resolved

    The correct SR opened, however, its status did not change. Can someone point me in the right direction?

    ReplyDelete
  9. Hi,

    Is there a way to create a new work order and add an item in the plans, materials tab?

    ReplyDelete
  10. ok here is the magical TAB action.
    ?event=loadapp&value=sr&additionalevent=useqbe&additionaleventvalue=ticketid=1004&changetab=relatedrec

    so you need changetab=

    ReplyDelete
  11. Bruno, thanks for this great page. Got a question about data ranges. For instance, i want to filter out WOs in a given range, this is how it would appear in my query:
    targstartdate between (sysdate-7) and (sysdate+2)
    but placing it in the URL, even with %20 and quotes inside the brackets doesnt help. Tried many different formatting options... any guesses?

    ReplyDelete
  12. I had a requirement to create a report based on individual user whom having SR waiting for approval, On click on Ticket id the URL's should redirect to SR detailed page where he can check request approve or disapprove.

    using hyper link in birt properties unable to pass the ticketid by using below url's

    http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=asset&additionaleventvalue=Ticketid

    Could you anybody help in this regards.

    ReplyDelete
  13. Hello Bruno,

    As always a great article. I have a question not sure if its related. From the list tab of Asset may be, when I click on any Asset, how can I force it to open each asset in a new tab ?

    ReplyDelete
  14. Hi
    Is it possible to write an URL-link that do this: Auto-login, then open a specific WO, then dublicates this.
    Anders

    ReplyDelete
  15. Hi ,
    I need a URL- link to add a New Row to Measurements and populate the Observation filed under Condition Monitoring Tab. Can anyone help?

    ReplyDelete
  16. Hi, how to change a page via url request? For example, http://host/maximo/ui/?event=loadapp&value=wotrack&additionalevent=useqbe&additionaleventvalue=status=COMP&page=2

    What parameter should I use?

    ReplyDelete