Свойство mandatory проверяется в validateWrite(). При создании записи из кода он, как правило, не выполняется, то есть ошибки, скорее всего, не будет. Для того чтобы отловить момент когда поле очищается лучше перекрыть insert или update и там сделать проверку что поле заполнено.
Если уж говорить про возможность вставки записей из кода, то тогда это тоже не панацея. Вставка из кода может происходить посредством инструкции doInsert и тогда табличный метод не вызовется
За это сообщение автора поблагодарили: Pustik (2).