cancel
Showing results for 
Search instead for 
Did you mean: 

Time out error while executing ZBBP_BW_SC4 in SRM

Former Member
0 Kudos

Hi,

I had set the following fields 0 by default.

select-options sa_coce for bbp_pdacc-cost_ctr DEFAULT '0' .

SELECT-OPTIONS so_i_ord for bbp_pdacc-order_no DEFAULT '0'. "internal order

SELECT-OPTIONS so_wbs for bbp_pdacc-wbs_elem_e DEFAULT '0'. "wbs element

In this case, when i run my program it works normally.

But when i leave one of these fields empty a time out error appears.

While debugging, the following blocs are time consuming.

  SELECT * FROM BBP_PDVIEW_ACC INTO TABLE it_bbp_pdview_acc

     WHERE ( ACC_CAT = acc_cat_cc AND COST_CTR IN sa_coce )

     OR ( ACC_CAT = acc_cat_ord AND ORDER_NO IN so_i_ord )

     OR ( ACC_CAT = acc_cat_wbs AND WBS_ELEM_E IN so_wbs )

FORM SELECT_ALL_WBS_ELEM .

   SELECT wbs_elem_e FROM bbp_pdacc INTO TABLE it_wbs

         WHERE acc_cat = acc_cat_wbs.

   SORT it_wbs BY wbs_elem.

   DELETE ADJACENT DUPLICATES FROM it_wbs COMPARING wbs_elem.

ENDFORM.

I think that the problem can be solved by executing the report in background.

Is this the only solution.

Can anybody help me to perform my program.

thanks

Accepted Solutions (1)

Accepted Solutions (1)

konstantin_anikeev
Active Contributor
0 Kudos

Hi Meriem,

it's not possible to analyse Z-Reports until all report is provided.

Generally yes, you can avoid "Timeout dump" running report as a job. But without knowing logic of your report no guarantees.

And fire your developers... Just kidding, but...

1. Check at least check DEL_IND is empty

2. SELECT * FROM BBP_PDVIEW_ACC INTO TABLE it_bbp_pdview_acc - dumm code. We have 1 Mio entries in productive. How much by you? Multiply it to 1324 (length of table line) and check how much memory will be eaten.

3.

instead of


   SELECT wbs_elem_e FROM bbp_pdacc INTO TABLE it_wbs

         WHERE acc_cat = acc_cat_wbs.

   SORT it_wbs BY wbs_elem.

   DELETE ADJACENT DUPLICATES FROM it_wbs COMPARING wbs_elem.

should be

   SELECT DISTINCT wbs_elem_e FROM bbp_pdacc INTO TABLE it_wbs

         WHERE acc_cat = acc_cat_wbs AND del_ind IS INITIAL ORDER BY ....


Regards

Konstantin

Former Member
0 Kudos

hi Konstantin,

thank you for your help.

1. i didn't understand your first remarque

2.  i think i should delete * and replace it by the appropriate fields

If there is no solution, should i go for the execution in background?

konstantin_anikeev
Active Contributor
0 Kudos

Hi Meriem,

1. View BBP_PDVIEW_ACC has a field DEL_IND (deletion indicator), which is 'X' if line is deleted. Do you really need a deleted entries for your selection?

2. Yes, at least. Or make a DBCURSOR to retrieve data in packages.

If there is no solution, should i go for the execution in background?

Unfortunatelly I'm not able to answer, without knowing the purpose of report. Background run should solve the issue with timeout.

But you can get another problems: memory consumption, overall system performance, possible locked background session.

Regards

Konstantin

Former Member
0 Kudos

hi,

1. should i add a condition where DEL_IND is empty or equal 'X'?

2.SELECT DISTINCT  didn't work, the following error appears:

The operator IS can only be used in "f IS NULL" or "f IS NOT NULL". - -

t

konstantin_anikeev
Active Contributor
0 Kudos

Hi Meriem,

for 1 and for 2 write DEL_IND = '' (instead of DEL_IND IS INITIAL).

That's not DISTINCTs fault

Regards

Konstantin

Answers (0)