如何使用JScript设置List值



在FileNet中,使用FEM或ACCE,可以使用JScript来设置对象的属性值。官方IBM指南提供了这个示例(用于字符串):

importClass(Packages.com.filenet.api.property.Properties);
importClass(Packages.com.filenet.api.constants.RefreshMode);
function OnCustomProcess (CEObject)
{
CEObject.refresh();
CEObject.getProperties().putValue("DocumentTitle", "Test1");
CEObject.save(RefreshMode.REFRESH);
}

但有可能做同样的事情对于更复杂的对象?我特别指的是StringList类型。web上没有这样的例子,定义一个类似js的数组是行不通的。

对于更复杂的对象绝对可以这样做。其中大部分只是遵循使用Java时遵循的路径,但将变量类型的名称更改为var。因此,设置多值字符串属性值的代码如下:

importClass(Packages.com.filenet.api.constants.RefreshMode);
importClass(Packages.com.filenet.api.core.Factory);
function OnCustomProcess (CEObject)
{
CEObject.refresh();
var list = Factory.StringList.createList();
list.add("Value 1");
list.add("Value 2");
CEObject.getProperties().putObjectValue("TestMultiValueProperty1", list);
CEObject.save(RefreshMode.REFRESH);
}

我经常使用putObjectValue()方法而不是putValue()方法,因为JavaScript有时在确定应该使用哪个类型安全版本的putValue()时存在问题。

对于许多示例,您可以转到全局配置>数据设计;Add-ons部分。不同插件的导入前和导入后脚本包含了大量相关的JavaScript代码。

相关内容

  • 没有找到相关文章

最新更新