Skip to content
mazzy edited this page Dec 29, 2019 · 9 revisions

Assert методы ничего не возвращают. Бросают исключение, если в аргументах не подходящие параметры или args не инициализирован.

Assert методы - это статические методы, в отличие от Ensure methods.

Метод Должно быть
assertCallerFormName Вызвавший объект должен являться потомком FormRun и название формы совпадает с указанным. Иначе бросает исключение
assertCallerType Вызвавший объект должен являться потомком указанного класса. Иначе бросает исключение
assertEnum Тип и значение enumа в аргументах должен совпадать с указанным. Иначе бросает исключение
assertEnumType Тип enum в аргументах должен совпадать с указанным. Иначе бросает исключение
assertFormDatasource Переданная запись должна находиться в датасорсе. Иначе бросает исключение
assertParm Значение строкового параметра должно удовлетворять шаблону. Иначе бросает исключение. Проверка выполняется при помощи функции match. Если оставить шаблон по умолчанию, то бросает исключение если строка параметров пустая.
assertRecord Переданная запись должна быть из указанной таблицы. Иначе бросает исключение
assertRecordExists Переданная запись должна существовать в базе данных recId != 0. Иначе бросает исключение
assertRecordTableIds Переданная запись должна быть одной из перечисленных в контейнере таблиц. Иначе бросает исключение

Пример использования

public static void main(Args args)
{
    ProdTable prod;
;
    SysArgs::assertCallerType(args, classnum(FormRun));
    prod = SysArgs::getRecord(args, prod.TableId);
    ...
Clone this wiki locally