Для создания замещения используется метод System.replacements.create. После заполнения информации о замещении необходимо сохранить информацию, вызвав метод ReplacementItem.save.

// Создадим замещение для сотрудника в отпуске
const rpl = System.replacements.create();

rpl.data.type = rpl.fields.type.variants.reassign;
rpl.data.absent = Context.data.__createdBy;
rpl.data.replacement = Context.data.substitution;
rpl.data.begin = Context.data.vacation_start;
rpl.data.end = Context.data.vacation_end;

await rpl.save();

Type parameters

Hierarchy

Properties

Readonly code

code: string

Код приложения цели ссылки (код приложения).

Readonly data

data: Based<Partial<ReplacementData>>

Значения полей объекта.

Readonly fields

fields: Readonly<object>

Описание полей объекта.

Readonly id

id: string

Идентификатор цели ссылки.

Readonly namespace

namespace: string

Пространство имен цели ссылки (код раздела приложения).

Methods

delete

  • delete(): Promise<void>
  • Метод позволяет удалить не начатое замещение пользователя.

    const rpl = await System.replacements.search().where(f => f.absent.eq(Context.data.user!)).first();
    if(rpl != undefined) {
     await rpl.delete();
    }
    

    Returns Promise<void>

fetch

interrupt

  • interrupt(): Promise<void>
  • Метод позволяет прервать замещение пользователя.

    const rpl = await System.replacements.search().where(f => f.absent.eq(Context.data.user!)).first();
    if(rpl != undefined) {
     await rpl.interrupt();
    }
    

    Returns Promise<void>

normalize

  • normalize(): void
  • Удаление дублирующихся данных в массивах.

    Выполнить удаление дубликатов в полях, в которых хранятся массивы ссылок на объекты системы (пользователи, файлы, элементы приложений, документы).

    Этот метод, например, можно вызвать после массового изменения данных в объекте.

    const app1 = await Context.data.app1.fetch();
    const app2 = await Context.data.app2.fetch();
    
    app1.data.executors.push(app2.data.executors);
    app1.normalize();
    
    // Далее перебираем элементы нового массива
    app1.data.executors.forEach( ... );
    

    Returns void

save

  • save(): Promise<void>
  • Сохранение замещения.

    Returns Promise<void>