#filenet-p8 #filenet #filenet-content-engine
Вопрос:
String queryFormat = "SELECT [This] FROM [PropertyTemplate] WHERE ([SymbolicName] = ''Name'')"; SearchScope scope = new SearchScope( objectStore ); String query = MessageFormat.format(queryFormat, name ); RepositoryRowSet fetchRows = scope.fetchRows(new SearchSQL( query ), null, null, null ); Iteratorlt;?gt; iterator = fetchRows.iterator(); if ( !iterator.hasNext() ) { return null; } RepositoryRow row = (RepositoryRow) iterator.next(); PropertyTemplate propertyTemplate= (PropertyTemplate) row.getProperties().getObjectValue("This"); Document document = Factory.PropertyTemplate.fetchInstance(os,propertyTemplate.get_Id(), null); LocalizedString localDisplayName=Factory.LocalizedString.createInstance(); localDisplayName.set_LocalizedText("updatedName"); localDisplayName.set_LocaleName(objectStore.get_LocaleName()); propertyTemplate.set_DisplayNames(Factory.LocalizedString.createList()); propertyTemplate.get_DisplayNames().add(localDisplayName); propertyTemplate.save(RefreshMode.REFRESH);
мы используем приведенный выше код, но мы столкнулись с проблемой ниже
FNRCE0057E:E_READ_ONLY:метод не удался, поскольку объект или свойство доступны только для чтения.Имена отображаемых свойств, доступных только для чтения, не могут быть обновлены.
Комментарии:
1. В моей системе немного измененная версия вашего кода работает правильно. Вы проверяли, имеет ли пользователь достаточно прав для изменения шаблона свойств? Хороший способ проверить это-посмотреть, может ли пользователь выполнить действие в ACCE с помощью действия «Локализовать шаблон свойств» в контекстном меню хранилища объектов.