RECORDLEVELLOCKING

Die Funktion RECORDLEVELLOCKING liefert bei Verwendung einer SQL-Datenbank TRUE zurück, FALSE dagegen, wenn die Native-Datenbank verwendet wird.

Informationen

Weil die SQL- und Native-Datenbanken ein unterschiedliches Sperrverhalten besitzen und es somit Sinn macht unterschiedlichen C/AL-Code auszuführen, wird der Befehl RECORDLEVELLOCKING genutzt.

Beispiel

// Wenn SQL, dann LOCKTABLE sehr früh.
IF Rec.RECORDLEVELLOCKING THEN
  Rec.LOCKTABLE;
  [...]
// Wenn Native, dann LOCKTABLE sehr spät.
IF NOT Rec.RECORDLEVELLOCKING THEN
  Rec.LOCKTABLE(TRUE,TRUE);
  [...]
  Rec.MODIFY;