Автозаполняемые атрибуты

Тип автозаполняемые поля "autoassigned": true - указывает, что значение данного атрибута должно быть заполнено автоматически при создании экземпляра класса. Применяется в основном для атрибутов типа «Уникальный идентификатор» "unique": true для целосчисленных и строковых атрибутов, а также для атрибутов типа «Дата-время».

Принцип формирования:

  1. Для атрибутов «Дата-время» атрибуту должно быть присвоено значение текущего момента времени. Используется для меток создания и изменения.

  2. Для целочисленных атрибутов, если указано значение «Уникальный идентификатор» ("unique": true) при создании формы, заполняется случайным набором символов.

  3. Для строк, если указано значение «Уникальный идентификатор» ("unique": true), то должно быть сгенерировано случайное значение hex - размером с длину строки - в примере ниже 20 символов.

    var crypto = require('crypto');
    ID = crypto.randomBytes(20).toString('hex');
    
  4. Для типа «Глобальный идентификатор» - реализуется аналогично строке.

NB: Необходимо сделать проверку при сохранении. Поле должно генерироваться автоматически для пустых значений или даты. Для всех остальных (целое, строка) должны генерироваться ранее созданные значения.

Пример:

{
  "orderNumber": 50,
  "name": "auto",
  "caption": "auto",
  "type": 6,
  "size": null,
  "decimals": 0,
  "nullable": true,
  "readonly": false,
  "indexed": false,
  "unique": true,
  "autoassigned": true
}