- Главная [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
- Начало работы
- Как решить вашу задачу
-
API
-
Типы объектов
- DispositionType
- ProcessInstanceState
- ProcessTaskState
- ApplicationItemRegistration
- ApplicationProjectItem
- ApplicationProjectItemRef
- ApplicationProjectPlanElementItem
- ApplicationProjectPlanElementItemRef
- BaseApplicationItem
- BaseApplicationItemRef
- BaseItem
- BaseItemData
- CurrentUserItem
- DirectoryData
- DirectoryItem
- EmployeeItemData
- EmployeeItemParams
- EmployeeItemProcesses
- FileData
- FileItem
- FileItemRef
- FileVersionData
- FileVersionItem
- ImageData
- ImageItem
- ImageItemRef
- InstanceAddr
- Item
- ItemData
- ItemRef
- MailMessageData
- MailMessageItem
- MailMessageItemRef
- OrganisationStructureData
- OrganisationStructureItem
- OrganisationStructureItemRef
- ParamsItem
- ProcessInstanceData
- ProcessInstanceItem
- ProcessInstanceItemRef
- ProcessTaskData
- ProcessTaskItem
- ProcessTaskItemRef
- ProcessTemplate
- ProcessTimer
- ReminderData
- ReminderItem
- ReplacementData
- ReplacementItem
- StatusHistoryData
- StatusHistoryItem
- StatusHistoryItemRef
- TaskItemExit
- UserData
- UserGroupData
- UserGroupItem
- UserGroupItemRef
- UserItem
- UserItemRef
- ApplicationItem
- ApplicationItemRef
- Типы данных
- Глобальные константы
- Работа с приложениями
- Веб-запросы
- Права доступа
- Документооборот
- Линии
- Виджет «Код»
- Подписи
- Рабочие календари
- Интеграция с IP-телефонией
- Интеграция с сервисами рассылок
-
Типы объектов
Элемент организационной структуры
Представляет собой один из элементов иерархии организационной структуры: должность, отдел или группу.
Тип не имеет конструктора. Создать новый элемент можно с помощью метода OrganisationStructure.createItem:
const item = System.organisationStructure.createItem('Директор по развитию', OrganisationStructureItemType.Position);
Добавить вновь созданный элемент в существующую организационную структуру (к заданному родителю) можно с помощью метода OrganisationStructureItem.addChild.
После внесения изменений в организационную структуру ее необходимо сохранять с помощью метода OrganisationStructure.save.
const tree = await System.organisationStructure.fetchTree(); tree.getRoot().addChild(item); const errs = await System.organisationStructure.save(tree); if (errs.length === 0) { Context.data.debug = "Успешно сохранено"; }
Type parameters
I: Item<ItemData>
I: Item<ItemData>
Hierarchy
Properties
Readonly code
Код приложения цели ссылки (код приложения).
Readonly data
Значения полей объекта.
Readonly fields
Описание полей объекта.
Readonly id
Идентификатор цели ссылки.
Readonly namespace
Пространство имен цели ссылки (код раздела приложения).
Methods
addChild
Метод позволяет добавить дочерний элемент для текущего элемента.
Parameters
item: OrganisationStructureItem
Returns void
fetch
Запрос полных данных объекта-ссылки.
Returns Promise<OrganisationStructureItem>
find
Метод позволяет организовать поиск на поддереве элементов, где корень — текущий элемент.
Будет возвращен первый удовлетворяющий предикату элемент или
undefined
, если таких элементов нет.Parameters
predicate: function
Parameters
item: OrganisationStructureItem
Returns boolean
Returns OrganisationStructureItem | undefined
getChildren
Метод позволяет получить дочерние элементы для текущего элемента.
const children = someItem.getChildren();
В случае если элемент не имеет дочерних элементов, метод вернет пустой массив.
Returns OrganisationStructureItem[]
getParent
Метод позволяет получить родительский элемент для текущего элемента.
const parent = someItem.getParent();
В случае если элемент не имеет родителя, метод вернет значение undefined.
Returns OrganisationStructureItem | undefined
isDepartment
Метод возвращает
true
, если элемент является отделом, иначе —false
.const item = tree.getRoot().find(i => i.data.name === 'Менеджеры'); if (item && item.isDepartment()) { // item является отделом }
Returns boolean
isGroup
Метод возвращает
true
, если элемент является группой, иначе —false
.const item = tree.getRoot().find(i => i.data.name === 'Менеджеры'); if (item && item.isGroup()) { // item является группой }
Returns boolean
isPosition
Метод возвращает
true
, если элемент является должностью, иначе —false
.const item = tree.getRoot().find(i => i.data.name === 'Менеджеры'); if (item && item.isPosition()) { // item является должностью }
Returns boolean
moveAfter
Метод позволяет переместить элемент на одну позицию вправо на дереве оргструктуры.
Перемещение происходит среди дочерних элементов родителя данного элемента, т. е. на одном уровне организационной структуры. Метод влияет только на визуальное представление организационной структуры на странице ее редактирования.
Returns void
moveBefore
Метод позволяет переместить элемент на одну позицию влево на дереве оргструктуры.
Перемещение происходит среди дочерних элементов родителя данного элемента, т.е. на одном уровне организационной структуры. Метод влияет только на визуальное представление организационной структуры на странице ее редактирования.
Returns void
moveToParent
Метод позволяет сделать текущий элемент дочерним для заданного элемента.
Parameters
parent: OrganisationStructureItem
Returns void
normalize
Удаление дублирующихся данных в массивах.
Выполнить удаление дубликатов в полях, в которых хранятся массивы ссылок на объекты системы (пользователи, файлы, элементы приложений, документы).
Этот метод, например, можно вызвать после массового изменения данных в объекте.
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
removeChild
Метод позволяет удалить один или несколько дочерних элементов текущего элемента.
Parameters
item: OrganisationStructureItem | OrganisationStructureItem[]
Returns void
Properties
Methods