Dump during select statement
Hello Experts,
I am working on PM module where I am preparing a report for ATPCHECK.
My select statement is not working.
I have to select all the active status from jest table.
select STAT from JEST into itab-STAT where objnr = ITAB-objnr
AND INACT eq 'X'.
But than I need to apply a check where I just need 2 active status 'I0002' and 'I0340'.
Is there a way to select all active status fields and than just these 2 active fields.
Thanks and Regrds,
Nikhil.
SELECT pobjnr ppspnr pvbukr ppost1 pzzmattermanager pzzclient qstat qinact
INTO TABLE gt_proj_temp
FROM ( proj AS p INNER JOIN jest AS q ON pobjnr = qobjnr )
WHERE zzmattermanager IN so_pernr AND
( qstat = 'E0010' OR qstat = 'E0015') AND q~inact = ' '.
IF sy-subrc = 0.
SELECT kunnr name1
INTO TABLE gt_kna1
FROM kna1
FOR ALL ENTRIES IN gt_proj_temp
WHERE kunnr = gt_proj_temp-zzclient.
LOOP AT gt_proj_temp INTO gs_proj_temp.
READ TABLE gt_kna1 INTO gs_kna1 WITH KEY kunnr = gs_proj_temp-zzclient.
IF sy-subrc = 0.
gs_proj-objnr = gs_proj_temp-objnr.
gs_proj-pspnr = gs_proj_temp-pspnr.
gs_proj-vbukr = gs_proj_temp-vbukr.
gs_proj-post1 = gs_proj_temp-post1.
gs_proj-zzmattermanager = gs_proj_temp-zzmattermanager.
gs_proj-kunnr = gs_kna1-kunnr.
gs_proj-name1 = gs_kna1-name1.
APPEND gs_proj TO gt_proj.
CLEAR gs_proj.
ENDIF.
ENDLOOP.
ENDIF.
IF gv_lines = 0.
MESSAGE e003(z01).
ENDIF.
IF NOT gt_proj[] IS INITIAL.
SELECT pernr ename FROM pa0001 INTO TABLE gt_pa0001
FOR ALL ENTRIES IN gt_proj
WHERE pernr = gt_proj-zzmattermanager.
ENDIF.
ENDIF.
IF NOT gt_proj[] IS INITIAL.
SELECT objnr stat INTO TABLE gt_jest FROM jest
FOR ALL ENTRIES IN gt_proj
WHERE objnr = gt_proj-objnr AND stat = 'I0046' AND inact = ' '.
ENDIF.
Similar Messages
-
Short dump during select statement
hi,
i have to display 1 alv list output using REUSE_ALV_HIERSEQ_LIST_DISPLAY function module...so i have populated the data using select statement
select EXIDV
brgew meabm
vegr1 erlkz vhilm erdat aenam
ernam from vekp
into corresponding fields of table gt_master
up to gs_test-select_amount rows.
so the data is also getting populated to gt_master table before the function module...but after executing the function module..it is giving short dump...due to some standard program....any ideahi,
my coding is
Report : ZBCALV *
Author : *
SAP-User : *
Requester : *
Date : *
Specification: *
Description : *
Changes : *
Change No : *
Author : *
SAP-User : *
Date : *
Reason / Desc: *
REPORT ZBCALV.
**& Report BCALV_TEST_HIERSEQ_LIST_EVENTS *
*report bcalv_test_hierseq_list_events.
types: g_ty_t_exidv type standard table of vekp,
g_ty_t_brgew type standard table of vekp,
g_ty_t_vegr1 type standard table of vekp,
g_ty_t_vekp type standard table of vekp,
g_ty_t_curr type standard table of alv_cur,
g_ty_s_vekp type alv_t_t2,
g_ty_s_exidv type alv_tab,
g_ty_s_brgew type alv_tab,
g_ty_s_vegr1 type alv_chck,
g_ty_s_vekp type vekp,
g_ty_s_curr type alv_cur.
constants:
*con_vekp type lvc_fname value 'ALV_T_T2',
con_scarr type lvc_fname value 'ALV_TAB', "#EC *
con_spfli type lvc_fname value 'ALV_CHCK', "#EC *
con_vekp type lvc_fname value 'VEKP',
con_scurx type lvc_fname value 'ALV_CUR'. "#EC *
DATA *
tables: sscrfields. " for processing the FCODEs in Selektion screens
type-pools: slis, kkblo.
class lcl_events_d1001 definition deferred.
types: begin of g_ty_s_test,
select_amount type i,
selected_recs_m type i,
selected_recs_s type i,
no_info_popup type char1,
info_popup_once type char1,
events type lvc_fname occurs 0,
events_exit type slis_t_event_exit,
events_info_popup type lvc_fname occurs 0,
list_append type char1,
list_amount type i,
list_append_status type i,
layo_expand_field type char1,
layo_expand_all type char1,
vari_default type char1,
vari_save type char1,
bypassing_buffer type char1,
buffer_active type char1,
end of g_ty_s_test,
begin of g_ty_s_evt_exit.
include type slis_event_exit.
types: text type string,
end of g_ty_s_evt_exit,
g_ty_t_evt_exit type standard table of g_ty_s_evt_exit.
constants: con_true type char1 value 'X',
con_ok type sy-ucomm value 'OK',
con_exit type sy-ucomm value 'EXIT',
con_canc type sy-ucomm value 'CANC',
con_back type sy-ucomm value 'BACK',
con_event_01 type lvc_fname value 'PF_STATUS_SET',
con_event_02 type lvc_fname value 'USER_COMMAND',
con_event_03 type lvc_fname value 'CALLER_EXIT',
con_event_04 type lvc_fname value 'LIST_MODIFY',
con_event_05 type lvc_fname value 'BEFORE_LINE_OUTPUT',
con_event_06 type lvc_fname value 'AFTER_LINE_OUTPUT',
con_event_07 type lvc_fname value 'SUBTOTAL_TEXT',
con_event_08 type lvc_fname value 'REPREP_MODIFY',
con_event_09 type lvc_fname value 'TOP_OF_PAGE',
con_event_10 type lvc_fname value 'END_OF_PAGE',
con_event_11 type lvc_fname value 'TOP_OF_LIST',
con_event_12 type lvc_fname value 'END_OF_LIST',
con_event_13 type lvc_fname value 'TOP_OF_COVERPAGE',
con_event_14 type lvc_fname value 'END_OF_COVERPAGE',
con_event_15 type lvc_fname value 'TOP_OF_FOREIGN_PAGE',
con_event_16 type lvc_fname value 'END_OF_FOREIGN_PAGE',
con_event_17 type lvc_fname value 'GROUPLEVEL_CHANGE',
con_event_18 type lvc_fname value 'ITEM_DATA_EXPAND'.
data: gs_test type g_ty_s_test.
data: g_okcode type sy-ucomm.
data: g_repid type sy-repid.
data: gt_evt_exit type g_ty_t_evt_exit.
data: gr_container_d1001 type ref to cl_gui_custom_container,
gr_grid_d1001 type ref to cl_gui_alv_grid,
gr_events_d1001 type ref to lcl_events_d1001.
data: g_start_listinfo type slis_lineinfo.
*addition for extra
DATA: fieldcatalog TYPE slis_t_fieldcat_alv with header line.
types : BEGIN OF gt_output ,
EXIDV TYPE VEKP-EXIDV,
VGBEL TYPE LIPS-VGBEL,
BRGEW TYPE VEKP-BRGEW,
VEGR1 TYPE VEKP-VEGR1,
MEABM TYPE VEKP-MEABM,
ERLKZ TYPE VEKP-ERLKZ,
VSTAT TYPE NAST-VSTAT,
VHILM TYPE VEKP-VHILM,
ERDAT TYPE VEKP-ERDAT,
AENAM TYPE VEKP-AENAM,
VBELN TYPE VBELN_GEN,
ERNAM TYPE VEKP-ERNAM,
END OF gt_output.
data: ls_output type gt_output,
lt_output type gt_output occurs 0 WITH HEADER LINE .
types : BEGIN OF gt_item_output ,
EXIDV TYPE VEKP-EXIDV,
BRGEW TYPE VEKP-BRGEW,
vEGR1 TYPE VEKP-VEGR1,
TARAG TYPE VEKP-TARAG,
NTGEW TYPE VEKP-NTGEW,
MEABM TYPE VEKP-MEABM,
BREIT TYPE VEKP-BREIT,
HOEHE TYPE VEKP-HOEHE,
ANW_STATUS TYPE VEKP-ANW_STATUS,
MATNR TYPE VEPO-MATNR,
VEGR2 TYPE VEKP-VEGR2,
VSTEL TYPE VEKP-VSTEL,
WERKS TYPE VEKP-WERKS,
END OF gt_item_output.
data: ls_ITEM_output type gt_ITEM_output,
lt_ITEM_output type gt_ITEM_output occurs 0 with header line.
types: begin of g_ty_s_master.
include type gt_output.
types: box type char1,
lights type char1,
checkbox type char1,
expand type char1,
help type i,
end of g_ty_s_master,
g_ty_t_master type standard table of g_ty_s_master,
begin of g_ty_s_slave.
include type gt_item_output.
types: box type char1,
lights type char1,
checkbox type char1,
expand type char1,
help type i,
end of g_ty_s_slave,
g_ty_t_slave type standard table of g_ty_s_slave.
data: gt_master type g_ty_t_master with header line,
gt_slave type g_ty_t_slave with header line,
gs_master type g_ty_s_master.
CLASS lcl_events_d1001 DEFINITION
class lcl_events_d1001 definition.
public section.
methods:
data_changed for event data_changed
of cl_gui_alv_grid
importing er_data_changed
e_onf4
e_onf4_before
e_onf4_after,
data_changed_finished
for event data_changed_finished
of cl_gui_alv_grid.
endclass. "lcl_events_d1001 DEFINITION
CLASS lcl_events_d1001 IMPLEMENTATION
class lcl_events_d1001 implementation.
method data_changed.
endmethod. "data_changed
method data_changed_finished.
endmethod. "data_changed_finished
endclass. "lcl_events_d1001 IMPLEMENTATION
SELECTION-SCREEN *
selection-screen begin of block gen with frame.
parameters:
p_amount type i default 30.
selection-screen end of block gen.
at selection-screen.
AT SELECTION-SCREEN *
case sscrfields-ucomm.
when 'PB01'.
call screen 1001 starting at 1 1 ending at 80 20.
endcase.
START-OF-SELECTION *
start-of-selection.
g_repid = sy-repid.
gs_test-select_amount = p_amount.
END-OF-SELECTION *
end-of-selection.
perform f01_call_list.
*& Form f01_call_list
text
form f01_call_list.
data: l_callback_program type sy-cprog, "#EC NEEDED
ls_layo type slis_layout_alv,
lt_fcat type slis_t_fieldcat_alv,
ls_keyinfo type slis_keyinfo_alv.
data: ls_master type g_ty_s_master,
ls_slave type g_ty_s_slave.
l_callback_program = sy-repid.
perform f01_alv_get_outtab.
perform f01_alv_set_layout changing ls_layo.
perform f01_alv_set_fcat changing lt_fcat.
perform f01_alv_set_keyinfo changing ls_keyinfo.
if gs_test-list_append_status ne 0.
ls_layo-list_append = gs_test-list_append.
endif.
call function 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
exporting
i_callback_program = g_repid
is_layout = ls_layo
it_fieldcat = lt_fcat
i_tabname_header = 'GT_MASTER'
i_tabname_item = 'GT_SLAVE'
is_keyinfo = ls_keyinfo
tables
t_outtab_header = gt_master
t_outtab_item = gt_slave
exceptions
program_error = 1
others = 2.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
endform. " f01_call_list
FORM f01_alv_set_fcat
form f01_alv_set_fcat changing ct_fcat type slis_t_fieldcat_alv.
data: lt_fcat_master type slis_t_fieldcat_alv,
lt_fcat_slave type slis_t_fieldcat_alv.
clear ct_fcat[].
perform f01_alv_set_fcat_master changing lt_fcat_master.
perform f01_alv_set_fcat_slave changing lt_fcat_slave.
append lines of lt_fcat_master to ct_fcat.
append lines of lt_fcat_slave to ct_fcat.
endform. " F01_ALV_SET_FCAT
*& Form f01_alv_set_fcat_master
text
form f01_alv_set_fcat_master changing ct_fcat type slis_t_fieldcat_alv.
data: ls_fcat type slis_fieldcat_alv,
l_char(3) type c.
get fieldcatalog
fieldcatalog-fieldname = 'EXIDV'. "Field name in itab
fieldcatalog-seltext_l = 'HU-NR'. "Column text
FIELDCATALOG-KEY = 'X'.
FIELDCATALOG-TECH = 'X'.
fieldcatalog-col_pos = 1. "Column position
fieldcatalog-ref_tabname = 'VEKP'.
fieldcatalog-outputlen = 05. "Column width
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VGBEL'.
fieldcatalog-seltext_L = 'SALES ORDER'.
fieldcatalog-outputlen = 15.
fieldcatalog-ref_tabname = 'LIPS'.
fieldcatalog-col_pos = 2.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'BRGEW'.
fieldcatalog-seltext_l = 'WEIGHT'.
FIELDCATALOG-KEY = 'X'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 3.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MEABM'.
fieldcatalog-seltext_l = 'DIMENSION'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 4.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VEGR1'.
fieldcatalog-seltext_l = 'IPPC NR'.
fieldcatalog-outputlen = 15.
FIELDCATALOG-KEY = 'X'.
fieldcatalog-col_pos = 5.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'ERLKZ'.
fieldcatalog-seltext_l = 'STATUS'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 6.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VSTAT'.
fieldcatalog-seltext_l = 'PRINT STATUS'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 7.
fieldcatalog-ref_tabname = 'VSTAT'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VHILM'.
fieldcatalog-seltext_l = 'PACKING MATERIAL'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 8.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'ERDAT'.
fieldcatalog-seltext_l = 'CREATED FROM'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 9.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'AENAM'.
fieldcatalog-seltext_l = 'LAST CHANGE'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 10.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VBELN'.
fieldcatalog-seltext_l = 'DELIVERY'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 11.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'ERNAM'.
fieldcatalog-seltext_l = 'CREATED BY'.
fieldcatalog-outputlen = 12.
fieldcatalog-col_pos = 8.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
ls_fcat-tabname = 'GT_MASTER'.
modify ct_fcat from ls_fcat transporting tabname
where tabname ne ls_fcat-tabname.
loop at ct_fcat into ls_fcat.
if ls_fcat-fieldname eq 'BRGEW'.
or ls_fcat-fieldname eq ''.
*§1.Set status of columns PLANETYPE and SEATSOCC to editable.
ls_fcat-edit = 'X'.
modify ct_fcat from ls_fcat.
endif.
endloop.
endform. " f01_alv_set_fcat_master
*& Form f01_alv_set_fcat_slave
text
form f01_alv_set_fcat_slave changing ct_fcat type slis_t_fieldcat_alv.
data: ls_fcat type slis_fieldcat_alv,
l_char(3) type c.
fieldcatalog-fieldname = 'EXIDV'. "Field name in itab
fieldcatalog-seltext_l = 'HU-NR'. "Column text
FIELDCATALOG-KEY = 'X'.
FIELDCATALOG-TECH = 'X'.
fieldcatalog-col_pos = 1. "Column position
fieldcatalog-ref_tabname = 'VEKP'.
fieldcatalog-outputlen = 05. "Column width
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'TARAG'. "Field name in itab
fieldcatalog-seltext_l = 'HU-NR'. "Column text
fieldcatalog-col_pos = 1. "Column position
fieldcatalog-ref_tabname = 'VEKP'.
fieldcatalog-outputlen = 05. "Column width
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'NTGEW'.
fieldcatalog-seltext_L = 'WEIGHT HU'.
fieldcatalog-outputlen = 15.
fieldcatalog-ref_tabname = 'VEKP'.
fieldcatalog-col_pos = 2.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'BRGEW'.
fieldcatalog-seltext_l = 'WEIGHT'.
FIELDCATALOG-KEY = 'X'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 3.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'LAENG'.
fieldcatalog-seltext_l = 'LENGTH'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 4.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'BREIT'.
fieldcatalog-seltext_l = 'WIDTH'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 5.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'HOEHE'.
fieldcatalog-seltext_l = 'HEIGHT'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 6.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VEGR1'.
fieldcatalog-seltext_l = 'HU GR1'.
FIELDCATALOG-KEY = 'X'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 7.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VEGR2'.
fieldcatalog-seltext_l = 'HU GR2'.
FIELDCATALOG-KEY = 'X'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 8.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'MATNR'.
fieldcatalog-seltext_l = 'MAT NO'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 9.
fieldcatalog-ref_tabname = 'VEPO'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'VSTEL'.
fieldcatalog-seltext_l = 'SHIPPING'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 10.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
fieldcatalog-fieldname = 'WERKS'.
fieldcatalog-seltext_l = 'PLANT'.
fieldcatalog-outputlen = 15.
fieldcatalog-col_pos = 11.
fieldcatalog-ref_tabname = 'VEKP'.
APPEND fieldcatalog TO ct_fcat.
CLEAR fieldcatalog.
ls_fcat-tabname = 'GT_SLAVE'.
modify ct_fcat from ls_fcat transporting tabname
where tabname ne ls_fcat-tabname.
endform. " f01_alv_set_fcat_slave
FORM f01_alv_set_layout
form f01_alv_set_layout changing cs_layout type slis_layout_alv.
*... Display options
cs_layout-colwidth_optimize = con_true.
cs_layout-no_colhead = space.
cs_layout-no_hotspot = space.
cs_layout-zebra = space.
cs_layout-no_vline = space.
cs_layout-cell_merge = space.
cs_layout-no_min_linesize = space.
cs_layout-min_linesize = space.
cs_layout-max_linesize = space.
cs_layout-window_titlebar = space.
cs_layout-no_uline_hs = space.
cs_layout-no_sumchoice = space.
cs_layout-no_totalline = space.
cs_layout-totals_before_items = space.
cs_layout-totals_only = space.
cs_layout-totals_text = space.
cs_layout-no_subchoice = space.
cs_layout-no_subtotals = space.
cs_layout-subtotals_text = space.
cs_layout-numc_sum = space.
cs_layout-no_unit_splitting = space.
*... Interaction
cs_layout-box_fieldname = 'BOX'.
cs_layout-box_tabname = space.
cs_layout-box_rollname = space.
if gs_test-layo_expand_field eq con_true.
cs_layout-expand_fieldname = 'EXPAND'.
endif.
cs_layout-hotspot_fieldname = space.
cs_layout-f2code = space.
cs_layout-key_hotspot = space.
cs_layout-flexible_key = space.
cs_layout-reprep = space.
cs_layout-group_buttons = space.
cs_layout-no_keyfix = space.
cs_layout-get_selinfos = con_true.
cs_layout-group_change_edit = con_true.
cs_layout-no_scrolling = space.
cs_layout-expand_all = gs_test-layo_expand_all.
*... Detailed screen
cs_layout-detail_popup = space.
cs_layout-detail_initial_lines = space.
cs_layout-detail_titlebar = space.
*... PF-status
cs_layout-def_status = space.
*... Display variants
cs_layout-header_text = space.
cs_layout-item_text = space.
cs_layout-default_item = space.
*... colour
cs_layout-info_fieldname = space.
cs_layout-coltab_fieldname = space.
*... others
cs_layout-list_append = space.
endform. " F01_ALV_SET_LAYOUT
*& Form f01_alv_set_keyinfo
text
form f01_alv_set_keyinfo changing cs_keyinfo type slis_keyinfo_alv.
cs_keyinfo-header01 = 'EXIDV'.
cs_keyinfo-item01 = 'EXIDV'.
cs_keyinfo-header02 = 'BRGEW'."'CARRID'.
cs_keyinfo-item02 = 'BRGEW'."."'CARRID'.
cs_keyinfo-header03 = 'VEGR1'."'CONNID'.
cs_keyinfo-item03 = 'VEGR1'."'CONNID'.
cs_keyinfo-header04 = space.
cs_keyinfo-item04 = 'VEGR2'."'FLDATE'.
cs_keyinfo-header05 = space.
cs_keyinfo-item05 = space.
endform. " f01_alv_set_keyinfo
FORM f01_alv_event_pf_status_set
form f01_alv_event_pf_status_set using rt_extab type slis_t_extab.
"#EC *
data: l_event type lvc_fname. "#EC NEEDED
if gs_test-info_popup_once eq con_true.
read table gs_test-events_info_popup into l_event
with key table_line = 'PF_STATUS_SET'.
if sy-subrc ne 0.
insert 'PF_STATUS_SET' into gs_test-events_info_popup index 1.
message i000(0k) with text-t01.
endif.
elseif gs_test-no_info_popup eq space.
message i000(0k) with text-t01.
endif.
set pf-status 'STANDARD' excluding rt_extab.
set titlebar 'STANDARD'.
endform. " F01_ALV_EVENT_PF_STATUS_SET
*& Form F01_ALV_EVENT_BEFORE_LINE_OUTP
text
form f01_alv_event_before_line_outp
using rs_lineinfo type slis_lineinfo. "#EC *
data: l_event type lvc_fname. "#EC NEEDED
if gs_test-info_popup_once eq con_true.
read table gs_test-events_info_popup into l_event
with key table_line = 'BEFORE_LINE_OUTPUT'.
if sy-subrc ne 0.
insert 'BEFORE_LINE_OUTPUT' into gs_test-events_info_popup
index 1.
message i000(0k) with text-t05.
endif.
elseif gs_test-no_info_popup eq space.
message i000(0k) with text-t05.
endif.
format color off
intensified off
inverse off
hotspot off
input off.
if rs_lineinfo-tabname eq 'GT_MASTER'.
if
gs_master-exidv ne gt_master-exidv or
gs_master-brgew ne gt_master-brgew.
write: / text-t05.
write: /
gt_master-exidv,
gt_master-brgew.
gs_master = gt_master.
endif.
if gs_test-selected_recs_m eq rs_lineinfo-tabindex.
clear gs_master.
endif.
endif.
endform. " F01_ALV_EVENT_BEFORE_LINE_OUTP
*& Form f01_alv_get_outtab
text
form f01_alv_get_outtab .
field-symbols: .
select
exidv BRGEW VEGR1
TARAG NTgew meabm BREIT HOEHE VEGR2 VSTEL weRKS
from
(con_vekp) into corresponding fields of table
lt_slave up to gs_test-select_amount rows
where
exidv eq <ls_master>-exidv and
brgew eq -vegr1.
append lines of lt_slave to gt_slave.
endloop.
sort gt_slave by exidv brgew vegr1.
endif.
describe table gt_master lines gs_test-selected_recs_m.
describe table gt_slave lines gs_test-selected_recs_s.
clear gt_master.
clear gt_slave.
endform. " f01_alv_get_outtab
*& Module d1001_pbo OUTPUT
text
module d1001_pbo output.
perform d1001_pbo.
endmodule. " d1001_pbo OUTPUT
*& Module d1001_pai INPUT
text
module d1001_pai input.
perform d1001_pai.
endmodule. " d1001_pai INPUT -
Short Dump during Import Statement from STXL(TX)
Hi All,
issue for me.
Error analysis
An exception occurred that is explained in detail below.
The exception which is assigned to class CX_SY_IMPORT_FORMAT_ERROR was not
caught in
procedure READ_TEXTLINES (FORM) nor was it propagated by a RAISING clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
When attempting to IMPORT the object TLINE there was a format error.
Unable to read an IMPORT dataset.
The dataset may have been processed using SQL and is
thus no longer readable for the IMPORT.
Information on where terminated
Termination occurred in the ABAP program SAPLSTXD - in READ_TEXTLINES
The main program was RS_TESTFRAME_CALL .
In the source code you have the termination point in line 106
of the (Include) program LSTXDFDB.
The termination is caused because exception C_SY_IMPORT_FORMAT_ERROR
occurred in
procedure READ_TEXTLINES (FORM) but it was neither handled locally n
declared
in the RAISING clause of its signature.
The procedure is in program SAPLSTXD its source code begins in line
75 of the (Include program LSTXDFDB .
import tline to rt_lines
from database stxl(tx)
client rt_client
id stxl_id
ACCEPTING TRUNCATION "important for Unicode->Nonunicode
IGNORING CONVERSION ERRORS.
Thanks & Regards,
Pavan.Hi Ramotar,
are you using the read_text function module to retreive contents? if yes then ensure that you have passed everything correct am given example below just check that,
DATA : T_LINE LIKE TLINE OCCURS 0 WITH HEADER LINE .
CALL FUNCTION 'READ_TEXT'
EXPORTING
CLIENT = SY-MANDT
ID = 'F01'
LANGUAGE = 'E'
NAME = V_NAME
OBJECT = 'EKKO'
ARCHIVE_HANDLE = 0
LOCAL_CAT = ' '
IMPORTING
HEADER =
TABLES
LINES = T_LINE
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
NOT_FOUND = 4
OBJECT = 5
REFERENCE_CHECK = 6
WRONG_ACCESS_TO_ARCHIVE = 7
OTHERS = 8
if not just explain on what scenario you are getting this dump? -
Hi Experts,
I am facing the problem in the select statement where it giving the short dump
DBIF_RSQL_INVALID_RSQL CX_SY_OPEN_S.
i have searched many forms, but i found that the select option s_matnr have the limitaion 2000 entreis, but i am passing same s_matnr to other select statement with more than 2000 entries but it is not giving me any short dump.
but i am facing problem with only one select statement where if i pass select option s_matnr more than 1500 entris also giving short dump.
my select statement is
SELECT * FROM bsim
INTO CORRESPONDING FIELDS OF TABLE g_t_bsim_lean
FOR ALL ENTRIES IN t_bwkey WHERE bwkey = t_bwkey-bwkey
AND matnr IN matnr
AND bwtar IN bwtar
AND budat >= datum-low.
in the internal table g_t_bsim_lean internal table contain all the fields of the table bsim with 2 fields from other table.
Please let me know whether i need to change the select statement or any other solution for this.
Regards,
udupimy select query is like this:
DATA: BEGIN OF t_bwkey OCCURS 0, "184465
bwkey LIKE bsim-bwkey, "184465
END OF t_bwkey. "184465
LOOP AT g_t_organ WHERE keytype = c_bwkey.
MOVE g_t_organ-bwkey TO t_bwkey-bwkey.
COLLECT t_bwkey. "184465
ENDLOOP. "184465
READ TABLE t_bwkey INDEX 1. "184465
CHECK sy-subrc = 0. "184465
SELECT * FROM bsim "n443935
INTO CORRESPONDING FIELDS OF TABLE g_t_bsim_lean "n443935
FOR ALL ENTRIES IN t_bwkey WHERE bwkey = t_bwkey-bwkey
AND matnr IN matnr
AND bwtar IN bwtar
AND budat >= datum-low. -
Short dump with a select statement
I have the following select statement (I have also inluded my data statement(s)) and I get a short dump. The error is as follows:
<b>What happened?
Error in ABAP application program.
The current ABAP program "ZPARTNER" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
Following a SELECT statement, the data read could not be placed in AN
the output area.
A conversion may have been intended that is not supported by the
system, or the output area may be too small.
Error analysis
An exception occurred. This exception will be dealt with in more detail
below. The exception, assigned to the class 'CX_SY_OPEN_SQL_DB', was not
caught, which
led to a runtime error. The reason for this exception is:
The data read during a SELECT access could not be inserted into the
target field.
Either conversion is not supported for the target field's type or the
target field is too short to accept the value or the data are not in a
form that the target field can accept </b>
it_adrc TYPE TABLE OF adrc,
wa_adrc LIKE LINE OF it_adrc,
SELECT addrnumber name1 street city1 region post_code1 tel_number
FROM adrc INTO TABLE it_adrc
FOR ALL ENTRIES IN it_detail
WHERE addrnumber = it_detail-adrnr.
Regards,
DavisIf you only need the fields mentioned in the select query, then follow this:
TYPES: BEGIN OF ADRC_TYPE,
ADDRNUMBER LIKE ADRC-ADDRNUMBER,
NAME1 LIKE ADRC-NAME1,
STREET LIKE ADRC-STREET,
CITY LIKE ADRC-CITY,
REGION LIKE ADRC-REGION,
POST_CODE1 LIKE ADRC-POST_CODE1,
TEL_NUMBER LIKE ADRC-TEL_NUMBER,
END OF ADRC_TYPE,
ADRC_T_TYPE TYPE TABLE OF ADRC_TYPE.
DATA: IT_ADRC TYPE ADRC_T_TYPE WITH HEADER LINE.
IF NOT IT_DETAIL[] IS INITIAL.
SELECT addrnumber name1 street city1 region post_code1 tel_number
FROM adrc INTO TABLE it_adrc
FOR ALL ENTRIES IN it_detail
WHERE addrnumber = it_detail-adrnr.
ENDIF.
Thanks,
SKJ -
Adding one more table to the select statement joining 4 tables gives dump
Hi All,
There is a select statement using which four tables namely VBAK,VBAP,LIPS and LIKPUK(view) are joined(inner join).Here, date and time fields are selected from LIPS and used.
My requirement is to consider the Date (LIKP - WADAT_IST) instead of LIPS-ERDAT and time(LIKP-SPE_WAUHR_IST) is to be used instead of LIPS-erzet.
Neither LIPS nor LIKPUK contains time(SPE_WAUHR_IST) field. And, I cannot remove LIPS table or LIKPUK view as each contains a unique field which is used in the report.
When I tried to join LIPS in the select query, it is going to dump.
Can someone suggest a good approach ?
Thanks,
PavanThank you for the detailed explanation of the dump.
The dump details together with your code lead to the answer: 42.
Regards,
Clemens -
Hi,
Am getting dump with the below select statement in ECC 6.0,
where as the same select works fine in 4.7C.
SELECT distinct aebeln abukrs absart alifnr azterm aekorg aekgrp awaers awkurs akdatb akdate aunsez bebelp btxz01 bwerks blgort bbednr bmatkl bidnlf bmeins bbprme bnetpr bpeinh bknttp badrn2 csakto canln1 caufnr cgsber cps_psp_pnr detenr dlpein deindt dwemng dslfdt dmenge
INTO CORRESPONDING FIELDS OF TABLE it_output FROM
( ( ( ekko AS a INNER JOIN ekpo AS b ON aebeln = bebeln )
INNER JOIN ekkn AS c ON bebeln = cebeln and bebelp = cebelp )
INNER JOIN eket AS d ON cebeln = debeln and cebelp = debelp )
WHERE aebeln IN s_ebeln AND alifnr IN s_lifnr AND a~bukrs IN s_bukrs.
Whether I've to add anything addition for select distinct statement in ecc 6.0 or is it obsolette?
can oneone help in this regards?
Thanks,
Ponraj.s.Hi,
This is only dev.server and it consists only few records.
TYPES: BEGIN OF ty_output,
*********Header data*****************************
rectype_line1(1) TYPE c,
rectype_line2(1) TYPE c,
rectype_line3(1) TYPE c,
rectype_line4(1) TYPE c,
ebeln TYPE ebeln,
bukrs TYPE bukrs, "Company Code
bsart TYPE bsart, "Documnet Type
lifnr TYPE lifnr,
zterm TYPE dzterm,
ekorg TYPE ekorg, "Purchase Org
ekgrp TYPE ekgrp, "Purchase grp
waers TYPE waers, "Currency
wkurs TYPE wkurs, "Exchange rate
wkurs1(9) TYPE c,
kdatb TYPE kdatb,
kdate TYPE kdate, "Validity end date
unsez TYPE unsez, "Our Reference
********Line item data***************************
ebelp TYPE ebelp, "po item
txz01 TYPE txz01, "Item Text
werks TYPE werks, "Plant
lgort TYPE lgort_d, "Storage Location
bednr TYPE bednr, "Tracking No
matkl TYPE matkl, "Material group
idnlf TYPE idnlf, "Vendor Material No
meins TYPE meins, "Order unit
bprme TYPE bprme, "Order price unit
netpr TYPE netpr, "Net price
netpr1(11) TYPE c,
peinh TYPE peinh, "Price unit
peinh1(5) TYPE c,
knttp TYPE knttp, "Acc Assgnment
adrn2 TYPE adrn2,
**************G/L Account data***********************
menge2(13) TYPE c, "PO Quantity
sakto TYPE sakto, "GL Acc No
anln1 TYPE anln1, "Main Asset number
aufnr TYPE aufnr, "Order Number
gsber TYPE gsber, "Business Area
ps_psp_pnr(8) TYPE c,
**********Item schedule data*******************************
etenr TYPE etenr,
lpein TYPE lpein, "Delivery date category
eindt TYPE eindt, "Delivery date
menge TYPE menge, "Schedule Quantity
menge1(13) TYPE c,
wemng TYPE wemng,
wemng1(13) TYPE c,
slfdt TYPE slfdt, "Start of Delivery date
END OF ty_output.
DATA : it_output TYPE STANDARD TABLE OF ty_output.
This is my table declaration,pls help me in resolving this issue. -
Strange select statement behavior in start routine during extraction
Hi, All..
I'm receiving some odd behavior from a select statment being processed in batch mode (specifically, when run in a normal BW extractor - start routine), the select yields no results .. sy-subrc = 4 and target itab is empty. however, when i run this same select statement in debug, i get sy-subrc = 0 and records are returned!! I tried putting the select statement in a standard abap program & it came back successfully in both foreground & background. something is strange when run in the BW extractor process?? anyone familiar with this?? any help is appreciated!! Thanks!!Thanks everyone for the comments!
The code is in the start routine from 0BBP_CONF_TD_1 into 0BBP_CON.
-The select returns records when in debug
-I've tried running it open without the "for all entries" & it still fails in batch
-The select works during the delta but always fails on the initial load
The select is a join:
DATA: BEGIN of t_JOIN1 OCCURS 0,
CONNUM LIKE /BI0/ABBP_CON00-BBP_CON_ID,
CONITEM LIKE /BI0/ABBP_CON00-BBP_COITEM,
PONUM LIKE /BI0/ABBP_PO00-BBP_PO_ID,
POITEM LIKE /BI0/ABBP_PO00-BBP_POITEM,
ACGUID LIKE /BI0/ABBP_PO00-BBP_ACGUID,
SCNUM LIKE /BI0/ABBP_SC00-BBP_SC_ID,
SCITEM LIKE /BI0/ABBP_SC00-BBP_SCITEM,
REQSTR LIKE /BI0/ABBP_SC00-BBP_REQSTR.
DATA: END of t_JOIN1.
SELECT a~BBP_CON_ID
a~BBP_COITEM
a~BBP_PO_ID
a~BBP_POITEM
b~BBP_ACGUID
c~BBP_SC_ID
c~BBP_SCITEM
c~BBP_REQSTR
INTO TABLE t_JOIN1
FROM /BI0/ABBP_CON00 as a
INNER JOIN /BI0/ABBP_PO00 as b
ON aBBP_PO_ID = bBBP_PO_ID AND
aBBP_POITEM = bBBP_POITEM
INNER JOIN /BI0/ABBP_SC00 as c
ON bBBP_SC_ID = cBBP_SC_ID
AND bBBP_SCITEM = cBBP_SCITEM
FOR ALL ENTRIES IN DATA_PACKAGE
WHERE a~BBP_CON_ID = DATA_PACKAGE-BBP_CON_ID AND
a~BBP_COITEM = DATA_PACKAGE-BBP_COITEM AND
a~BBP_COITEM <> 0 AND
b~BBP_ACGUID <> '0000' AND
c~BBP_SCITEM <> 0. -
Adhoc Query : Error during selection; check the selection conditions
Hi
We have a report set-up and which we want to run using our adhoc query report tcode S_PH0_48000513
The report, has a few different selection criteria in it to look at all action IT screen data in the system for ee's in specific personnel areas. There is also a criteria to allow us to paste in specific employee numbers we are interested in. The issue I am facing is that over about 3000 ids, the system automatically returns me a message when I click on the Output button to run the report which states:
Error during selection; check the selection conditions
Message no. PAIS206
I am not sure why this is happening. The selection criteria are fine and the other day I ran the report and I experienced no issues. The report ran successfully. Now though, if I try and paste in all the ids I am interested in (about 8000) I get this message straightaway.
Can anything be done to overcome this issue?
Any advice would be much appreciated.
NicolaHi
The message in full is:
Error during selection; check the selection conditions
Message no. PAIS206
Diagnosis
A runtime error occurred during dynamic selection.
System response
The runtime error will be caught; no short dump will be created. This error should not occur as a rule. However, very large select statements may trigger the runtime error SAPSQL_STMNT_TOO_LARGE or DBIF_RSQL_INVALID_RSQL. There is no way to prevent this happening. In this case, the error can only be caught.
Procedure
Check the selection conditions to see whether the error was caused because the option "Import from text file" included too many objects in the "Multiple selection" dialog. If this is so, you must limit the number of individual values. -
Urgent, SELECT statement results in error
hi all, this is very urgent, could you guys have a look at my SELECT statement?
SELECT vk~kunnr "customer no
vk~vbeln "sales order no
vk~audat "date
vk~vbtyp "SD DOCUMENT CATEGORY
vk~knumv "lwk
vp~kwmeng "qty
vp~matnr "material no
vp~posnr "LINE ITEM
vd~bstkd "PURCHASE ORDER NO
* kv~kwert "lwk
FROM vbak AS vk
INNER JOIN vbap AS vp
ON vk~vbeln = vp~vbeln
INNER JOIN vbkd AS vd
ON vk~vbeln = vd~vbeln
* INNER JOIN konv AS kv
* ON kv~knumv = vk~knumv
INTO CORRESPONDING FIELDS OF TABLE it_so
WHERE vk~vkorg IN s_vkorg
AND vk~audat IN s_date
AND vk~kunnr IN s_kunnr
AND vp~matnr IN s_matnr
AND vd~bstkd IN s_bstkd
AND vk~vbeln IN s_vbeln
* AND kv~kschl = 'ZP00'
AND vk~vbtyp = 'C'.
The commented lines are the new additions that i want to add to the SELECT statement. But when i un-comment them, i get an error while activating my program. Error is as follows:
For pooled tables, cluster tables, and project views, JOIN is not allowed: "KONV".
Is there a way i can go around it?Hi,
look at this SAP note : 550043
Symptom
KEPM: dump 'MESSAGE_TYPE_X' during automatic planning method execution.
Other terms
KEPM MESSAGE_TYPE_X transform characteristic value
Reason and Prerequisites
This note is related only to cases, if dump 'MESSAGE_TYPE_X' is raising
during execution of planning method, for which is possible to define
transformation of characteristics values i.e. Copy, Forecast, Top-Down
distribution, Ratios and Customer Enhancement.
Dump is raising in case, if there was defined transformation of char.
values in parameter set definition for some characteristic. Later on,
this characteristic was removed from planning level definition but
characteristic wasn't removed from relevant customizing of transform
characteristic values before.
Solution
Please apply attached program correction.
Regards,
GSR. -
ABAP dump during workstatus chaning in SAP BPC 7.5
Hi, Experts
We are working with SAP BPC 7.5 Ramp-up version. We faced a problem - during changing workstatus the system generates ABAP Dump.
We checked ST22 with ABAP Dumps. It contains the following:
What happened?
Error in the ABAP Application Program
The current ABAP program "CL_UJW_WORK_STATUS_DAO========CP" had to be
terminated because it has
come across a statement that unfortunately cannot be executed.
ABAP errors are created in the following code:
FIELD-SYMBOLS:
<fs_line> TYPE ANY.
CREATE DATA lr_line TYPE (i_tabname).
ASSIGN lr_line->* to <fs_line>.
l_where = 'APPSET = i_appset'. "#EC NOTEXT
LOOP AT it_dim_mem INTO ls_dim_mem.
CONCATENATE
l_where ' AND ' ls_dim_mem-dimension ' = ''' ls_dim_mem-member ''''
INTO l_where RESPECTING BLANKS.
ENDLOOP.
*SELECT SINGLE * INTO CORRESPONDING FIELDS OF es_lock_info FROM (i_tabname) WHERE (l_where).*
* fill lock information
CLEAR ls_ujw_statcode.
CALL METHOD me->read_status_code(
EXPORTING i_appset = i_appset
i_status = es_lock_info-status
i_spras = 'E'
IMPORTING es_ujw_statcode = ls_ujw_statcode ).
ABAP dump says that in "SELECT SINGLE * INTO CORRESPONDING FIELDS OF es_lock_info FROM (i_tabname) WHERE (l_where).*" exist a dynamically specified column name which is unknown.
Does somebody have the same problems?
Regards,
PavelHi Pavel,
This is obviously a bug and it looks like from the code block you copied into the forum that there is an issue with the actual select statements dynamic where clause. I haven't specifically seen this bug but I recommend you do an SAP Note search on the following component EPM-BPC-NW-WS (for work status) in your search criteria put the class name that you found in the dump. This should help you find whether or not a correction has been created (i.e. an SAP note) that solves your issue.
Cheers, Scott -
Performance issue - Select statement
Hi I am having the 10 lack records in the KONP table . If i am trying to see all the records in SE11 , it is giving the short dump TSV_TNEW_PAGE_ALLOC_FAILED . I know this is because of less memory in the Server . Is there any other way to get the data ? How to optimise the below SELECT statement if i have large data in the table .
i_condn_data - is having 8 lack records .
SELECT knumh kznep valtg valdt zterm
FROM konp
INTO TABLE i_condn_data_b
FOR ALL ENTRIES IN i_condn_data
WHERE knumh = i_condn_data-knumh
AND kschl = p_kschl.
Please suggest .Hi,
try to use "UP TO n ROWS" to control the quantity of selected data in each Loop step.
Something like this:
sort itab by itab-knumh.
flag = 'X'.
while flag = 'X'.
SELECT knumh kznep valtg valdt zterm
FROM konp
INTO TABLE i_condn_data_b UP TO one_million ROWS
WHERE knumh > new_value_for_selection
AND kschl = p_kschl.
describe table i_condn_data_b lines i.
read table i_condn_data_b index i.
new_value_for_selection = i_condn_data_b-knumh.
*....your logic for table i_condn_data_b
if one_million > i.
clear flag.
endif.
endwhile.
Regards -
Dump during creation of service entry sheet (ML81N)
Dump during creation of service entry sheet (ML81N)
Hi,
ML81N>Select PO>Enter>goto entry sheet create (empty page)>service entry sheet displayed with internal no. assigned >click tab "service selection">Input PO No.--> enter (here we get Dump ABAP RUNTIME ERROR "TABLE_INVALID_INDEX").
This is happening only for some POs. What can be the problem?. Is this has something to do with SAP database ???
- rahulHi,
it could have the cause that the note 1113220 was missing from your system or that data are inconsistent in your PO.
If you implemented 1113220 and you still get the dump, please check in transaction ST22 the run time error long text to the dump:
Parts:
- How to correct the error?
- Information on where terminated
- Source Code Extract -> if you set a breakpoint before the line where the error occured, you could debug the process.
- Active Calls/Events: if you have an own program displayed here, please check first your program wether it has caused the issue.
If these do not help to find out the problem cause, please open a SAP ticket and include all of the relevant information regarding the dump.
Regards,
Edit -
How to use SET ID in select statement of SQ02
Hi,
I have a infoset, where for one of my Zfield, i have writen a select statement in order to get my ouput.
if aufk-aufnr = 'XYZ'.
select sum( FKBTR ) from fmifiit into zfmifiit
where fikrs = aufk-kokrs
and fipex IN capex
and wrttp NE '51'.
endif.
For the above statement, i have created (with 10 single values, table name FMCI, field name FIPEX) a SET id named CAPEX and used with IN operator.
But when i generating the infoset i am getting error like below
The IN operator with "CAPEX" is followed neither by an internal table nor by a value list
I was using IN opeartor for set ids during validation / substitutions, where if i have to validate multiple single values.
What to do here?
Regards,
Srinu[OPEN-SQL|http://help.sap.com/abapdocu_70/en/ABENOPEN_SQL_GENERAL.htm] set of statement, [SELECT|http://help.sap.com/abapdocu_70/en/ABAPWHERE.htm] statement, [WHERE|http://help.sap.com/abapdocu_70/en/ABENWHERE_LOGEXP.htm] addition requires a selection table (type range, [WHERE - IN seltab |http://help.sap.com/abapdocu_70/en/ABENWHERE_LOGEXP_SELTAB.htm]) of parameter and not a set. We are in Abap here, not in a Customizing screen
You have to convert the set to a selection table in an ABAP coding before using it in a SELECT statement.
(Check FM like G_SET_TREE_IMPORT to import definition of set (values and intervals) and map them to a select-table, or ask a developper to perform it, look at G_SET_TREE_IMPORT -> select statement)
Regards,
Raymond -
Hi,
I have recently been asked to generate a program that reports of payroll postings to FI. This involves creating a giant select statement from the ppoix table to gather all the postings. My select statement is as follows:
SELECT pernr "EE Number
seqno "Sequential number
actsign "Indicator: Status of record
runid "Number of posting run
postnum "Number
tslin "Line number of data transfer
lgart "Wage Type
betrg "Amount
waers "Currency
anzhl "Number
meins "Base unit of measure
spprc "Special processing of posting items
momag "Transfer to FI/CO:EE grouping for acct determi
komok "Transfer to FI/CO: Symbolic account
mcode "Matchcode search term
koart "Account assignment type
auart "Expenditure type
nofin "Indicator: Expenditure type is not funded
INTO CORRESPONDING FIELDS OF TABLE i_ppoix
FROM ppoix
FOR ALL ENTRIES IN run_doc_xref
WHERE runid = run_doc_xref-runid
AND tslin = run_doc_xref-linum
AND spprc <> 'A'
AND lgart IN s_lgart
AND pernr in s_pernr.
where s_pernr is a select option that holds personnel nummbers and s_lgart is a select option that holds wagetypes. This statement works fine for a certain amount of personnel numbers and a certain amount of wagetypes, but once you exceed a certain limit the Database does not allow you to perform a select statement this large. Is there a better way to perform such a large select such as this one) ie: FM, or some other method I am not aware of. This select statement comes from the standard SAP delivered cost center admin report and this report dumps as well when too much data is passed to it.
any ideas would be much appreciated.
thanks.The problem here is with the select-options.
For a select statement, you cannot have more that certain amount of data.
The problem with your select becomes complex because of the FOR ALL ENTRIES in and the huge s_pernr and the 40 million records :(.
I am guessing that the s_lgart will be small.
How many entries do you have in internal table "run_doc_xref"?
If there are not that many, then I would suggest this:
TYPES:
BEGIN OF ty_temp_ppoix,
pernr TYPE ppoix-pernr,
lgart TYPE ppoix-lgart,
seqno TYPE ppoix-seqno,
actsign TYPE ppoix-actsign,
runid TYPE ppoix-runid,
postnum TYPE ppoix-postnum,
tslin TYPE ppoix-tslin,
betrg TYPE ppoix-betrg,
spprc TYPE ppoix-spprc,
END OF ty_temp_ppoix.
DATA:
i_temp_ppoix TYPE SORTED TABLE OF ty_temp_ppoix
WITH NON-UNIQUE KEY pernr lgart
INITIAL SIZE 0
WITH HEADER LINE.
DATA:
v_pernr_lines TYPE sy-tabix,
v_lgart_lines TYPE sy-tabix.
IF NOT run_doc_xref[] IS INITIAL.
DESCRIBE TABLE s_pernr LINES v_pernr_lines.
DESCRIBE TABLE s_lgart LINES v_lgart_lines.
IF v_pernr_lines GT 800 OR
v_lgart_lines GT 800.
* There is an index on runid and tslin. This should be ok
* ( still bad because of the huge table :( )
SELECT pernr lgart seqno actsign runid postnum tslin betrg spprc
* Selecting into sorted TEMP table here
INTO TABLE i_temp_ppoix
FROM ppoix
FOR ALL ENTRIES IN run_doc_xref
WHERE runid = run_doc_xref-runid
AND tslin = run_doc_xref-linum
AND spprc <> 'A'.
* The sorted table should make the delete faster
DELETE i_temp_ppoix WHERE NOT pernr IN s_pernr
AND NOT lgart IN s_lgart.
* Now populate the actual target
LOOP AT i_temp_ppoix.
MOVE: i_temp_ppoix-pernr TO i_ppoix-pernr.
* and the rest of the fields
APPEND i_ppoix.
DELETE i_temp_ppoix.
ENDLOOP.
ELSE.
SELECT pernr seqno actsign runid postnum tslin lgart betrg spprc
* Selecting into your ACTUAL target here
INTO TABLE i_ppoix
FROM ppoix
FOR ALL ENTRIES IN run_doc_xref
WHERE runid = run_doc_xref-runid
AND tslin = run_doc_xref-linum
AND spprc <> 'A'
AND pernr IN s_pernr
AND lgart IN s_lgart.
ENDIF.
ELSE.
* Error message because of no entries in run_doc_xref?
* Please answer this so a new solution can be implemented here
* if it is NOT an error
ENDIF.
Hope this helps.
Regards,
-Ramesh
Maybe you are looking for
-
Adding Flash to PDF Portfolio Welcome Page
I have been having trouble adding my flash file to the welcome page in my PDF portfolios. I have hunted through the documentation but I have not found any specific trouble shooting for this issue. The docs say you can add an swf or flv but nothing ab
-
Hi, I have implemented pagination for the table. I have start,previous,next,last buttons in the bottom of the table. It is working fine. Generally if i click on column for sorting it will sort the columns in which where we are.(Suppose if we are in s
-
hi, i have craeted characteristics, attached those char. in class. that class is maintained in material classification in inspection plan mic having these class char. is maintained created 1 lot (manual), recorded result for char, ud done b
-
Documention on Oracle Auditing Capabilities
I am trying to find extensive documentation to explain all Oracle auditing features. I need to understand where things are audited and be able to query/find things and store these audit trails for up to a year. I am looking at V$session and V$AUD and
-
IPhoto 09 Installed but freezes when opened
Hi all, upgraded to iPhoto 09, but freezes when opened, tried a new library with iPhoto manager, rebuilt permissions, erased preferences etc, tried it as a new user... still no luck.... any ideas ? My mext post will have the report. Thanks