Триггер OnInputChange() срабатывает ВО ВРЕМЯ ввода данных,
т.е. вы вводите стринг из трёх букв "абв" == > этот триггер срабатывает 3 раза, т.е. ВО ВРЕМЯ ввода каждой буквы
То, что Вам нужно, это триггер OnAfterInput(), он срабатывает ПОСЛЕ OnInputChange() и ещё ДО OnValidate()
например в поле "Description":
Код:
Description - OnAfterInput(VAR Text : Text[1024];)
IF Text <> '' THEN BEGIN
// ваш программный код
......
......
END;
Причём надо работать в этом триггере с VAR-variable Text!
Чтобы узнать, в каком порядке отрабытавают триггеры, пропишите просто CONFIRM-Диалог в каждом триггере (в форме и в таблице), в C/AL HELP'e тоже кое-что нaписано.