2

我想修改 cds 视图中的元素以更改它的显示方式。我尝试使用虚拟元素,如果我从单独的元素(存储原始数据)中获取数据并将其放入新的虚拟元素中,它工作正常。

但是,我无法弄清楚如何修改元素本身而不在表中显示多余的元素。如果我尝试隐藏原始数据,则数据未正确加载。如果我尝试使原始元素虚拟化,它会丢失它自己的数据。

实现我想要的正确方法是什么?

4

1 回答 1

0

我刚刚对如何排除您在SmartTable. 下面是我的测试演示。

要在表格设置对话框的“列”选项卡中排除您的原始列,有一个注释 sap:visible = false

Define重新定义你的 mpc_ext的方法:

data: 
lo_entity_type type ref to /iwbep/if_mgw_odata_entity_typ,
lo_property    type ref to /iwbep/if_mgw_odata_property,
lo_annotation  type ref to /iwbep/if_mgw_odata_annotation.

super->define( ).

lo_entity_type = model->get_entity_type( 'YOUR_ENTITY_TYPE' ).

lo_property = lo_entity_type->get_property( 'YOUR_ORIGINAL_COLUMN' ) .

lo_annotation = lo_property->/iwbep/if_mgw_odata_annotatabl~create_annotation( /iwbep/if_mgw_med_odata_types=>gc_sap_namespace ).
lo_annotation->add(
    iv_key    = 'visible'
    iv_value  = 'false'
).
于 2017-09-10T03:05:12.997 回答