2015-11-12 4 views
0

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

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

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

ответ

0

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

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

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

0

Я думал, что стоит упомянуть проблему относительно accepted answer.

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

Команда 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); 

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

Working With Documents

+0

Действительно. На самом деле я не хотел выполнять операции выборки в дополнение к запросу SQL, чтобы минимизировать вызовы серверов. Мне нужны только свойства fetch, в идеале, в однократном, когда это необходимо (с PropertyFilter, как вы его упомянули, я признаю, что это может быть крайняя точка зрения). – Amessihel