Bug 12986

Summary: Timeout nach Sortierung
Product: [SCX/Suite] VMI Reporter: Hopmann, Peter <Peter.Hopmann>
Component: StammdatenpflegeAssignee: Hopmann, Peter <Peter.Hopmann>
Status: VERIFIED FIXED QA Contact: Tilli, Benedikt <Benedikt.Tilli>
Severity: normal    
Priority: P3 Keywords: Pegasus, Vorabkorrektur
Version: 20.0   
Hardware: All   
OS: All   
Whiteboard: Überprüft 21.0
Kundennummer: Bestellnummer:
PV Übergabe: --- Phase Roadmap: ---
Erledigt mit: Pegasus SAP Release: ---
Transport: E74K907701, FE0K904804, M50K900855, M60K900963 CRM-ID/Ticket:
Bug Depends on: 11614    
Bug Blocks:    

Description Hopmann, Peter intern 2021-03-05 14:21:49 CET
Wenn die Abnehmer-Liste sortiert wird und dann zu einem Abnehmer die Lieferketten aufgerufen werden, dann kommt es zu einer langen Wartezeit mit anschließendem Timeout.
Comment 2 Hopmann, Peter intern 2021-03-05 18:27:17 CET
/GIB/CL_DCV_DATA_POOL
Method sort_data: optional ir_data 

/GIB/CL_DCV_MAINT_DATA_POOL
  METHOD sort_data.
*SUPER->SORT_DATA( ).

    DATA: lt_sort TYPE lvc_t_sort,
          ls_sort TYPE lvc_s_sort,
          lt_key TYPE lvc_t_fcat.

    FIELD-SYMBOLS: <lt_data> TYPE table,
                   <ls_key> TYPE lvc_s_fcat.

*#HW12986
    IF ir_data IS BOUND.
      ASSIGN ir_data->* TO <lt_data>.
    ELSE.
      ASSIGN mr_data->* TO <lt_data>.
    ENDIF.
*    ASSIGN mr_data->* TO <lt_data>.
*##12986
    lt_key = get_key_fields( ).
...

  METHOD prepare_dsp_data.
...
    get_data_for_display( IMPORTING et_data_dsp = <lt_data_dsp> ).
*#hw12986
    sort_data( mr_data_dsp ).
    sort_data( lr_dsp_old ).
*##12986
    IF <lt_data_dsp_old> <> <lt_data_dsp>
...

  METHOD sort_data.
*SUPER->SORT_DATA( ).

    DATA: lt_sort TYPE lvc_t_sort,
          ls_sort TYPE lvc_s_sort,
          lt_key TYPE lvc_t_fcat.

    FIELD-SYMBOLS: <lt_data> TYPE table,
                   <ls_key> TYPE lvc_s_fcat.

*#HW12986
    IF ir_data IS BOUND.
      ASSIGN ir_data->* TO <lt_data>.
    ELSE.
      ASSIGN mr_data->* TO <lt_data>.
    ENDIF.
*    ASSIGN mr_data->* TO <lt_data>.
*##12986
    lt_key = get_key_fields( ).
...


/GIB/CL_DCV_DATA_POOL_GRID
METHOD get_selected_data.
...
  IF NOT mr_grid IS INITIAL.
    CLEAR: mt_row_sel.
    CALL METHOD mr_grid->get_selected_rows
      IMPORTING
        et_index_rows = mt_row_sel.
**        et_row_no     = lt_roid.
*#12986 PHO 05.03.2021 be sure to pick the right line
    mr_grid->get_sort_criteria( IMPORTING et_sort = DATA(lt_sort) ).
    CALL FUNCTION 'LVC_SORT_APPLY'
      EXPORTING
        it_sort = lt_sort
      TABLES
        ct_data = <lt_data>.
*##12986
  ENDIF.
  LOOP AT mt_row_sel INTO ls_row.
...