Я работаю с NAV C / AL, и у меня есть эта функция, которая является действием на странице, чтобы отозвать элемент (в данном случае это книга).Я хочу, чтобы эта функция проверяла статус книги.Если он уже отозван, я хочу получить сообщение о том, что эта книга уже находится в режиме «отозвать».
Withdraw(Book : Record "Book ") the name of the fun
LibraryLedgerEntry.TESTFIELD(Status,LibraryLedgerEntry.Status::Withdraw); BEGIN
WITH Book DO BEGIN
IF CONFIRM (STRSUBSTNO(ConfWithdraw,"No.",Title),TRUE) THEN BEGIN
CheckLedgerEntry("No.");
CreateLedgerEntry("No.",'',4); // 4 is the option number 4 which is withdraw
END
END
END;
CreateLedgerEntry(BookNr : Code[20];CustNr : Code[20];NewStatus : ' ,In Storage,Borrowed,Returned,Withdraw') here is the fun that create the new ledgerentry
WITH LibraryLedgerEntry DO BEGIN
RESET;
INIT;
"Entry No." := GetLastEntryNo;
"Book No." := BookNr;
"Customer No." := CustNr;
Active := TRUE;
Status := NewStatus;
"Posting Date" := TODAY;
INSERT(TRUE);
END;
CheckLedgerEntry(BookNo : Code[20]) here is the fun that checks the last selected item
WITH LibraryLedgerEntry DO BEGIN
RESET;
SETRANGE("Book No.",BookNo);
SETRANGE(Active,TRUE);
IF FINDLAST THEN BEGIN
Active := FALSE;
MODIFY;
END