Record.Mark([Boolean]) Method
Version: Available or changed with runtime version 1.0.
Marks a record. You can also use this method to determine whether a record is marked.
Syntax
[Marked := ] Record.Mark([Mark: Boolean])
Parameters
Record
Type: Record
An instance of the Record data type.
[Optional] Mark
Type: Boolean
Specifies if a record is marked.
Return Value
[Optional] Marked
Type: Boolean
true if the record is marked; otherwise, false.
Remarks
The mark on a record is temporary, and disappears when the current session ends. The Mark method is valid for the specific record instance/variable, and not shared between all variables of the same record type in a session.
You can use the MarkedOnly (Record) Method to activate a special filter where your view of the table includes only records marked by the Mark (Record) method.
Example 1
This example shows how to use the Mark method, assuming that no records are marked initially. The example loops through the customer records and marks a specific record. The message dialog displays the records one by one with information about whether the record is marked or not.
codeunit 50121 MarkedRecord
{
trigger OnRun()
var
Customer: Record Customer;
Marked: Boolean;
Text000: Text;
begin
Text000 := 'Customer."No." %1, Marked?: %2';
Customer.SetCurrentKey("No.");
Customer."No." := '10000';
Customer.Find('=');
Customer.Mark(true); // Mark a record.
Customer.Find('-'); // Find first record.
repeat // Go through records
Marked := Customer.Mark; // Test if marked.
Message(Text000, Customer."No.", Marked);
until
Customer.Next = 0;
end;
}
Example 2
This next example shows how to use the Mark method together with the MarkedOnly method, assuming that no records are marked initially.
codeunit 50121 MarkedOnlyRecord
{
trigger OnRun()
var
Customer: Record Customer;
No1: Integer;
No2: Integer;
Text001: Text;
Text002: Text;
begin
Text001 := 'Number of records before MarkedOnly: %1\';
Text002 := 'Number of records after MarkedOnly: %2';
Customer.SetCurrentKey(Customer."No.");
Customer."No." := '10000';
Customer.Find('=');
Customer.Mark(true);
No1 := Customer.Count();
Customer.MarkedOnly(true);
No2 := Customer.Count();
Message(Text001 + Text002, No1, No2);
end;
}