Изменить элемент в представлении CD
Я хочу изменить элемент в представлении cds, чтобы изменить способ его отображения. Я попытался использовать виртуальные элементы, и это прекрасно работает, если я беру данные из отдельного элемента (сохраняя исходные данные) и помещаю их в новый виртуальный элемент.
Однако я не могу понять, как изменить сам элемент, не отображая лишний элемент в моей таблице. Если я пытаюсь скрыть оригинал, данные загружаются неправильно. Если я пытаюсь сделать исходный элемент виртуальным, он теряет свои собственные данные.
Как правильно добиться того, чего я хочу?
1 ответ
Я только что провел собственное тестирование относительно того, как исключить исходную колонку в 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'
).