2020-09-08 05:53发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我不明白在运行期间... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我不明白在运行期间材料描述如何存储在变更请求上下文中。
实体MATERIAL中有属性TXTMI。 但是MDG如何存储用于材料描述的多个条目?
假设有2种描述:一种是英语,另一种是西班牙语。 我如何读取和处理这些cr数据?
我尝试使用便捷api(方法:READ_ENTITY_DATA)读取实体数据。 但是然后我只得到其中一项,而没有有关键(语言代码)的信息。 存储的语言代码和描述的组合在哪里?
最诚挚的问候,
Hannes
你好 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。
最多设置5个标签!
你好 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,
任何表类型。
**************************************
。。
-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 。
类型/mdgmm/_st_mm_pp_material。任何表类型。任何类型表。
。。
-material = im_matnr。
-langu ='E'。" lwa_t002-spras。
-txtmi = im_mdesc。插入表。
-langu ='F'。" lwa_t002-spras。
-txtmi = im_mdesc。插入表 。
*'材料'
******************************************
清除: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
插入
清除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。
字段符号:
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-> *到
**从t002选择spras 插入表@DATA(lt_t002)。 "语言
***将lt_t002插入数据(lwa_t002)。
插入
插入
** 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。
一周热门 更多>