Проверка заполнения характеристик объекта

Проверка заполнения характеристик объекта#

Проверяет, что для объекта заполнены все характеристики, настроенные на его типе объекта. Если хотя бы одна характеристика не заполнена, смена состояния прерывается с сообщением об ошибке.

Место применения: Bts-процедура при переводе состояния

Тип: JEXL-скрипт

var ropaObjAttr = Btk_ObjectAttrByObjectTypeApi.idxObjectType().byKey(new ru.bitec.app.gtk.lang.NLong(rop.idObjectType));

for (ropObjAttr : ropaObjAttr) {
  // Проверка универсальной характеристики
  if (isNotNull(ropObjAttr.idUniversalCharacteristic) && Bs_OrgCheckSessionApi.getUniCharValue(rop, ropObjAttr.idUniversalCharacteristic) == null) {
    raise("Запрещена смена состояния. Заполнены не все атрибуты характеристик");
  }

  // Проверка обычного атрибута характеристики
  if (isNotNull(ropObjAttr.idAttribute) && Bs_OrgCheckSessionApi.getAttrValue(rop, ropObjAttr.idAttribute) == null) {
    raise("Запрещена смена состояния. Заполнены не все атрибуты характеристик");
  }
}