在 Documentum 中显示自定义属性 - Webtop

发布于 2024-08-16 03:18:14 字数 599 浏览 5 评论 0原文

我正在关注一篇文章,该文章解释了如何使用 ICustomAttributeDataHandler 类。

我正在为收件箱屏幕创建自定义列,但问题是我为自定义属性设置的值没有反映在屏幕上。

作为测试,我将任务名称更改为“whoKnows”。但这段代码不会影响屏幕上的输出:(

ICustomAttributeRecordSet.setCustomAttributeValue(i, "taskName", "whoKnows");

当查看收件箱时,我能够从自定义类打印调试行,因此我知道我的代码正在运行。)

有人对该文章的评论写道:

用户必须调用 “setCustomAttributesInQuery() 方法 在传递 a 的数据提供者上 自定义属性的字符串数组

...这是什么意思?这可能是我的问题吗?

谢谢。

I am following an article that explains how to use the ICustomAttributeDataHandler class.

I am creating a custom column for the inbox screen, but the problem is that the value I set for my custom attribute is not being reflected on the screen.

As a test I am changing the task name to "whoKnows". But this code is not effecting what is output on the screen:

ICustomAttributeRecordSet.setCustomAttributeValue(i, "taskName", "whoKnows");

(I am able to print debug lines from my custom class when the inbox is viewed, so I know my code is being run.)

Someone on the comments of that article wrote:

the user must call the
"setCustomAttributesInQuery() method
on the dataprovider passing in a
string array of the custom attributes

...what does that meen? Could this be my problem?

thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

痴情换悲伤 2024-08-23 03:18:14

说实话,我已经使用过Webtop,但只是作为一个用户。我在dm 开发者讨论组中找到了一个有用的帖子 , 尽管:

用于在中创建自定义列
您不需要查看文档列表
这个复杂的程序。你可以使用
自定义属性数据处理程序
这个。

  1. 首先在对象列表组件 xml 文件中添加自定义列
    “column”标签中的定义。你
    甚至可以添加静态列而不是
    文档属性。
  2. 现在创建一个实现 ICustomAttributeDataHandler 的类。
  3. 实现默认方法 getRequiredAttributes 和 getData
    功能。
  4. 在 getRequiredAttributes 中添加您所在对象的属性
    寻找。
  5. 在 getdata 方法中检索每一行,然后基于
    您看到的属性,只需设置
    您想要的值。 6)最后
    在 app.xml 文件中定义您的类

WDK开发中有一节
指南有关
ICustomAttribuetDataHandlers。寻找
名为“添加自定义
数据网格的属性”。

我不确定这是否是最终的解决方案,但我希望它有所帮助!

To be honest, I have already used Webtop, but just as an user. I found a post in the dm developer discussion group that can be useful, though:

For creating a custom column in the
doclist you dont need to go through
this complex procedures. You can use
custom attribute datahandlers for
this.

  1. First in your object list component xml file add your custom column
    definition in the "columns" tag. You
    can even add static columns instead of
    the documentum attributes.
  2. Now create a class which implements the ICustomAttributeDataHandler.
  3. Implement the default the methods getRequiredAttributes and the getData
    function.
  4. In getRequiredAttributes add attributes of the object that you are
    looking for.
  5. In your getdata method retrieve each row and then based on the
    attribute that you see, just set the
    value that you want to. 6) Finally
    define your class in the app.xml file

There is a section in WDK developement
guide regarding
ICustomAttribuetDataHandlers. Look for
the topic named "Adding custom
attributes to a datagrid".

I'm not sure if this is the final solution, but I hope it helps!

聽兲甴掵 2024-08-23 03:18:14

为了回答有关 setCustomAttributesInQuery() 的问题,

WDK 中的每个数据网格都由底层数据提供程序支持。您可以使用以下代码获取此provider。

Datagrid datagrid = (Datagrid)getControl("doclist_grid",com.documentum.web.form.control.databound.Datagrid.class);
DataProvider dp = datagrid.getDataProvider();

完成此操作后,您可以打电话给

dp.setCustomAttributesInQuery(myArr);

我,我实际上不确定这是否是您问题解决方案的一部分,但您可以尝试一下,看看它会给您带来什么结果。

To answer you question about setCustomAttributesInQuery()

every datagrid in WDK is backed by an underlying data provider. You can get this proivder by using the following code.

Datagrid datagrid = (Datagrid)getControl("doclist_grid",com.documentum.web.form.control.databound.Datagrid.class);
DataProvider dp = datagrid.getDataProvider();

Once you've done that, you can call

dp.setCustomAttributesInQuery(myArr);

I'm not actually sure if this is part of the solution to your problem, but you could try this and see where it gets you.

孤云独去闲 2024-08-23 03:18:14

您必须配置收件箱组件。

如果使用经典视图,请转到收件箱列表组件并添加您的自定义属性。

<column>
    <attribute>CustomAttributeName</attribute>
    <label>Custom Attribute Label</label>
    <visible>true</visible>
</column>

您的自定义属性必须属于 dmi_queue_item 子类型的自定义类型,因为 inboxlist 仅显示 dmi_queue_item 对象。

希望这有帮助,

问候,
特哈斯。

You have to configure the inbox component.

if using classic view, go to inboxlist component and add your custom attribute.

<column>
    <attribute>CustomAttributeName</attribute>
    <label>Custom Attribute Label</label>
    <visible>true</visible>
</column>

Your custom attribute has to be in a custom type that is a sub type of dmi_queue_item, because inboxlist shows only dmi_queue_item objects.

Hope this helps,

Regards,
Tejas.

当梦初醒 2024-08-23 03:18:14

这可能不是问题,但根据您的代码,我无法判断您是否正在执行此操作:

ICustomAttributeRecordSet.setCustomAttributeValue(i, "taskName", "whoKnows");

或此操作:

ICustomAttributeRecordSet rs;
rs.setCustomAttributeValue(i, "taskName", "whoKnows");

您应该在 rs 对象实例上调用 setCustomAttributeValue 方法,而不是在接口上。

This may be a non-issue, but based on your code, I can't tell if you're doing this:

ICustomAttributeRecordSet.setCustomAttributeValue(i, "taskName", "whoKnows");

or this:

ICustomAttributeRecordSet rs;
rs.setCustomAttributeValue(i, "taskName", "whoKnows");

You should be calling the setCustomAttributeValue method on the rs object instance, not on the interface.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文