Codeunit.Run(Integer [, var Record]) Method

Version: Available or changed with runtime version 1.0.

Loads and runs the unit of AL code you specify. To use this method, you can specify a table associated with the codeunit when you defined the codeunit properties. This allows you to pass a variable with the method. The transaction that the codeunit contains is always committed due to the Boolean return value.

Syntax

[Ok := ]  Codeunit.Run(Number: Integer [, var Record: Record])

Parameters

Number
 Type: Integer
An integer data type that identifies the unit of AL code. If the codeunit you specify does not exist, a run-time error occurs. If you run the codeunit with a record from a table other than the one it is associated with, a run-time error occurs.

[Optional] Record
 Type: Record
This optional parameter identifies a record. This parameter is a record data type.

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.

Example

This example runs two codeunits. The first uses a record parameter. The second is defined without a source table.

var
    FiscalYearCloseInstance: Codeunit "Fiscal Year-Close";
    AppMgmtInstance: Codeunit ApplicationManagement;
    AccountRecord: Record "Accounting Period";
begin  
    AccountRecord.Init;  
    if not FiscalYearCloseInstance.Run(AccountRecord) then  
      Error('Codeunit run failed (with record).');  
    if not AppMgmtInstance.Run then  
      Error('Codeunit run failed.');  
end;

See Also

Codeunit Data Type
Get Started with AL
Developing Extensions