SYSPRO Ribbon bar > Administration > Event Management

Event Management

You use this program to configure events that you want to monitor within SYSPRO as they occur.

Event management allows you to monitor the values of certain fields within SYSPRO, as well as invoke third party applications when a particular event occurs.

Events can be configured to perform one or more of the following actions when predefined levels are met:

  • Run a SYSPRO program

  • Run an application

  • Send an email

  • Run a NetExpress program

  • Write to SYSPRO's message inbox

For example: Whenever the quantity on hand for a particular stock item falls below zero in a specific warehouse, SYSPRO can be configured to automatically notify the Stock Controller via e-mail that the event has occurred.

In addition to this, each event can be configured to write to the event log file at the same time as performing a task, or alternatively can be configured to just write to the log file.

Toolbar and menu

Field Description
Add Add a new event.
Change Maintain the currently highlighted event.
Delete Delete the currently highlighted event.
[Note]

If you selected the option: Confirm Deletions from the Options menu, then you are prompted to confirm the deletion of the selected event.

View Log File Select this to use the Event Management Log View program to view and/or report on the log file created from transactions.

Listview

When you select the Event Management program, a listview displays all events currently configured.

Add Event

You use the Add option to configure a new event.

Field Description
Event details

Name Indicate a unique description for the event.
[Note]

This field is limited to 20 characters.

Event Indicates the event that you want to monitor.

The corresponding Select Event function will open a list of available events, displayed by module, from which you can select your required event.

Parameter Indicate the required parameter value that you want assigned to the event.
[Note]

This field is only displayed for events containing a parameter entry.

For example: If you select the event Supplier balance > parameter, then an action would be triggered when the supplier's balance exceeds the amount entered at the parameter field.

Type Indicate the action that you want invoked when the event occurs in SYSPRO.
[Note]

These actions take place within a few seconds of an event occurring.

Description Describe the type of event being configured.
[Note]

This field is limited to 100 characters.

This description is then displayed as a listview column when you select to view the log file.

Options

Write to log Select this to record the triggered event in a log file.

You can view and report on this log file from within the Event Management Editor by selecting View Log File from the Functions menu.

Active Select this to specify a range of dates within which the event must be activated.

The From and To dates specify a date range within which the event can be fired.

[Note]

These dates are inclusive.

Save

Add and save the new event to the event management file.

Check Names Verify that the e-mail addresses of the recipients are valid.
[Note]

This applies only to the E-mail type action.

Cancel

Ignore any details captured and return to the listview.

The remaining options in this window shall reflect differently depending on the action you select at the Type field. Therefore each of these options are covered separately.

Email

This screen is displayed if you selected to send an e-mail message when the event occurs in SYSPRO.

Field Description
E-mail

To Indicate one or more recipients of the e-mail.

When entering multiple addresses, use a semi-colon (;) to separate recipients.

Subject Indicate the wording that must be displayed in the subject field of the e-mail message.
[Note]

You can use special reserved words or keywords in this area, which will then be replaced with the corresponding values when the event fires.

Message You use the message area of the e-mail window to optionally indicate the text that you want to send to the recipient (e.g. "the stock on hand has fallen to below zero").
[Note]

You can use special reserved words or keywords in this area, which will then be replaced with the corresponding values when the event fires.

Notify buyer Enable this option to notify the buyer who placed the purchase order, when the goods arrive.

The e-mail address associated with the buyer is then added to the e-mail list.

[Note]

This option is only available for the Inventory event: Goods receipt.

Notify user Enable this to send an email to the requisition user as well as to the recipients listed in the To field.
[Note]

At least one recipient must be listed in the To field.

When you select this option, the e-mail defined against the requisition user is used, so ensure that this is defined.

[Note]

This option is only available for the PO events: Requisition routed to another user (req & receipt) and Requisition routed to another user (req only).

No default E-mail recipient Select this to only send e-mail to the recipients configured within the Conditional E-mail by List function.

In this scenario, e-mail is sent only when the defined criteria are matched.

[Note]

If you do not select this option, then at least one e-mail recipient must be specified at the To field.

Conditional E-mail by list Select this to configure the sending of e-mails to specific recipients, based on the supplied conditional logic (e.g. if the warehouse is E, the email address is 123@outdoors.com).
[Note]

This function applies only for specific Inventory events.

If you select this option, the Event Mail Selections screen is displayed.

Multiple conditional entries for each event are allowed and shall be displayed in this listview.

To add a new entry, select the Add option and enter the appropriate information in the fields requested.

At the Expression prompt you can add the condition under which the email should be sent. This expression can contain keywords such as %wh for warehouse and %oper for the operator code. If multiple keywords are used, separate these with the word AND.

