SYSPRO Ribbon bar > Administration > Trigger Programs

Trigger Programs

You use this program to invoke third-party applications (developed in an appropriate language) when a particular trigger is activated in SYSPRO (e.g. after adding a customer).

This provides a mechanism for developers to write 3rd applications that enhance the functionality of SYSPRO without affecting the core product in any way.

The actions that can be executed include the launching of 3rd party programs and sending messages to an operator's Message Inbox. These triggers can be configured within the standard SYSPRO product or from business objects within SYSPRO e.net solutions.

A significant advantage to using this facility is that these add-on programs are not affected by newer versions of the software - unless they make use of SYSPRO's data files, and where these have changed.

All triggers for SYSPRO and e.net Solutions are listed in the IMPTRR.IMP file in the ...\PRG folder.

Trigger Program Setup

Field Description
Maintain Trigger

Configure details for specific program trigger points in SYSPRO (see Maintain Trigger).

Remove Trigger

De-activate an active trigger point in SYSPRO.

e.net solutions Triggers

Configure details for specific business object trigger points in e.net solutions.

Maintain Trigger

Field Description
Trigger point

This indicates the trigger point you selected to maintain.

Triggers are program specific. For example the trigger point: After stock code added is fired only when a stock code is created through stock code maintenance (i.e. the program displayed in the Invoked by program field. This event trigger will therefore not be fired when creating an item using the Product Configurator Wizard program for example. You could use the Event Management program to trigger an event for adding a stock code, which will 'fire' whenever a stock code is added irrespective of where the Configurator is run from (i.e. Sales Orders, Quotations, Work in Progress, Bill of Materials maintenance, Estimate maintenance).

Invoked by program

This indicates the only SYSPRO program that will activate the trigger.

If you require

Key passed to trigger program

This indicates the key that is passed to the trigger program as well as the macro name where the key is defined.

Trigger code

This indicates the unique code assigned to the trigger point. It is used by developers and enables them to write a single program to handle multiple triggers generated by a single SYSPRO program. The unique code generated by each trigger can be passed to the program written by the developer.

[Note]

For NetExpress programs using SYSPRO's standard linkage (LINK.WRK) the trigger key is in LINK-EXTRA-1 and the trigger code is in LINK-EXTRA-2.

For other applications, the trigger code can be passed to the application on the command line using the reserved word %code.

For example: A command line entry of USER1.EXE %key %code executes the application USER1.EXE while the contents of the key and the trigger code is passed to the application on the command line.

Select program number

Indicate the program number slot against which you want to save the trigger type details for this trigger point.

If more than one trigger type is assigned to a trigger point, the system processes the triggers in program number sequence.

Remove Program

Select this to delete the program name associated with the highlighted program number.

Trigger type

Indicate the mechanism that you want to activate when the event is triggered in SYSPRO.

Run a SYSPRO program

Select this to run a SYSPRO program when this trigger is activated in SYSPRO (see Run a SYSPRO program).

[Note]

This function is not available if you are configuring triggers for e.net solutions.

Run a SYSPRO customized report

Select this to process a Report Writer report when the trigger is activated. You enter the report code to process in the Report code field (see Run a SYSPRO customized report).

Run any NetExpress program

Select this to run a NetExpress program when this trigger is activated in SYSPRO (see Run any NetExpress program).

Run any application

Select this to run an application when the trigger is activated in SYSPRO (see Run any application).

Write to message inbox

Select this if operators must receive messages via SYSPRO's Message Inbox, notifying them of tasks that must be actioned when specific triggers are activated in SYSPRO (see Write to message inbox).

For example: After a new customer is added to the system, a message can be sent to the message inbox of the Accounts Controller.

e.net solutions Triggers

The following trigger types can be configured for e.net solutions business objects:

  • Run any NetExpress program

    [Note]

    Once you have triggered a 'Net Express' program type, no subsequent triggers are fired until you exit back to the original program that fired the trigger.

  • Run any application
  • Write to message inbox

The following trigger points can be defined:

Field Description
A/R Customer Maintenance  
After customer added  
After customer changed  
After customer deleted  
G/L journal entry  
After normal journal added .
Inventory Maintenance  
After stock code added

The activation point for this trigger is after a stock code is added using the Browse on Stock Codes or Copy Stock Code programs.

This event trigger will not fire when creating an item using the Product Configurator Wizard program for example. You could use the Event Management program to trigger an event for adding a stock code, which will 'fire' whenever a stock code is added irrespective of where the Configurator is run from (i.e. Sales Orders, Quotations, Work in Progress, Bill of Materials maintenance, Estimate maintenance).

After stock code changed  
After stock code deleted  
P/Order Import  
After purchase order added  
After purchase order line cancelled  
After purchase order header changed  
After purchase order line changed  
P/Order Receipts

After purchase order line received

 
After receipt into inspection  

Run a SYSPRO program

These options are displayed when you set the Trigger type to run a SYSPRO program.

Field Description
SYSPRO program

Select this to run a SYSPRO program when this trigger is activated in SYSPRO.

Program name

Indicate the name of the SYSPRO program you want to run when this trigger is activated.

[Note]
  • Only one SYSPRO program can be assigned to a trigger point and it must be the last program that is run. If you need to run more than one SYSPRO program then you must use the Run any NetExpress program trigger type.

  • Once a trigger has been activated, and it is configured to run a SYSPRO program, the original program will not work properly if it attempts to interact with the Trigger system.

Run a SYSPRO customized report

These options are displayed when you set the Trigger type to run a SYSPRO customized report.

Field Description
SYSPRO customized report

Report code

Enter the Report Writer report code to process if you selected the Trigger type: Run a SYSPRO customized report.

The key that is passed by the trigger point to the report depends on the trigger point you are configuring. The keys that are passed are displayed in the field: Key passed to trigger program.

The key that caused the trigger to activate is passed to the report as a run-time parameter so that only the affected item is selected. If a trigger does not pass any keys (e.g. A/R Period End start), then no variables are passed to the report.

For example:

If the trigger: After inventory receipt is defined to Run a SYSPRO customized report, then %StockCode and %Warehouse can be defined as run-time variables. If these variables are used in the Include logic of the report (see Create Report), then when the trigger is invoked, the report is only printed for the key(s) passed by the trigger program.

The run-time variables in the report must be defined using the exact name (including the case) as the keys (i.e. If you want to pass the %Warehouse key to the report as a run-time prompt, then you must define the run-time variable as %Warehouse).

The operator must have access to the Report Writer program and have permissions to run the report (Create Report - Options - Security).

The tickover display is suppressed when the report is activated from a trigger.

Run any NetExpress program

These options are displayed when you set the Trigger type to run any NetExpress program.

Field Description
NetExpress program

Select this to run a NetExpress program when this trigger is activated in SYSPRO.

Program

Indicate the name of the NetExpress program you want to run when this trigger is activated.

[Note]
  • In the absence of a full path specification, SYSPRO will attempt to locate the program in the standard program folder.

  • If the NetExpress program you select to run is a standard SYSPRO program that itself has been configured to invoke a trigger, then activating the trigger point causes a message is displayed indicating that the program is already in use. You can ignore this message as the program associated with the trigger point will be activated when you close the message window.

Run any application

These options are displayed when you set the Trigger type to run any application.

Field Description
Application

Select this to run an application when the trigger is activated in SYSPRO.

Command line

Indicate the executable file name of the application you want to launch.

[Note]

Standard SYSPRO parameters/reserved words can be appended to the command line (see Reserved words).

Start in

Indicate the full path name to where the executable file resides.

Write to message inbox

These options are displayed when you set the Trigger type to write to message inbox.

Field Description
Message inbox details

Subject text

Enter the text that you want to display in the Message column of the designated operator's Message Inbox when the trigger is activated.

Although only 40 characters can be entered at the Subject text field, you can use reserved words to effectively expand the number of characters sent to the Message Inbox.

[Note]

The Message Inbox cannot display more than 150 characters and any additional characters are truncated.

Send to operator

Indicate the operator who must receive the message.

Program to run

Optionally indicate a standard SYSPRO program that can be launched when the operator loads the message.

Post message with today's date

Select this to write to the operator's Message Inbox regardless of how many times the trigger point is activated on the same day.

Alternatively, leave this option unchecked to post a single message for multiple activations of the trigger point on the same day.

Prevent duplicate message being displayed

Select this to filter out duplicate messages (i.e. Messages where the subject text and program to run are identical) from appearing in the target operator's Message Inbox.

List of SYSPRO Triggers

[Note]

Triggers are program specific. For example the trigger point: After stock code added is fired when a stock code is created through stock code maintenance (i.e. the program displayed in the Invoked by program field.

Field Description
A/P Supplier Maintenance  
After supplier added  
After supplier changed  
After supplier deleted  
A/P Invoice Posting  
After invoice added  
After check issued  
After credit note added  
After debit note added  
After adjustment added  
After invoice has been registered  
After first GRN matched  
A/P Check Print  
After check issued  
A/P Check Register Print  
After register printed  
A/P Manual Payment  
After check issued  
A/P Void Check  
After check voided  
A/P Clear Payment Info.  
After clearing payment information  
A/P Period End  
Period end start  
Period end finish  
A/R Customer Maintenance  
After customer added  
After customer changed  
After customer deleted  
After geographic area added  
After geographic area changed  
After geographic area deleted  
After ship-to address added  
After ship-to address changed  
After ship-to address deleted  
A/R Payments and Adjustments  
After posting payment  
After posting adjustment  
A/R Period End  
Period end start  
Period end finish  
Asset Maintenance  
After asset added  
After asset changed  
After asset deleted  
Asset Transfer  
After asset transferred  
Asset Disposal  
After asset disposed  
Asset Revaluation  
After asset revalued  
Asset Depreciation Adjustment  
After asset depreciation adjustment  
Cash Book Deposits  
After deposit or withdrawal  
Cash Book Withdrawals  
After online check printed  
EFT Beneficiary maintenance  
After beneficiary added  
After beneficiary changed  
After beneficiary deleted  
EFT Payment extract  
After EFT payment extract  
G/L Journal Entry  
After normal journal added  
G/L Period End  
Period end start  
Period end finish  
Inventory Movements  
After inventory expense issue  
After inventory cost change  
After inventory adjustment  
After warehouse transfer out  
After warehouse transfer in  
After inventory receipt  
After inventory receipt - journal entry  
Inventory Maintenance  
After stock code added The activation point for this trigger is when you add a new stock item or you copy a stock item.
After stock code changed  
After stock code deleted  
P/Order Entry  
After purchase order added The activation point for this trigger is when you end a new purchase order added using the Purchase Order Entry program.
After purchase order cancelled  
After purchase order line cancelled  
After purchase order saved, header changed The activation point for this trigger is when you end the order after having maintained it and changed any of the following fields on the order header:
  • buyer
  • order date
  • fixed exchange rate
After purchase order saved, line changed The activation point for this trigger is when you end the order after having maintained it and changed details on a detail line.
Blanket purchase orders  
After purchase order created The activation point for this trigger is when a new purchase order is created from a blanket purchase order once all the lines have been added.
After lines added to existing purchase order The activation point for this trigger is when lines are added to an existing purchase order. This only occurs for contracts with a type of call-off or single.
P/Order Creation  
After purchase order created The activation point for this trigger is when you create a purchase order using the PO Creation program.
P/Order Print  
After purchase order printed The activation point for this trigger is when the purchase order is printed initially. This trigger is not activated for a reprint of a purchase order.
P/Order Receipts  
After purchase order receipt  
After complete purchase order receipted  
After receipt into inspection  
Requisitions  
After purchase order created .
S/Order Entry  
After sales order added  
After sales order cancelled  
After sales order merchandise line added  
After sales order merchandise line inserted  
After sales order merchandise line changed  
After sales order merchandise line cancelled  
After sales order released for invoicing  
After sales order released from suspense  
After quote saved in Quick Entry  
After sales order header updated  
At 'End Order..' before showing End Order window  
After forward order converted to normal order  
S/O Document Printing  
After invoice printed The activation point for this trigger is after an invoice is printed using the Document Print program.
[Note]

The Document Print program is used for printing invoices online and in batch mode.

The following information is returned by this trigger:

  • for a normal invoice and a consolidated dispatch invoice the format of the string is the 6 character order number, followed by a comma, followed by the 6 character invoice number.

  • for a dispatch invoice the format of the string is the 6 character order number, followed by a comma, followed by the 6 character invoice number, followed by a comma, followed by the 15 character dispatch note number.

After delivery note printed  
After order acknowledgement printed  
After invoice reprinted  
After delivery note reprinted  
After order acknowledgement reprinted  
After printing batch invoices  
After dispatch note printed  
After dispatch note reprinted  
After SCT transfer printed The activation point for this trigger is after a Supply Chain Transfer document is printed using the Document Print program. The SCT reference and sales order or dispatch note number (depending on the origin of the SCT) are returned by this trigger.
After SCT Transfer reprinted The activation point for this trigger is after a Supply Chain Transfer document is reprinted using the Document Print program. The SCT reference and sales order or dispatch note number (depending on the origin of the SCT) are returned by this trigger.
S/O Back Order Release  
After sales order line released from back order The activation point for this trigger is when a sales order merchandise line is shipped using the Back Order Release program. The sales order number and the sales order line number are returned by this trigger.
Dispatch Note Processing  
After dispatch note added  
After dispatch note cancelled  
After dispatch note line changed  
After dispatch note line cancelled  
After dispatch note released for invoicing  
After dispatch note header updated  
Return Merchandise  
After adding RMA issue detail  
After RMA receipted  
After SO added  
After CRN added  
After completing RMA issue The activation point for this trigger is after all detail lines for the RMA issue have been processed. The RMA number is returned by this trigger.
After completing RMA receipt The activation point for this trigger is after all detail lines for the RMA receipt have been processed. The RMA number is returned by this trigger.
Shipping Instructions Maint.  
After shipping instructions added  
Product Configurator  
After job added  
Job Maintenance  
After job added  
After job cancelled  
After job maintained  
Operations Maintenance  
After operation added  
Job Receipts  
After job receipt  
Job Issues  
After specific issue to a job  
After a kit issue to a job  
Labor Postings  
After posting labor for a job  
Part Billings  
After part billing  
Browse on Jobs  
After job placed on hold  
After job released from hold  
Confirmation Review  
After job confirmed  
After job placed on hold  
After job released from hold  
Factory Documentation  
After printing documentation for a job  
Structure & Routings  
After structure added  
After structure changed  
After structure deleted  
After operation added  
After operation changed  
After operation deleted  
Requirements Planning  
After job created through review  
After job changed through review  
After job deleted through review  
After purchase order created through review  
After purchase order changed through review  
After purchase order cancelled through review  
Quote Maintenance  
After quotation added This trigger is activated when a quotation is initially created.
After quotation changed This trigger is activated when a quotation is modified in any way. This includes adding, changing or deleting lines or changing the quotation status.
After quotation cancelled  
After quotation placed on hold  
After quotation released from hold  
Quote Confirmation  
After quotation confirmed  
After quotation rejected  
Before quotation confirmed  
After quotation confirmed to sales order  
Quotation Purge  
After non-stocked code deleted  
Non-stk Code Maintenance  
After non-stocked code added  
After non-stocked code changed  
After non-stocked code deleted  
Estimate Maintenance  
After structure added  
After structure changed  
After structure deleted  
After operation added  
After operation changed  
After operation deleted  
Estimate Copy  
After structure added  
After structure changed  
After structure deleted  
After operation added  
After operation changed  
After operation deleted  
SYSPRO Interface Module  
After sales order added  

Reserved words

Instead of displaying a generic message in the operator's Message Inbox, 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.

When configuring triggers in SYSPRO, you can use reserved words in the command line for the trigger type: Run any application and in the subject text line for the trigger type: Write to message inbox.

Field Description
%key

This indicates the key passed to the trigger program. The key can comprise more than one item of information (e.g. The trigger After dispatch note line changed passes both the Dispatch note number and the line number to the key. In other cases, only one item of information is passed to the trigger, such as the customer code or stock code).

Details of the information that is passed to the key is indicated at the Key passed to trigger program field when maintaining a trigger.

%oper

This indicates the operator who performed the transaction that caused the trigger to be invoked.

%coid

This indicates the company id in which the transaction occurred.

%code

This indicates the unique code assigned to the trigger point. It is used by developers and enables them to write a single program to handle multiple triggers generated from a single SYSPRO program.

The unique code generated by each trigger can be passed to the program written by the developer.

Sample usage

When configuring the trigger point: After stock code added, you could specify the following at the subject field:

Stock code %key added by %oper in company %coid

where:

%key indicates the stock code that was added %oper indicates the operator who captured the details %coid indicates the company id in which the stock code as added

When the trigger is activated, the following sample message would be routed to the Message Inbox:

Stock code SAMPLE-30-CHARACTER-STOCK-CODE added by ADMIN in company 0.

[Note]

The Message field of the Message Inbox can display up to 150 characters. Additional characters are truncated.

Remove a trigger

  1. From the program highlight the trigger point you want to delete.

  2. Select Remove Trigger.

    Alternatively, right-click your mouse on an active Trigger point and select Remove Trigger from the shortcut menu.

    [Note]

    This function will delete all the trigger programs you have assigned to a specific trigger point (i.e. entries stored in the Program 1 to Program 9 slots are deleted when you remove the trigger).