MDG-M:在运行期间存储"物料描述"

2020-09-08 05:53发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我不明白在运行期间...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我不明白在运行期间材料描述如何存储在变更请求上下文中。

实体MATERIAL中有属性TXTMI。 但是MDG如何存储用于材料描述的多个条目?

假设有2种描述:一种是英语,另一种是西班牙语。 我如何读取和处理这些cr数据?

我尝试使用便捷api(方法:READ_ENTITY_DATA)读取实体数据。 但是然后我只得到其中一项,而没有有关键(语言代码)的信息。 存储的语言代码和描述的组合在哪里?

最诚挚的问候,

Hannes

4条回答
Nir深蓝
2020-09-08 06:47

你好 Ingo Bruss

我也尝试以相同的方式添加多种语言。 当尝试使用结构为/mdgmm/_st_mm_pp_material的MATERIAL实体时,我们无法同时添加基本数据和描述数据。 添加代码以供参考

数据:gt_entity_keys类型usmd_gov_api_ts_ent_tabl,
wa_entity_keys类型usmd_govity_api_s_ent_tabl。
数据:gt_entity_data类型TYPE usmd_gov_api_ts_ent_data,
wa_ent_data_type。

数据:g_s_entity TYPE REF TO数据,

g_t_entity TYPE REF TO data。

FIELD-SYMBOLS:类型/mdgmm/_s_mm_pp_material,
任何表类型。

**************************************
*'材料'
******************************************
清除:g_s_entity,g_t_entity。
数据 lv_struct类型usmd_struct。
尝试。
go_mdg_conv-> get_entity_structure(
导出
iv_entity_name ='MATERIAL'
iv_struct_type = go_mdg_conv-> gc_struct_key_attr
" _if_usmd_model_type
er_structure = g_s_entity
er_table = g_t_entity
)。
捕获cx_usmd_gov_api INTO go_error。
g_error_string = go_error-> get_text()。

ENDTRY。 > ASSIGN g_s_entity-> *至
ASSIGN g_t_entity-> * TO

-material = im_matnr。
-mbrsh = im_indsec。< br> -mtart = im_mtype。
-normt = im_mdesc。" txtmi
-meins = im_buom。
-ntgew = im_ntgew。
-brgewmara = im_gtweg。
-gewei_mat = im_gewei。
-txtmi = im_mdesc。
插入 INTO TABLE

清除wa_entity_keys。
wa_entity_keys-entity ='MATERIAL'。
wa_entity_keys-tabl = g_t_entity。
插入wa_entity_keys
INTO <表>。 br>尝试。
go_mdg_conv->入队实体(
导出
it_entity_keys = gt_entity_keys
)。
捕获cx_usmd_gov_api_core_error INTO go_error。 "
g_error_string = go_error-> get_text()。
捕获cx_usmd_gov_api_entity_lock INTO go_error。"
g_error_string = go_error-> get_text()。
CATCH cx_usmd_gov_api INTO go_error。 "
g_error_string = go_error-> get_text()。
lt_message = go_mdg_conv-> get_messages()。
将lt_message的行添加到et_message。
ENDTRY。

清除wa_entity_data。 br> wa_entity_data-entity ='材料'。
wa_entity_data-entity_data = g_t_entity。

插入wa_entity_data插入表gt_entity_data。
**************** *********************
*'材料描述'
****************** *******************
清除:g_s_entity,g_t_entity。

字段符号:类型/mdgmm/_st_mm_pp_material。
FIELD-SYMBOLS:任何表类型。
FIELD-SYMBOLS:任何类型表。
* BREAK jparamas。
TRY。
go_mdg_conv-> get_entity_structure(
导出
> iv_entity_name ='材料'
iv_struct_type = go_mdg_conv-> gc_struct_key_txt_langu
iv_edition = abap_false
IMPORTING
er_structure = g_s_entity
er_table = g_t_govity IN

g_error_string = go_error-> get_text()。
ENDTRY。

ASSIGN g_s_entity-> *到
ASSIGN g_t_entity-> *到


-material = im_matnr。
**从t002选择spras 插入表@DATA(lt_t002)。 "语言
***将lt_t002插入数据(lwa_t002)。
-langu ='E'。" lwa_t002-spras。
-txtmi = im_mdesc。
插入 插入表

-langu ='F'。" lwa_t002-spras。
-txtmi = im_mdesc。
插入插入表
** ENDLOOP。

清除wa_entity_keys。
wa_entity_keys-entity ='MATERIAL'。
wa_entity_keys-tabl = g_t_entity。
插入wa_entity_keys <进入表gt。 br>
清除wa_entity_data。
wa_entity_data-entity ='材料'。
wa_entity_data-entity_data = g_t_entity。


插入wa_entity_data插入表gt_entity_data。

一周热门 更多>