Pages

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/maximo.jsp?[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/maximo.jsp?event=loadapp&value=wotrack&additionalevent=useqbe&additionaleventvalue=wonum=1000

Display all work orders with status WAPPR
http://localhost/maximo/ui/maximo.jsp?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


61 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
    Replies
    1. This comment has been removed by the author.

      Delete
  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
  17. this is great stuff for comms templates.
    I need to send a link to a the affected person of a service request ticket that has been created from the Self Service Center via the catalogue where it will
    1. open the Self Service Center - http://host/maximo/ui/?event=loadapp&value=srmssctr
    and then
    2. open the specifc SR - not full SR ticket, nor VIEWSR ticket but the one the requester gets from the selfservice center

    how do i do part 2? running a PoC Demo for client Monday 19th May and would be cool to show them this
    these dont work
    http://host/maximo/ui/?event=loadapp&value=srmssctr&additionalevent=loadapp&additionaleventvalue=#requests
    http://hst/maximo/ui/?event=loadapp&value=srmssctr&additionalevent=#&additionaleventvalue=requests

    ReplyDelete
    Replies
    1. Hi Brian,

      I don't know if you found the solution, but I found one solution:
      In order to be able to open the "View Service Request" dialog in Self Service Center in Application Designer for srmssctr add a sigoption named srmssviewsr.
      srmssviewsr is the dialog id for "View Service Request".
      Then you will be able to open a SR with the following link:
      http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=srmssctr&additionalevent=srmssviewsr&additionaleventvalue=:TICKETUID

      ex: http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=srmssctr&additionalevent=srmssviewsr&additionaleventvalue=200123
      where 200123 is the SR.TICKETUID
      Obs: it won't work if you will put ...event=loadapp&value=srmssctr&additionalevent=srmssviewsr&additionaleventvalue=TICKETUID=200123 like in other applications.

      Delete
    2. Hi Viorica, when I try this I only see invalid bindings in the dialog. When I open the dialog directly in the Self Service Centre, the dialog is displayed correctly. Have you experienced this problem too?

      Delete
  18. Hi,
    http://host/maximonc/ui/?event=loadapp&value=problem&additionalevent=insert&uisessionid=1258708059071

    I have a problem… when user executes above link its creating new problem record but as per business requirement we disabled the new record creation in problem application.
    But users is executing the above url and creating the records. How to restrict the users to create new records??

    ReplyDelete
  19. Hello,
    I'm wondering if it is possible to create a hyperlink to a pre-existing PM so that I can click a link on a PDF and have it open up the PM in Maximo. I see that it's possible to create a URL with the work order record number but don't see anything about how to create something for PMs.
    Regards,
    Andrew.

    ReplyDelete
  20. Nevermind, I figure it out after looking at the Maximo source code. Here's what I did: http://localhost/maximo/ui/event=loadapp&value=plustpm&additionalevent=useqbe&additionaleventvalue=pmnum=10010001

    ReplyDelete
  21. Bruno is see this post still in going strong........

    I can't seem to find the right combination to call a stored query from the applications saved query section. any ideas if this can even be done........?

    ReplyDelete
  22. Since upgrading to Maximo 7.5 this hyperlink url now prompts for log in? even though you have an active session.
    If you log in it then takes you to the record and provided you do not log out, other links will work without login again.
    It is like it can not see existing session in same browser?

    ReplyDelete
  23. How can I accept or reject a workflow assignment using url?
    i.e., Suppose user has an assignment on SR. when the user enter the maximo url with action, it should automatically accept the assignment.
    How can I configure an action for it?

    ReplyDelete
  24. This comment has been removed by the author.

    ReplyDelete
  25. This is great, however I'm having problems trying to implement it from Excels HYPERLINK function. As the URL contains an ampersand, Excel(?) is escaping it to & amp; and Maximo is not accepting it. If I change the URL in Excel to use a double ampersand && then it works but only once. After that it gets escaped back to & amp;& amp;



    Has anyone managed to get this working?

    ReplyDelete
  26. I have an ODBC connection in an Excel that extracts the wonum in a table (cell A2).
    Then I have a formula that takes the value and creates a link to maximo.

    =HYPERLINK("http://localhost/maximo/ui/?event=loadapp&value=wotrack&additionalevent=useqbe&additionaleventvalue=wonum="&A;"Link")

    ReplyDelete
  27. How do I add the domain to the hostname. http://:HOSTNAME/ works fine.
    However, http://:HOSTNAME.x.y.z does not expand :HOSTNAME.

    ReplyDelete
  28. Hi bruno,
    http://localhost/maximo/ui/maximo.jsp?event=loadapp&value=person&additionalevent=insert&additionaleventvalue=firstname=Scott|lastname=Dickerson|personid=test

    i use this ... successfully running but i need it auto save when call this link
    can you help me about it.

    ReplyDelete
  29. HI PLS HELP ME HOW TO RESOLVE MULTIPLE INCIDENT

    ReplyDelete
  30. Hi Bruno,

    I would have a question regarding these URLs. Do you know how can I redirect the user, let's say to this URL https://serverhost/maximo/ui/login?event=loadapp&value=person..., immediately after successful login?


    Thanks a lot!

    Alina

    ReplyDelete
  31. Hello,
    may i know is it possible to add css designs in maximo communication templates

    ReplyDelete
    Replies
    1. YES! But you have to pay attention to some hidden rules:
      1. You can't refer to an external CSS file. All you styling code must be declared in the Communication Template message, at the beginning of the message.
      2. All you styling code must be in a single line. You can use some minifier to help you (https://www.minifier.org/ for example). The length doesn't matter but it must be in a single line. I've put the full content of "bootstrap.min.css" (from https://getbootstrap.com/) and it works fine.
      3. Don't use Javascript in your message
      4. Test very carefully as some email clients behave differently. MS Outlook can't process media queries, so you can forget all responsive layout with such a mail client

      On my side, I created templates dedicated to specific devices/email client.

      Delete
  32. I am looking for a way to automatically save a work order record after creating it using a URL. Any thoughts?

    ReplyDelete
    Replies
    1. Hello Don.
      Did you found any way to do it?

      Delete
    2. hello don and Claudio,did u found any way to save

      Delete
  33. Thanks for this post
    Actually my question is different but if any one would help that will be appreciated

    actually there is a scenario that if a service request is occurring again and we want to automatically change any service request which is recurring to an incident without manually done by the sda how we can do please help??!!!1

    ReplyDelete
  34. How do you sort by a field? I tried by using sqlwhere having "order by" in the where clause portion but it never displays any results. Is there an event argument I need to invoke to sort by a field, say wonum?

    ReplyDelete
  35. Is it possible to specify the browser (IE, CHROME, FIREFOX, etc.) in the URL? It seems to use the current default browser.

    ReplyDelete
  36. Hi Bruno,

    We have a users who uses OKTA which is SSO based to access Maximo. When we are trying to form a Hyperlink for change records the link it taking to self service center only. Any idea how to add both OKTA and MAXIMO url as one hyperlink in WFASSIGN comm template.

    Thanks in Advance

    ReplyDelete
  37. Hi Bruno,

    How can I call an action as well as use a sqlwhere in my additionalevent attribute? Is that possible?

    An example im trying to workout here is :
    http://havud842/maximo/ui/maximo.jsp?event=loadapp&value=TD&changetab=main&additionalevent=sqlwhere&additionaleventvalue=td_triagereference%3D'W114433927'&additionalevent=TD_DATE&forcereload=true

    Here the action name is TD_DATE

    sqlwhere part is working fine, but call action is not getting triggered

    ReplyDelete
  38. Hi, how could i change the status from DRAFT to INPRG and save when using this url to create a new workorder?

    ReplyDelete
  39. Just some tips for the random travelers.

    You can use ':HOSTNAME/maximo/ui/maximo.jsp?' to auto fill out your maximo address (you dont need to use the actual host name at all yourself). This is handy if you suddenly get emails sent from your non production environment and need to track down which server is sending emails with hyperlinks.

    Hyperlinks can't perform miracles. You can effectively do 2 tasks at a time that I have found such as 1 open a work order, 2 duplicate the work order. It obeys the read only rules.

    You can find anything that you want maximo to click on the more actions or common actions bars in your application designer. Go to the application designer and find SR, Open it and select action on top of page, and select add/modify select action menu. If you hit any magnifying glass in the list of results it will show you the Option on the left (this is the action you use in maximo to use that button) and a description.

    BTW I was researching If I could use this to duplicate an SR and change a custom field to notate if the previous work order or SR was closed with no fix. IT DIDNT WORK! But I was able to learn quite a lot about escalations, communications, and hyperlinks along the way. GOOD LUCK EVERYONE

    ReplyDelete
    Replies
    1. Thanks for your insight! I seem to be having trouble with hitting the login page using any link combination, even if the browser has an active session. Even passing the username and password as params doesn't work. Do you know if there is a way to use the existing session, or at least to redirect after a successful login?

      Delete
  40. Hi Bruno,
    is there a possibility to create a link which is referring directly to an offering within the Service Catalog within the Self-Service Center.
    I mean, it's possible to call the "My Incident" and "My SR" views.
    Thanks for your help!

    ReplyDelete
  41. I am looking for a way to automatically save a purchase order record after creating it using a URL. How i can do this ??

    ReplyDelete

Note: Only a member of this blog may post a comment.