DFC_QUERY_END_OF_COLLECTION При выполнении запроса в Documentum - PullRequest
0 голосов
/ 30 апреля 2020

Я рассматриваю старый Java проект, который состоит из пользовательского WorkflowMethod для Documentum. Это рабочий процесс, запускаемый экспортом проекта Kofax; Странно то, что этот рабочий процесс завершается правильно, когда запускается конкретным проектом Kofax; другой, новый проект с такой же конфигурацией приводит к ошибке.

Сложная часть этого запроса:

final IDfQuery destType = (IDfQuery)new DfQuery();
final String newFolderPath = thisObjectDoc.getString("destination_path");
final String oldFolderPath = thisObjectDoc.getString("i_folder_id");
try {
    System.out.println("Link a folder: " + newFolderPath);
    thisObjectDoc.link(newFolderPath);
    System.out.println("Unlink da folder: " + oldFolderPath);
    thisObjectDoc.unlink(oldFolderPath);
    thisObjectDoc.save();
}
catch (Exception e) {
    e.printStackTrace();
}
destType.setDQL("Select * from isa_tabella_picklist where folder_path='" + newFolderPath + "'");
IDfCollection path = null;
path = destType.execute(sess, 4);   //This is line 129
path.next();
final String newType = path.getString("dest_type");
final String alias_set = path.getString("alias_set");

Запрос допустим и должен содержать результат , Но я получаю эту ошибку для вызова execute ():

com.documentum.fc.common.DfEndOfCollectionException: [DFC_QUERY_END_OF_COLLECTION] Attempting to read beyond the end of the collection
    at com.documentum.fc.client.impl.collection.TypedDataCollection.validateStateForGet(TypedDataCollection.java:109)
    at com.documentum.fc.client.impl.collection.TypedDataCollection.doGetString(TypedDataCollection.java:88)
    at com.documentum.fc.client.DfTypedObject.getString(DfTypedObject.java:597)
    at com.documentum.fc.client.impl.collection.CollectionHandle.getString(CollectionHandle.java:152)
    at it.globo.WorkaroundLC.runDQL(WorkaroundLC.java:129)
    at it.globo.WorkaroundLC.doTask(WorkaroundLC.java:80)
    at com.documentum.bpm.rtutil.WorkflowMethod.execute(WorkflowMethod.java:214)

Что может быть причиной для этого? Я не понимаю, что validateStateForGet().

...