Run a SYSPRO program

This screen is displayed if you selected to run a SYSPRO program when the event occurs in SYSPRO.

[Note]

Parameters are not passed when calling SYSPRO programs. If you require parameters, then you must use the Run any NetExpress program option.

Field Description
SYSPRO program

Program name Indicate the program that you want to load when the event occurs.

You can select the browse icon to view a list of all programs available for selection.

Description Indicates the description of the program that is being run.
[Note]

This defaults to the description assigned to SYSPRO program.

Run any NetExpress program

This screen is displayed if you selected to run a NetExpress program when the event occurs in SYSPRO.

Field Description
NetExpress program

Description Optionally indicate a description of the program that is being run.
Program Indicate the NetExpress program (including the full path) that you want to load when the event occurs.

The NetExpress program that is executed is written automatically to SYSPRO's Job Logging system.

[Note]

If the program was constructed using standard SYSPRO techniques, then the field LINK-EXTRA will contain the key of the code that triggered the event (e.g. in the case of stock falling to below zero, this would be the stock code itself).

For Inventory events, the stock code and the warehouse code are passed to the NetExpress program.

The stock code is in position 1-30 and the warehouse code is in position 31-32.

Run an application

This screen is displayed if you selected to run a third party application when the event occurs in SYSPRO.

Field Description
Application

Description Optionally indicate a description of the application that you want to run.
Command line Indicate the executable file together with the parameters that will launch the selected application when the event occurs.
[Note]

You can use special reserved words or keywords in this area, which will then be replaced with the corresponding values when the event fires.

To reduce the number of characters used on the command line, you can specify the path to the executable at the Start in field.

Start in Indicate the full path to the executable that will launch the designated application software.

Write to message inbox

This screen is displayed if you selected to write to the message inbox when the event occurs in SYSPRO.

[Note]

The Message Inbox is accessed from the Main SYSPRO menu by selecting the Message Inbox option from the Window menu.

You can setup your system to automatically check for messages on startup by selecting the Check for messages option from the Messages tab of the Customize screen.

Field Description
Message inbox details

Subject text Enter the message text that you want to display in the message inbox.

This field is limited to 40 characters.

[Note]

You can use special reserved words or keywords in this area, which will then be replaced with the corresponding values when the event fires.

Send to operator Enter the operator to whom the message must be sent.
[Note]

The operator code you enter must exist and be valid.

Program to run Enter a program that you want to run from the message inbox.

This field is optional.

Post message with today's date If you select this option, then the message is written to the message inbox regardless of the number of times the event is activated on the same date.

If you do not select this option, then a single message is written to the message inbox irrespective of the number of times the event is activated on the same day.

Prevent duplicate message being displayed If you select this option, then duplicate messages are not displayed in the target operator's inbox.
[Note]

Duplicate messages are those where the subject text and the program to run are identical.

List of Events

This screen is displayed when you select the Select Event function, and lists all available events within SYSPRO.

Within this screen, highlighting an event and selecting the Explain option will provide a list of keywords that are available for use in the command line/email for that event.

[Note]

Events listed with the type SYSPRO will fire if the condition was caused by a SYSPRO program.

Those events with the type e.net will fire if the condition was caused by an e.net solutions business object.

Certain available events have an activation point associated with it, or require further explanation. These events include:

Event Description
Customer balance > % of credit limit You would typically use this trigger to alert you when customers are nearing their credit limit.

Activation Point: When the customer's balances are greater than (the customer's credit limit multiplied by the parameter value divided by 100).

For example: Parameter value entered = 90. Customer's credit limit = 10 000. The trigger is then activated when the customer's balance exceeds 9 000 (i.e. 10 000 x 90/100).

[Note]
  • If you are using master/sub accounts, then the credit check is performed against the customer (master or sub account) to which invoices are linked.
  • This event is only fired when the customer's credit limit is exceeded the first time.
Customer placed on hold Activation point: When a customer is placed on hold.
Customer released from hold Activation point: When the on-hold status against a customer is lifted.
Capex budget exceeded on line addition Activation point: When a capex requisition line is added to a capex item and the value of the requisition line causes the budget value of the capex item to be exceeded.
Capex budget exceeded on line approval Activation point: When a capex requisition line is approved and the value of the requisition line causes the budget value of the capex item to be exceeded.
Capex budget exceeded on line spending Activation point: When using the Purchase Order Receipts or Part Billings program to process a receipt for a capex requisition line and the receipt value causes the budget value of the capex item to be exceeded.
Capex spending on line not approved Activation point: When using the Purchase Order Receipts or Part Billings program to process a second or subsequent receipt for a capex requisition line and the requisition line is still in a status of Closed from the previous receipt.
Stock less than minimum This event is executed only on the first instance that the condition occurs for a specific stock item.

