# SyteLine Event Action Types Reference

> Source: https://netray.co/tools/syteline-event-action-types-reference
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

The 26 action types on the SyteLine Event Actions form, with what each does, the parameters that matter and which ones make a handler wait.

## Category

developer

## Erp

Infor SyteLine

## Audience

- SyteLine developer
- ERP administrator
- Workflow designer

## Tool

**Kind:** worksheet

**Mode:** reference

**Columns:**

#### Action type

**Key:** action

**Type:** text

#### What it does

**Key:** does

**Type:** text

#### Key parameters to set

**Key:** params

**Type:** text

#### Typical use in SyteLine

**Key:** use

**Type:** text

#### Waits or suspends

**Key:** suspends

**Type:** select

**Options:**

- Yes
- No

**Rows:**

**Action:** Achieve Milestone

**Does:** Records a milestone and sets the designer-defined event state, then the handler continues

**Params:** State text (read later with EVENTSTATE)

**Use:** Show 'Credit approved' on Event Status partway through an approval flow

**Suspends:** No

**Action:** Attach

**Does:** Attaches, links, updates or detaches document attachments on records while the handler runs

**Params:** Record, document, attach or detach mode

**Use:** Link a signed PDF to a customer order during an approval flow

**Suspends:** No

**Action:** Audit

**Does:** Writes an audit entry for the handler run

**Params:** Text or expression to record

**Use:** Record who approved a price override and when

**Suspends:** No

**Action:** Branch

**Does:** Jumps to another action in the sequence when a condition is met

**Params:** Condition, destination action

**Use:** Skip the approval prompt when the order total is below a limit

**Suspends:** No

**Action:** Call Database Method

**Does:** Runs a stored procedure or database function

**Params:** Method name, input and output parameters

**Use:** Call a custom stored procedure that writes to a user-defined table

**Suspends:** No

**Action:** Call IDO Method

**Does:** Invokes a method on an IDO with parameters and captures output parameters

**Params:** IDO, method, parameter list, output variables

**Use:** Call a SyteLine IDO method to recalculate or post after a change

**Suspends:** No

**Action:** Call Web Service

**Does:** Calls an external web service and returns the response

**Params:** URL, request, result variable

**Use:** Check a carrier or tax service from an event

**Suspends:** No

**Action:** Dispatch IDO Request

**Does:** Sends an IDO request to a site or system the user is not connected to

**Params:** URL() of the target, IDO request XML, result variable

**Use:** Read or update data in another SyteLine site; parse the result with Transform XML

**Suspends:** No

**Action:** Execute IDO Request

**Does:** Runs an IDO request XML in the current configuration

**Params:** IDO request XML, result variable

**Use:** Run a multi-step IDO request built from expressions

**Suspends:** No

**Action:** Fail

**Does:** Stops the handler with Failure status when its condition is met

**Params:** Condition, result message

**Use:** Block deletion of an item, or reject an update that breaks a rule

**Suspends:** No

**Action:** Finish

**Does:** Ends the handler with Success and an optional result message shown on Event Status

**Params:** Condition, result message, state

**Use:** End early once an approval is granted

**Suspends:** No

**Action:** Generate Event

**Does:** Fires another event, usually a custom one, with parameters

**Params:** Event name, parameters, synchronous or not

**Use:** Split a long flow into reusable custom events

**Suspends:** No

**Action:** Goto

**Does:** Jumps unconditionally to another action

**Params:** Destination action

**Use:** Loop back to a prompt after a rejection is reworked

**Suspends:** No

**Action:** Load IDO Collection

**Does:** Loads rows from an IDO into a named result set

**Params:** IDO, properties, filter, record cap, result set name

**Use:** Load open lines for an order, then read them with P3 and ROWS(collection)

**Suspends:** No

**Action:** Load IDO Row

**Does:** Loads one row from an IDO and puts property values into variables

**Params:** IDO, properties, filter, target variables

**Use:** Read a customer's credit limit before deciding to prompt

**Suspends:** No

**Action:** Notify

**Does:** Sends a message to users or groups that needs no response

**Params:** Recipients, subject, body, attachments

**Use:** Tell the buyer a PO receipt was posted

**Suspends:** No

**Action:** Prompt

**Does:** Sends a message that requires a response, with optional voting rules and timeouts

**Params:** Recipients, choices, voting rule, timeout and destination

**Use:** Credit-hold release approval on an SLCos update

**Suspends:** Yes

**Action:** Run Background Task

**Does:** Submits a background task, such as a report or utility

**Params:** Task name, parameters

**Use:** Run a report after an approval is granted

**Suspends:** No

**Action:** Send BOD

**Does:** Builds a BOD from noun, verb and body and places it in the Replication Document Outbox

**Params:** BOD noun, BOD verb, body expression

**Use:** Publish a custom BOD to ION when a record changes

**Suspends:** No

**Action:** Send Email

**Does:** Sends an email to addresses outside the Inbox

**Params:** To, subject, body, attachments

**Use:** Email a supplier when a PO line due date changes

**Suspends:** No

**Action:** Set Attributes

**Does:** Sets attributes of the running handler or event as listed on its parameter form

**Params:** Attribute names and values

**Use:** Set values that later actions or Event Status read

