更改adf表中的显示值

问题描述 投票:0回答:6

我是新工作的ADF和业务组件我有一个表格,其中有一个带有部门ID的columm。这个表是从另一个JSF页面填充的,我想显示部门名称,而不是部门ID我有业务组件,我的部门表中有视图。但我不知道如何在adf表中显示部门名称而不是de id我的adf表是只读的

oracle-adf
6个回答
2
投票

您可以创建一个LOV。在这里您可以选择需要在外部为用户显示的属性类型(在您的情况下为DNAME)和内部存储的值类型(在您的情况下为DNO),具体取决于所选的显示值。用户。

有关LOV创建,请参阅此链接 http://techblogoracle.wordpress.com/2013/10/14/how-to-create-list-of-values-lov-in-oracle-adf/


1
投票

在您的VO中为该属性创建一个LOV!然后,您有两种可能性:1-在页面中重新插入表格2-仅插入(重新插入)作为该表中只读列所需的属性!


1
投票

要显示部门的名称而不是departmentId,请在ADF表所基于的视图对象的departmentId属性上创建一个LOV,指向部门视图对象。

要更新现有的只读表,请从JSF中删除departmentId属性,然后重新添加。确保新属性是“ADF选择一个选项”。添加列后,选择下拉选择一个选项,并将只读属性更改为true。

<af:selectOneChoice value="#{row.bindings.DepartmentId.inputValue}"
                            label="#{row.bindings.DepartmentId.label}"
                            required="#{bindings.Employees_VO1.hints.DepartmentId.mandatory}"
                            shortDesc="#{bindings.Employees_VO1.hints.DepartmentId.tooltip}"
                            id="soc1" readOnly="true">

如果您现在运行此页面,它应该显示部门的名称而不是ID,同时仍然是只读的。

How to show departmentName instead of departmentId using an LOV - ADF


1
投票

如果您在相同的任务流中或共享数据控件并且您不希望将VO更改为基于两个EO,则可以添加具有名称的Transient属性,您将填充填充页面中的值数据。 使用LOV太令人头疼了。如果LOV列表很大,那么您将遇到性能问题,试图以错误的方式解决问题。


0
投票

您可以向VO添加引用的属性。因此,创建一个基于Emp和Dept的VO。例如,请看这里的视频:https://blogs.oracle.com/shay/entry/whenvalidateitem_trigger_in_ad


0
投票

如果值的数量不超过2或3,则使用lov或使用groovy Expression

用法:#{row.code eq'A'? '已批准':'已拒绝'}

© www.soinside.com 2019 - 2024. All rights reserved.