Therefore this event is not triggered if the stock on hand for the item is already below minimum and a transaction is processed that further reduces the stock on hand.

Allocation exceeds quantity on hand This event is executed only on the first instance that the condition occurs for a specific stock item.

Activation points:

  • Sales Order Entry

    When the warehouse is being updated from a new line or from a changed line.

  • Sales Order Single Level Bill of Materials

    When updating the warehouse on validating an optional line and when allocating stock.

  • EDI Sales Order Import

    When the warehouse is updated as the lines are being checked.

  • Sales Order Purge

    When updating the warehouse after allocating a scheduled order line.

  • Sales Order Back Order Releases Import

    When the warehouse is updated from an accepted line and when a kit component is updated.

  • Blanket Sales Order Review and Confirmation

    When the warehouse is updated because of added lines.

Allocation + minimum exceeds on hand This event is executed only on the first instance that the condition occurs for a specific stock item.

Activation points:

  • Sales Order Entry

    When the warehouse is being updated from a new line or from a changed line.

  • Sales Order Single Level Bill of Materials

    When updating the warehouse on validating an optional line and when allocating stock.

  • EDI Sales Order Import

    When the warehouse is updated as the lines are being checked.

  • Sales Order Purge

    When updating the warehouse after allocating a scheduled order line.

  • Sales Order Back Order Releases Import

    When the warehouse is updated from an accepted line and when a kit component is updated.

  • Blanket Sales Order Review and Confirmation

    When the warehouse is updated because of added lines.

Requisition routed to another user (req & receipt) Activation points:
  • Purchase Order Receipts

    When a purchase order line linked to a requisition is receipted.

  • Requisition Entry

    When a requisition line is routed to another user.

[Note]

Within the Requisition Entry program you can enable the preference: Trigger event once only when routing consecutive requisition lines to activate this event for each requisition routed to another user, regardless of the number of lines held against the requisition.

Requisition routed to another user (req only) This event is essentially the same as the event: Requisition routed to another user (req & receipt), except that it is only activated for Requisitions and not for Purchase Order Receipts.

Activation point: When the requisition line of a Requisition entry is routed to another user.

[Note]

Within the Requisition Entry program you can enable the preference: Trigger event once only when routing consecutive requisition lines to activate this event for each requisition routed to another user, regardless of the number of lines held against the requisition.

Goods receipt from purchase order Activation point: When receipting a Purchase Order item.

When using this event to trigger an email, the keywords %wh and %other are interchangeable within the email body.

If, however, you are defining a conditional email, then the %wh keyword must be used to make the mail conditional on the actual warehouse.

This is because the %other keyword can contain up to 30 characters and will always evaluate the condition on the full 30-characters of the variable.

To make the mail conditional on the stock code, use the %key keyword.

New sales order fails credit check This event is triggered when a sales order causes a customer's credit limit to be exceeded and the order is placed in suspense.

Activation points:

  • When converting a quotation to a sales order.

  • When creating a sales order.

  • When copying a sales order.

Price overridden by operator Activation point: When the price (or price code) is overridden at the time of adding a line in Sales Order Entry.

The event is not activated if maintaining an existing line for which the price has already been overridden and the price is changed again. However, the event is activated if the price code is changed.

Purchase order raised from sales order Activation point: When a purchase order is created from a sales order.
Purchase order receipt from sales order Activation point: When receipting a purchase order line that is linked to a sales order line.

If an item is receipted into inspection, then the event is activated only when the item is accepted.

Invoice process failed during document print This event is only relevant if you are printing an invoice to a device printer and the Print Preview option is not selected.

Activation point: The event is activated if a failure occurs while printing an invoice and only some lines have been printed, or a failure occurs while the invoice process is in the update phase.

Access security breach attempt Activation point: When an operator attempts to run a program to which the operator does not have access.

Reserved words

Instead of displaying a generic message, you can configure the trigger point to display more specific information. This is achieved by using any of a number of reserved words or variables.

Reserved words must be entered in lowercase, as indicated in the table.

Reserved words in email

Field Description
%key This indicates the main key field that caused the event (e.g. stock code).
%other This indicates the secondary or other key that caused the event.

Additional details regarding this variable for specific event types include the following:

Related eventsKeyword contents
Purchase order receiptsThe %other keyword contains the following:
  • warehouse code in positions 1-2

  • the purchase order number in positions 4-9

  • a hyphen (-) in position 10

  • the purchase order line number in positions 11-14)

Requisition routingThe %other keyword will contain the user from whom the requisition was routed.
Credit limitThe %other keyword will contain the following data depending on the program that caused the event to occur:
  • Sales Order Entry - sales order number
  • Invoice Posting - invoice number
  • Cash Posting - check reference
