点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我想在动态wher...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我想在动态wher...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我想在动态where条件下使用动态选择查询。 为此,我使用了下面的代码,但是在使用此代码时出现了转储。
如果还有其他方法可以满足此要求,请提出建议。
谢谢
Sanket Sethi
代码***************
参数:p_tabnam TYPE标签名, p_selfl1 TYPE edpline, p_value TYPE edpline, p_where1 TYPE edpline。 数据:lt_where edpline TYPE TABLE, lt_sel_list edpline类型表, l_wa_name TYPE字符串, ls_where TYPE edpline, l_具有TYPE字符串, dref TYPE REF TO数据, itab_type类型参考cl_abap_tabledescr, struct_type类型参考cl_abap_structdescr, elem_type类型参考cl_abap_elemdescr, comp_tab TYPE cl_abap_structdescr => component_table, comp_fld TYPE cl_abap_structdescr =>组件。 类型:f_count个类型i。 FIELD-SYMBOLS:TYPE ANY TABLE, * TYPE ANY, TYPE ANY。 struct_type?= cl_abap_typedescr => describe_by_name(p_tabnam)。 elem_type?= cl_abap_elemdescr => describe_by_name('F_COUNT')。 comp_tab = struct_type-> get_components()。 comp_fld-name ='F_COUNT'。 comp_fld-type = elem_type。 APPEND comp_fld至comp_tab。 struct_type = cl_abap_structdescr => create(comp_tab)。 itab_type = cl_abap_tabledescr => create(struct_type)。 l_wa_name ='l_WA'。 创建数据dref TYPE HANDLE itab_type。 ASSIGN dref-> *至 。 *创建数据dref TYPE HANDLE struct_type。 * ASSIGN dref-> *至 。 *选择字段的创建 将p_selfl1附加到lt_sel_list。 将" COUNT(*)AS F_COUNT"附加到lt_sel_list。 **创建" where"子句 * CONCATENATE p_selfl1'=''p_value''。' * INTO ls_where *按空格分隔。 * APPEND ls_where到lt_where。 *创建" where"子句 追加p_where1到lt_where。 *创建"具有"子句 l_having ='count(*)> = 1'。 *动态选择 选择(lt_sel_list) FROM(p_tabnam) 表 的对应字段。 *在(lt_where)。
嗨,Sanket,
我上面给出的逻辑对您有用,将代码放在If条件中,然后尝试-
如下所示:
谢谢\
Mahesh
一周热门 更多>