Получить описание класса документа symbolicName без выборки

Я пытаюсь получить ClassDescriptionsymbolicName из IDocument объект. Кажется, я должен получить его ClassDescription даже если я просто хочу symbolicName,

Есть ли способ сделать это? Я просто хочу избежать выборки для каждого просматриваемого документа...

(Также IDocument.GetClassName не помогает, он возвращает "Документ")

2 ответа

Решение

Я наконец нашел способ, сделав SQL SELECT запрос на получение classDescription ID (который не является symbolicName ID, а точнее "внутренний"):

Select This, d.Id, d.ClassDescription
From Document d
where d.Id = ID

Кажется, что он легче, чем линия document.fetch(classDescription) (псевдозвонок), потому что он должен просто получить идентификатор.

Я подумал, что стоит упомянуть проблему, касающуюся принятого ответа.

Бывают случаи, когда выполнение запроса будет "легче", однако я считаю, что вы упускаете что-то, связанное с извлечением документа.

Команда fetchInstance FileNet может принимать PropertyFilter. В вашем случае вы могли бы сделать что-то вроде:

PropertyFilter pf = new PropertyFilter();
pf.AddIncludeProperty(new FilterElement(null, null, null, "ClassDescription", null));
doc = Factory.Document.FetchInstance(os, new Id("doc.ID()"), pf);

Возможно, вы захотите взглянуть на исходную версию этого документа и обязательно указать полный список фильтров свойств на этом этапе.

См. Работа с документами

Другие вопросы по тегам