#c# #api #webservice-client #opentext #livelink
#c# #API #веб-сервис-клиент #opentext #livelink
Вопрос:
У меня есть документ в livelink и документ, имеющий рабочий процесс. В этом рабочем процессе у нас есть вложения и некоторые атрибуты по умолчанию.
Мое требование получить данные рабочего элемента рабочего процесса. Я попытался использовать workflowservice
для доступа к деталям. Но мне нужно ProcessID
и SubProcessID
.
Может кто-нибудь сказать мне, как читать ProcessID
и SubProcessID
?
Как получить данные рабочего элемента рабочего процесса? Я использовал эту функцию: workflowservice.GetWorkItemdata(wc,processID,subprocessId,activityID)
Комментарии:
1. Какую версию Livelink / OpenText вы используете?
Ответ №1:
Вы можете использовать listWorkItems()
метод, предоставляемый WorkflowService
интерфейсом веб-службы.
Я добавляю сюда версию Java, показывающую, как извлекать данные рабочего элемента, поскольку я не уверен в C #, но процедура почти такая же:
WorkItemResult result = wfSvc.listWorkItems(null);
List<WorkItem> items = result.getWorkItems();
for (WorkItem item : items){
// Attached data
List<ApplicationData> dataList =
wfSvc.getWorkItemData(item.getProcessID(), item.getSubProcessID(), item.getID());
for (ApplicationData data : dataList){
if (data instanceof AttributeData){
AttributeData aData = (AttributeData) data;
AttributeGroupDefinition groupDef = aData.getAttributes();
for (Attribute attr : groupDef.getAttributes()) {
if (attr instanceof StringAttribute) {
StringAttribute sAttr = (StringAttribute) attr;
System.out.println("Attr: " sAttr.getDisplayName() " (" sAttr.getValues().get(0) ")");
}
}
}
}
}
Главное здесь то, что listWorkItems
метод позволяет вам легко получить доступ к каждому рабочему элементу ProcessID
SubProcessID
и ID
значениям.
Комментарии:
1. Спасибо abarisone. Я использовал ваш код, например Workflowservice. Getworkitems(). Но я получаю нулевое значение.