Добавление ссылки на другую карточку к карточке документа
Ниже приведён пример добавления ссылки на карточку библиотеки Базовые объекты в карточку типа Документ:
(1)
Document document = objectContext.GetObject<Document>(new Guid("00000000-0000-0000-0000-000000000000")); (2)
BaseCard card = objectContext.GetObject<BaseCard>(new Guid("00000000-0000-0000-0000-000000000001")); (3)
LinksLinkType linkType = objectContext.GetObject<LinksLinkType>(new Guid("502F7FE3-477F-492F-9F43-ED2AA7CB32D9")); (4)
IReferenceListService referenceListService = objectContext.GetService<IReferenceListService>(); (5)
ReferenceList referenceList = document.MainInfo.ReferenceList;
if (referenceList = null) (6)
{
referenceList = referenceListService.CreateReferenceList(); (7)
document.MainInfo.ReferenceList = referenceList;
}
referenceListService.CreateReference(referenceList, linkType, card, string.Empty, false); (8)
objectContext.SaveObject<Document>(document); (9)
1 | Инициализация контекста объектов. |
2 | Получение документа, в который добавляется ссылка. |
3 | Идентификатор карточки, которая должна быть добавлена в виде ссылки. |
4 | Получение типа ссылки (в примере соответствует типу "В ответ на").
Идентификатор может быть получен из Справочника ссылок. |
5 | Получение сервиса для работы со списками ссылок. |
6 | Получение существующего списка ссылок из документа, либо создание нового. |
7 | Создаем список ссылок и сохраняем его в карточку документа. |
8 | Создание слабой ссылки на карточку. |
9 | Сохранение документа. |