%wh This indicates the warehouse (for inventory events) in which the warehouse is used.
%desc This indicates the description of the main key (e.g. stock description).
[Note]

The contents of this field will vary according to the event being triggered.

%name This reserved word is interchangeable with %desc.
%oper This indicates the operator who performed the transaction that caused the event/trigger to be invoked.
%prog This indicates the name of the program that was running at the time the event occurred (e.g. IMP010 would be inserted if the Inventory Movements program caused the event to occur).
%prgdesc This indicates the description of the program running at the time the event occurred (e.g. Inventory Movements would be inserted if the Inventory Movements program caused the event to occur).
%balance This indicates the balance of the main key after the event (e.g. if the event is Bank balance < parameter, then %balance would contain the balance of the bank after the event has occurred).

This reserved word is applicable only to events for which this makes any sense (i.e. the Bank balance event).

For the credit limit events, %balance refers to the percentage of the customer's balance versus the credit limit. Therefore, if the balance of the customer (including outstanding order value) after the event, is standing at 56% of the credit limit, then %balance would contain 56.

%onhand This works in a similar way to the %balance reserved word, but applies to stock warehouse events only. Therefore, %onhand will contain the stock on hand after the stock warehouse event has occurred.
%value This indicates the value of the transaction that caused the event (e.g. if the event is Bank balance < parameter and the withdrawal value is $1000 then %value would contain 1000).
[Note]

This reserved word is applicable only to events for which this is appropriate.

%qty This indicates the quantity of the transaction that caused the event (e.g. if the stock on hand falls to below safety, then %qty would contain the quantity of the transaction that caused the quantity on hand to fall below safety).
[Note]

This reserved word is applicable only to events for which this is appropriate.

%coid This indicates the company ID in which the transaction occurred.

Reserved words in the command line

Field Description
%key This indicates the main key field that caused the event (e.g. stock code).
%other This indicates the secondary or other key that caused the event (e.g. in the case of events relating to the stock warehouse file, this would reflect the warehouse).
%desc This indicates the description of the main key (e.g. stock description).
[Note]

The contents of this field will vary according to the event being triggered.

%name This reserved word is interchangeable with %desc.
%oper This indicates the operator who performed the transaction that caused the event/trigger to be invoked.
%coid This indicates the company ID in which the transaction occurred.
%log This indicates the key to the log record just written (i.e. the application can read directly onto the event log file and retrieve the information required about the event).
%qty This indicates the transaction quantity (applicable to Inventory-related events).
%wh This indicates the warehouse code (applicable to Inventory-related events).
%onhand This indicates the quantity on-hand balance (applicable to Inventory-related events).

Sample usage

The following example describes how you would set up an event to email a specific person if the quantity of stock item A113 in warehouse S falls below the minimum quantity:

  1. From the listview pane of the Event Management program, select Add from the Edit menu.

    Alternatively, select the Add icon from the toolbar.

  2. Enter a name for the event (e.g. Stock A113 Below Minimum).

  3. At the Event field, select the option: Stock less than minimum from the List of Events.

  4. Select Email at the Type field.

  5. Optionally enter a description for the event.

  6. At the email Subject field, enter %key below minimum.

  7. In the email body, enter: For warehouse %wh.

  8. Enable the No default Email recipient option.

  9. Select the function: Conditional Email by List.

    1. Within the Event Mail Selections listview, select the Add function from the Edit menu.

      Alternatively, select the Add icon from the toolbar.

    2. Accept the default line number displayed.

      At the Expression field, enter %key = "A113" AND %wh = "S".

    3. At the Recipient List field, enter the name of the person the email must be sent to when the event occurs and then save your selections.

  10. Exit the Event Mail Selections screen and select to save the new event configured.

Notes and warnings

Prerequisites

  • The Office Automation and Messaging module must be installed as part of your registration license before you can use this program.

  • If you intend using the e-mail facility of this program, you must have either Microsoft Exchange or Microsoft Outlook installed on your workstation.

Action type considerations

  • Email

    To be able to configure an email event and save it, the operator must have the Fax/mail integration required option enabled against their operator code.

  • Run a SYSPRO program

    If multiple events have been configured to call a SYSPRO program when it's conditions occur, the actions shall process in the sequence in which they appear inside the listview (alphabetical sequence, by event name).

  • The content of the variable %desc (or %name) varies according to the type of event being triggered.

    Usually it contains the description of the bank, or stock code, or customer etc. In some cases, however, there is no obvious description and the table below indicates the text that will be used:

    Event %desc Contents
    Requisition routed to another user Routing narrative
    Purchase order receipts Stock description for the purchase order line