Представляет организационную структуру в виде дерева. Используется для получения корневого элемента организационной структуры, для поиска элемента по имени, а также для валидации дерева организационной структуры.

Тип не имеет конструктора. Создать новый элемент можно с помощью метода OrganisationStructure.createTree:

const tree = System.organisationStructure.createTree('Генеральный директор');

Текущее дерево организационной структуры можно загрузить с помощью метода OrganisationStructure.fetchTree:

const tree = await System.organisationStructure.fetchTree();

const newItem = System.organisationStructure.createItem('Директор по маркетингу', OrganisationStructureItemType.Position);

tree.getRoot().addChild(newItem);
const errs = await tree.validate();
if (errs.length === 0) {
    // Валидация успешна
}

Hierarchy

  • OrganisationStructureTree

Methods

find

  • Метод OrganisationStructureTree.find производит поиск элемента организационной структуры по названию.

    Будет возвращен первый найденный элемент или undefined, если такого элемента нет.

    Parameters

    • name: string

      Название элемента.

      const item = tree.find('Отдел снабжения');
      if (item === undefined) {
          // Элемент не найден
      }
      

    Returns OrganisationStructureItem | undefined

getRoot

  • Метод OrganisationStructureTree.getRoot позволяет получить корневой элемент организационной структуры.

    const tree = await System.organisationStructure.fetchTree();
    const root = tree.getRoot();
    

    Returns OrganisationStructureItem

validate

  • Метод OrganisationStructureTree.validate проводит валидацию организационной структуры.

    const errs = await tree.validate();
    if (errs.length === 0) {
         // Валидация успешна
    }
    

    В случае если валидация не пройдена, метод возвращает массив с ошибками. При успешной валидации возвращается пустой массив.

    Returns Promise<ErrorObject[]>