Лёгкое программирование под Autodesk Vault Часть 47
Обновление элемента из файла
В предыдущей статье опубликован код, показывающий, как создавать элементы из файлов . На этот раз я рассмотрим код, показывающий, как обновить эти элементы, если вы хотите, чтобы потреблять изменения файлов.
Код практически идентичен. Создание элементов на основе файлов и обновление элементов на основе файлов, на самом деле та же операция в сущности. Разница лишь в том, как процесс стартует. При создании элементов, вы начинаете с набором файлов. При обновлении элементов, вы начинаете с набором элементов.
Ниже приведен код операции обновления. На этот раз процесс запускает метод UpdatePromoteComponents . Опять же, это очень упрощенный пример. Более сложные спецификации могут включать больше кода.
- ItemService itemSvc = m_conn.WebServiceManager.ItemService;
- itemSvc.UpdatePromoteComponents(itemRevIds,
- ItemAssignAll.Default, false);
- DateTime timestamp;
- GetPromoteOrderResults promoteOrder =
- itemSvc.GetPromoteComponentOrder(out timestamp);
- itemSvc.PromoteComponents(timestamp, promoteOrder.PrimaryArray);
- ItemsAndFiles itemsAndFiles =
- itemSvc.GetPromoteComponentsResults(timestamp);
- // Изменить элементы по мере необходимости
- itemSvc.UpdateAndCommitItems(itemsAndFiles.ItemRevArray);
- Dim itemSvc AsItemService = m_conn.WebServiceManager.ItemService
- itemSvc.UpdatePromoteComponents(itemRevIds, _
- ItemAssignAll.Default, False)
- Dim timestamp AsDateTime
- Dim promoteOrder As GetPromoteOrderResults = _
- itemSvc.GetPromoteComponentOrder(timestamp)
- itemSvc.PromoteComponents(timestamp, promoteOrder.PrimaryArray)
- Dim itemsAndFiles AsItemsAndFiles = _
- itemSvc.GetPromoteComponentsResults(timestamp)
- ' Изменить элементы по мере необходимости
- itemSvc.UpdateAndCommitItems(itemsAndFiles.ItemRevArray)
Источник: http://justonesandzeros.typepad.com/blog/2014/08/updating-an-item-from-file.html
Обсуждение: http://adn-cis.org/forum/index.php?topic=1136
Опубликовано 07.12.2014