Notify Users of Material and Service Receipts

September 28, 2016 BrianBaird

One of my recurring issues has been notifying uses of receipts in an email, without a separate email for each receipt record.   To that end, I’ve created a process that uses an escalation to fire a custom action to do this.  This is built on Maximo on SQL Server. 


Note: The way this is built, it only works for POs where all lines are requested by the same user.  You’re smart, I’m sure you can figure out options if you need to.


Create a persistent attribute PO.LASTRECDATE (DATETIME 10).

  • If you wish, add it to the PO List and Main tabs.  My users seem to like it there.
  • Don’t forget to turn Admin Mode off.
    • Yes….I still forget sometimes.



Create a new Role POREQ

  • Type: Data Related to the Record
  • Object: PO
  • Value: :poline.requestedby


Create a new Communication Template PORECEIPT

  • Applies To: PO
  • Subject and Message can be anything, they will be driven by the custom action
  • Add the POREQ role as a recipient.
  • Don’t forget to activate the template.
    • See above about Admin Mode.


Create a Custom Launchpoint PORECCOMM.

  • Object: PO
  • Action: PORECCOMM
  • Bound Variables: None
  • Source: see at this link.


Create a new Action Group PORECESC.

  • Object: PO
  • Type: Action Group
  • Members: PORECCOMM


If you wish, you can create new views on the DB outside of Maximo.

    • Can be used to update all PO records.
    • Can also be used to feed view V_MX_PORECEIPTS.
  • V_MX_PORECEIPTS (extra credit)
    • Can be used as an imported Maximo object, combining MATREC and SERVREC by PO.
  • The SQL is buried at the end of

Create new Escalation PORECESC.

  • Applies To: PO
  • Condition: po.historyflag = 0

AND po.receipts <> 'NONE'

AND (exists (SELECT 1 FROM matrectrans mr WHERE mr.ponum = po.ponum AND mr.receiptref is NULL AND mr.issuetype = 'RECEIPT' AND mr.transdate >isnull(po.ns_lastrecdate,po.orderdate))

OR exists (SELECT 1 FROM servrectrans sr WHERE sr.ponum = po.ponum AND sr.receiptref is NULL AND sr.issuetype = 'RECEIPT' AND sr.transdate >isnull(po.ns_lastrecdate,po.orderdate)))

  • Escalation Point: repeats
  • Action Group: PORECESC
  • Don’t forget to activate it  (See above).

This entire document is available at the Automation Scripting DW Community as well.








Previous Article
IBM Maximo Supervisor Work Center

IBM Maximo Supervisor Work Center - New Maximo Work Centers are an innovative approach to work management. ...

Next Article
Cloning Maximo 7.6

Please keep in mind, IBM does not officially support cloning in Maximo 7.6 . If you have any problems with ...


Want our latest news? Subscribe to our blog!

Last Name
First Name
Thank you!
Error - something went wrong!