Session.StartSession(var Integer, Integer, Duration [, Text] [, var Record]) Method

Version: Available or changed with runtime version 7.1.

Starts a session without a UI and runs the specified codeunit.

Syntax

[Ok := ]  Session.StartSession(var SessionId: Integer, CodeunitId: Integer, Timeout: Duration [, Company: Text] [, var Record: Record])

Note

This method can be invoked without specifying the data type name.

Parameters

SessionId
 Type: Integer
The ID of the new session that is started. The ID is assigned to the SessionID variable after the session is started successfully. This parameter is passed by reference to the method.

CodeunitId
 Type: Integer
The ID of the codeunit to run when the session is started.

Timeout
 Type: Duration
Specifies the timeout of the created session. If not specified a default timeout will be used; for OnPrem, the default timeout is set on the server, for SaaS the current default timeout is 12 hours, and may change in the future.

[Optional] Company
 Type: Text
The company in which to start the session. By default, the session is started in the same company as the calling session.

[Optional] Record
 Type: Record
A record that is passed to the OnRun trigger of the codeunit that runs when the session is started.

Return Value

[Optional] Ok
 Type: Boolean
true if the operation was successful; otherwise false. If you omit this optional return value and the operation does not execute successfully, a runtime error will occur.

Remarks

The session is started on the same Business Central instance from which the method is called. The session that is started is a background session and therefore has no UI. The session executes using the same user credentials as the calling AL code.

For information about how dialog boxes are handled in a background session, see Dialog box behavior.

See Also

Session Data Type
Get Started with AL
Developing Extensions