**Suspends:** No

**Action:** Set Values

**Does:** Assigns values to event variables, or to properties of the row in an On item event

**Params:** Variable or property names and expressions

**Use:** Default a field on SLCoitems insert before the save commits

**Suspends:** No

**Action:** Sleep

**Does:** Pauses the handler for a period of time

**Params:** Duration

**Use:** Wait before re-checking an external status

**Suspends:** Yes

**Action:** Transform XML

**Does:** Applies a transform to XML and returns the result

**Params:** Source XML, transform, result variable

**Use:** Parse the result of a Dispatch IDO Request

**Suspends:** No

**Action:** Update Collection

**Does:** Inserts, updates or deletes rows in an IDO collection

**Params:** IDO, action (insert, update, delete), property values

**Use:** Write a log row to a user-defined table IDO

**Suspends:** No

**Action:** Wait

**Does:** Holds the handler until a condition is true or a timeout passes, then resumes

**Params:** Condition, retest interval, timeout

**Use:** Wait until a job is released before notifying the shop

**Suspends:** Yes

**Notes:** The 26 action types follow the SyteLine Action Type help. Newer releases can add further types, so check the Action Type list on your own Event Actions form. Parameter names are shown in plain terms: build exact syntax with Edit Parameters and Check Syntax.

## Content

**Intro:** This is a reference of the 26 application event action types on the Event Actions form in Infor SyteLine 8, 9 and 10. Each row says what the action does, which parameters matter, a typical SyteLine use and whether it makes the handler wait.

**Sections:**

#### How to use it

**Body:** Search for the job you need to do, for example 'approval', 'BOD' or 'block'. In SyteLine, open Event Handlers, pick the handler, click Event Actions, choose the Action Type and click Edit Parameters. Each action type opens its own parameter form, which writes the correct syntax back to the Parameters field. Infor recommends using those forms rather than typing parameters by hand, then clicking Check Syntax before saving. Give every action a description: when a handler has several Notify or Set Values steps, the description is what you see in the sequence list and in Event Status.

#### Synchronous handlers and actions that suspend

**Body:** A synchronous handler runs inside the user's request, and if it fails the whole sequence fails, which is what lets Fail block a save. Prompt, Wait and Sleep are adjourning actions: they wait for an outside stimulus or a time, and the event system sets the handler to retest or time out and resumes it later. That only works when the handler is allowed to suspend. For a user-facing validation, keep the synchronous part short and decisive (Load IDO Row, Branch, Fail) and move people-based approvals into a flow that can suspend.

**Bullets:**

- Fail and Finish end the handler; Branch and Goto move within it
- Prompt with several recipients needs a voting rule: Majority, Plurality, Conditional Plurality or Minimum Count
- Use Notify for information, Prompt only when you need an answer

#### Worked example: block item deletion

**Body:** Create a synchronous handler on IdoOnItemDelete applying to SLItems. Action 1, Load IDO Row, reads whether the item has open demand into a variable. Action 2, Fail, has a condition on that variable and a message such as 'Item has open orders; set it to Obsolete instead'. Action 3, Finish, ends with Success. Users deleting a clean item see no change, while a delete with open orders is rejected with the message. The same pattern, swapped to a Prompt, gives a credit-hold approval on SLCos updates.

#### Common mistakes

**Body:** The most common mistake is putting Prompt in a handler that cannot suspend and then wondering why users wait or the action errors. The second is using Execute IDO Request when the target is another site; Dispatch IDO Request is the one built for a system the user is not connected to. Third, people send Send BOD output and expect it to arrive immediately: the BOD goes to the Replication Document Outbox first, so check that form when it does not appear in ION. Finally, a Load IDO Collection without a tight filter and record cap can load thousands of rows on every save.

**Cta:** If you want approvals and notifications like these driven by plain-English questions over SyteLine data on your own servers, we can build that with you.

**Faq:**

#### What is Infor Mongoose?

**Answer:** Mongoose is the Infor application framework SyteLine and CSI are built on. It provides IDOs (the business object layer), the WinStudio form designer, the application event system with these action types, background tasks and the IDO request service used by APIs. Customising SyteLine mostly means working in Mongoose tools.

#### What is the difference between Notify and Prompt?

**Answer:** Notify sends a message that needs no reply and the handler carries on. Prompt sends a message with choices, waits for the response and returns it to the handler, optionally counting votes from several recipients and applying a timeout. Because Prompt waits, the handler must be able to suspend.

#### When should I use Dispatch IDO Request instead of Execute IDO Request?

**Answer:** Use Execute IDO Request to run an IDO request in the configuration where the event is running. Use Dispatch IDO Request when the request has to run on another site or system the user is not connected to, given by a URL. Its result comes back as XML that you usually parse with Transform XML.

#### Where do I see whether my event action ran?

**Answer:** Open the Event Status form for the event run, then Event Handler Status for each handler. You can see the actions executed, the result (Success or Failure), messages from Finish or Fail and any state set by Achieve Milestone. Prompts waiting for responses appear there too.

## Search terms

infor mongoose user guide, infor mongoose application, infor mongoose developer, what is infor mongoose, syteline event actions, syteline application event system, syteline prompt event action, syteline event handler fail action

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
