Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

i got the time out error in production system how can i rectity

Former Member
0 Kudos

TYPES : BEGIN OF TY_FINAL_IDEL,

IEDD(10),

  • IEDD LIKE AFRU-IEDD,

MATNR LIKE AFPO-MATNR,

AUFNR LIKE AFPO-AUFNR,

PERNR LIKE AFRU-PERNR,

BUDAT(10),

GRUND LIKE AFRU-GRUND,

MATKL LIKE MARA-MATKL,

  • MENGE LIKE MSEG-MENGE,

PSMNG LIKE AFPO-PSMNG,

  • PSAMG LIKE AFPO-PSAMG,

XMNGA LIKE AFRU-XMNGA,

STPRS LIKE MBEW-STPRS,

  • NETPR LIKE EKPO-NETPR,

TC LIKE MBEW-STPRS,

GRDTX LIKE TRUGT-GRDTX,

ARBPL LIKE CRHD-ARBPL,

MAKTX LIKE MAKT-MAKTX,

END OF TY_FINAL_IDEL.

TYPES : BEGIN OF TY_MARA_IDEL,

  • MATNR LIKE MARA-MATNR,

  • MATKL LIKE MARA-MATKL,

MATNR LIKE MAKT-MATNR,

MAKTX LIKE MAKT-MAKTX,

  • MENGE LIKE MSEG-MENGE,

STPRS LIKE MBEW-STPRS,

  • NETPR LIKE EKPO-NETPR,

END OF TY_MARA_IDEL.

TYPES : BEGIN OF TY_AFPO_IDEL,

AUFNR LIKE AFPO-AUFNR,

PSMNG LIKE AFPO-PSMNG,

MATNR LIKE AFPO-MATNR,

  • PSAMG LIKE AFPO-PSAMG,

BUDAT LIKE AFRU-BUDAT,

ARBID LIKE AFRU-ARBID,

XMNGA LIKE AFRU-XMNGA,

GRUND LIKE AFRU-GRUND,

PERNR LIKE AFRU-PERNR,

  • AUFNR LIKE AFRU-AUFNR,

IEDD LIKE AFRU-IEDD,

  • AUFNR LIKE AFRU-AUFNR,

AUFPL LIKE AFRU-AUFPL,

APLZL LIKE AFRU-APLZL,

VORNR LIKE AFRU-VORNR,

  • GRDTX LIKE TRUGT-GRDTX,

END OF TY_AFPO_IDEL.

TYPES : BEGIN OF TY_CRHD_IDEL,

OBJID LIKE CRHD-OBJID,

ARBPL LIKE CRHD-ARBPL,

AUFPL LIKE V_QAPO-AUFPL,

VORGLFNR LIKE V_QAPO-VORGLFNR,

VORNR LIKE V_QAPO-VORNR,

ARBID LIKE V_QAPO-ARBID,

END OF TY_CRHD_IDEL.

TYPES : BEGIN OF TY_TRUGT_IDEL,

SPRAS LIKE TRUGT-SPRAS,

GRUND LIKE TRUGT-GRUND,

GRDTX LIKE TRUGT-GRDTX,

END OF TY_TRUGT_IDEL.

*

  • TYPES : BEGIN OF TY_AFRU_IDEL,

  • AUFNR LIKE AFRU-AUFNR,

  • END OF TY_AFRU_IDEL.

*

*&----


*

*& VARIABLE DECLARATION *

&----


DATA : R_WERKS LIKE AFRU-WERKS,

R_MATNR LIKE AFPO-MATNR,

  • R_MATKL LIKE MARA-MATKL,

R_AUFNR LIKE AFPO-AUFNR,

  • R_ISDD LIKE AFRU-ISDD,

R_IEDD LIKE AFRU-IEDD.

*&----


*

*& INTERNAL TABLE DECLARATION *

&----


DATA : IT_FINAL_IDEL TYPE STANDARD TABLE OF TY_FINAL_IDEL WITH HEADER LINE INITIAL SIZE 100 WITH DEFAULT KEY.

DATA : IT_AFPO_IDEL TYPE STANDARD TABLE OF TY_AFPO_IDEL WITH HEADER LINE INITIAL SIZE 100 WITH DEFAULT KEY.

DATA : IT_MARA_IDEL TYPE STANDARD TABLE OF TY_MARA_IDEL WITH HEADER LINE INITIAL SIZE 100 WITH DEFAULT KEY.

DATA : IT_CRHD_IDEL TYPE STANDARD TABLE OF TY_CRHD_IDEL WITH HEADER LINE INITIAL SIZE 100 WITH DEFAULT KEY.

DATA : IT_TRUGT_IDEL TYPE STANDARD TABLE OF TY_TRUGT_IDEL WITH HEADER LINE INITIAL SIZE 100 WITH DEFAULT KEY.

DATA : IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.

DATA : WA_FIELDCAT_LN LIKE LINE OF IT_FIELDCAT.

DATA : IT_EVENTCAT TYPE SLIS_T_EVENT.

DATA : WA_EVENTCAT_LN LIKE LINE OF IT_EVENTCAT.

DATA : IT_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA: S_COL_POS TYPE I.

*&----


*

*& SELECTION SCREEN DECLARATION *

&----


SELECTION-SCREEN BEGIN OF BLOCK : BLOCK WITH FRAME.

SELECT-OPTIONS: S_WERKS FOR AFRU-WERKS DEFAULT 'IN01' NO INTERVALS NO-EXTENSION , "Plant

S_MATNR FOR AFPO-MATNR, "Material Code

  • S_MATKL FOR MARA-MATKL NO INTERVALS NO-EXTENSION, "Material Group

S_AUFNR FOR AFPO-AUFNR, "Order Number

S_IEDD FOR AFRU-IEDD OBLIGATORY. "Confirmed date for execution finish

*NO INTERVALS NO-EXTENSION

SELECTION-SCREEN END OF BLOCK BLOCK.

**************************************************************************

      • AT SELECTION SCREEN *

**************************************************************************

AT SELECTION-SCREEN ON S_WERKS.

SELECT SINGLE WERKS FROM AFRU INTO R_WERKS WHERE WERKS IN S_WERKS.

IF SY-SUBRC <> 0.

MESSAGE E001(ZIN01_RDPR).

ENDIF.

AT SELECTION-SCREEN ON S_MATNR.

SELECT SINGLE MATNR FROM AFPO INTO R_MATNR WHERE MATNR IN S_MATNR.

IF SY-SUBRC <> 0.

MESSAGE E002(ZIN01_RDPR).

ENDIF.

*AT SELECTION-SCREEN ON S_MATKL.

*

  • SELECT SINGLE MATKL FROM MARA INTO R_MATKL WHERE MATKL IN S_MATKL.

  • IF SY-SUBRC <> 0.

  • MESSAGE E003(ZIN01_RDPR).

  • ENDIF.

*

AT SELECTION-SCREEN ON S_AUFNR.

SELECT SINGLE AUFNR FROM AFPO INTO R_AUFNR WHERE AUFNR IN S_AUFNR.

IF SY-SUBRC <> 0.

MESSAGE E004(ZIN01_RDPR).

ENDIF.

AT SELECTION-SCREEN ON S_IEDD.

*

  • SELECT SINGLE IEDD FROM AFRU INTO R_IEDD WHERE IEDD IN S_IEDD.

  • IF SY-SUBRC <> 0.

  • MESSAGE E005(ZIN01_RDPR).

  • ENDIF.

IF S_IEDD-LOW IS INITIAL OR S_IEDD-HIGH IS INITIAL.

MESSAGE E005(ZIN01_RDPR).

ENDIF.

  • SELECT SINGLE IEDD FROM AFRU INTO R_IEDD WHERE IEDD IN S_IEDD.

  • IF SY-SUBRC <> 0.

  • MESSAGE E006(ZIN01_RDPR).

  • ENDIF.

*

*************************************************************************

    • START OF SELECTION *

*************************************************************************

START-OF-SELECTION.

PERFORM SELECT_DATA.

*PERFORM MAIN_DATA.

PERFORM BUILD_FIELDCATALOG.

PERFORM DATA_DISPLAY.

****************************************************************

  • FORM TO SELECT DATA INTO INTERNAL TABLE

*

****************************************************************

FORM SELECT_DATA.

SELECT FAUFNR FPSMNG FMATNR GBUDAT GARBID GXMNGA GGRUND GPERNR GIEDD GAUFNR GAUFPL GAPLZL G~VORNR INTO CORRESPONDING FIELDS OF TABLE IT_AFPO_IDEL

FROM AFPO AS F

INNER JOIN AFRU AS G ON FAUFNR = GAUFNR

WHERE F~AUFNR IN S_AUFNR AND

F~MATNR IN S_MATNR AND

G~WERKS = 'IN01' AND

G~XMNGA <> 0 AND

G~IEDD IN S_IEDD .

  • G~WERKS IN S_WERKS AND

IF SY-SUBRC <> 0.

MESSAGE E006(ZIN01_RDPR).

ENDIF.

  • IF SY-SUBRC = 0.

SELECT GRUND GRDTX INTO CORRESPONDING FIELDS OF TABLE IT_TRUGT_IDEL FROM TRUGT

FOR ALL ENTRIES IN IT_AFPO_IDEL

WHERE GRUND = IT_AFPO_IDEL-GRUND .

  • ENDIF.

SELECT HOBJID HARBPL IAUFPL IVORGLFNR IVORNR IARBID INTO CORRESPONDING FIELDS OF TABLE IT_CRHD_IDEL

FROM CRHD AS H

INNER JOIN V_QAPO AS I ON HOBJID = IARBID

FOR ALL ENTRIES IN IT_AFPO_IDEL

WHERE VORGLFNR = IT_AFPO_IDEL-APLZL AND

ARBID = IT_AFPO_IDEL-ARBID AND

OBJID = IT_AFPO_IDEL-ARBID .

  • IF SY-SUBRC = 0.

SELECT BMATNR BMAKTX BSPRAS DMATNR D~STPRS INTO CORRESPONDING FIELDS OF TABLE IT_MARA_IDEL

FROM MAKT AS B

INNER JOIN MBEW AS D ON BMATNR = DMATNR

FOR ALL ENTRIES IN IT_AFPO_IDEL

WHERE DMATNR = IT_AFPO_IDEL-MATNR AND BSPRAS = 'EN'.

  • ENDIF.

****************************************************************

  • END OF SELECTION

*

****************************************************************

DATA : PEDATE(10),

POSDATE(10).

LOOP AT IT_AFPO_IDEL.

CONCATENATE IT_AFPO_IDEL-IEDD6(2) IT_AFPO_IDEL-IEDD4(2) IT_AFPO_IDEL-IEDD+0(4)

INTO PEDATE SEPARATED BY '.'.

IT_FINAL_IDEL-IEDD = PEDATE.

CONCATENATE IT_AFPO_IDEL-BUDAT6(2) IT_AFPO_IDEL-BUDAT4(2) IT_AFPO_IDEL-BUDAT+0(4)

INTO POSDATE SEPARATED BY '.'.

IT_FINAL_IDEL-BUDAT = POSDATE.

IT_FINAL_IDEL-PERNR = IT_AFPO_IDEL-PERNR.

IT_FINAL_IDEL-MATNR = IT_AFPO_IDEL-MATNR.

IT_FINAL_IDEL-AUFNR = IT_AFPO_IDEL-AUFNR.

IT_FINAL_IDEL-PSMNG = IT_AFPO_IDEL-PSMNG.

IT_FINAL_IDEL-XMNGA = IT_AFPO_IDEL-XMNGA.

IT_FINAL_IDEL-GRUND = IT_AFPO_IDEL-GRUND.

READ TABLE IT_TRUGT_IDEL WITH KEY GRUND = IT_AFPO_IDEL-GRUND.

IT_FINAL_IDEL-GRDTX = IT_TRUGT_IDEL-GRDTX.

READ TABLE IT_CRHD_IDEL WITH KEY VORGLFNR = IT_AFPO_IDEL-APLZL AUFPL = IT_AFPO_IDEL-AUFPL.

IT_FINAL_IDEL-ARBPL = IT_CRHD_IDEL-ARBPL.

*

READ TABLE IT_MARA_IDEL WITH KEY MATNR = IT_AFPO_IDEL-MATNR.

IF SY-SUBRC = 0.

IT_FINAL_IDEL-MAKTX = IT_MARA_IDEL-MAKTX.

IT_FINAL_IDEL-STPRS = IT_MARA_IDEL-STPRS.

IT_FINAL_IDEL-TC = IT_AFPO_IDEL-XMNGA * IT_MARA_IDEL-STPRS.

ENDIF.

how can i rectify that one

in b5t run fine

but brp i got time_out error

how to rectify

give me a solution ,its very very urgent

Regards

ds

APPEND IT_FINAL_IDEL.

  • CLEAR : IT_FINAL_IDEL,IT_AFPO_IDEL,IT_MARA_IDEL,IT_CRHD_IDEL.

CLEAR : IT_TRUGT_IDEL-GRDTX,IT_FINAL_IDEL-TC,IT_FINAL_IDEL-MATNR,IT_FINAL_IDEL-MAKTX, IT_FINAL_IDEL-PSMNG, IT_FINAL_IDEL-STPRS.

ENDLOOP.

5 REPLIES 5

Former Member
0 Kudos

Hi,

Can you please try running the program in background ? It should gop through. It might have timed out due to large amount of data.

Reward points if found useful...!

Cheers

Abhishek

Former Member
0 Kudos

HI,

Avoid usage of Joins and use FOR ALL ENTRIES statement..... make use of indexes along with that ....

Regards,

Santosh

former_member181962
Active Contributor
0 Kudos

Hi,

See if you can make us e of the secondary indexes on the tables.

Or run the program in background.

REgards,

Ravi

Former Member
0 Kudos

The program is using too many FOR ALL ENTRIES. If the base table is huge FOR ALL ENTRIES will slow down the program. Make sure the base table is not hue else the for all entries will loop for each record of the base table to access the data in the database.

Try to use array table fetch and use ABAP to filter the data on the application server.

Cheers

VJ

Former Member
0 Kudos

In your END-OF-SELECTION, you are doing a number of table reads without the binary search option. This will cause the entire tables to be read for each read. Therefore, change this portion of the code to:


  DATA : pedate(10),
  posdate(10).

  SORT: it_trugt_idel BY grund,
        it_crhd_idel  BY vorglfnr aufpl,
        it_mara_idel  BY matnr,

    loop at it_afpo_idel.

  CONCATENATE it_afpo_idel-iedd+6(2) it_afpo_idel-iedd+4(2)
   it_afpo_idel-iedd+0(4) INTO pedate SEPARATED BY '.'.

  it_final_idel-iedd = pedate.
  CONCATENATE it_afpo_idel-budat+6(2) it_afpo_idel-budat+4(2)
  it_afpo_idel-budat+0(4) INTO posdate SEPARATED BY '.'.

  it_final_idel-budat = posdate.
  it_final_idel-pernr = it_afpo_idel-pernr.
  it_final_idel-matnr = it_afpo_idel-matnr.
  it_final_idel-aufnr = it_afpo_idel-aufnr.
  it_final_idel-psmng = it_afpo_idel-psmng.
  it_final_idel-xmnga = it_afpo_idel-xmnga.
  it_final_idel-grund = it_afpo_idel-grund.

  READ TABLE it_trugt_idel WITH KEY
    grund = it_afpo_idel-grund
    BINARY SEARCH.

  it_final_idel-grdtx = it_trugt_idel-grdtx.

  READ TABLE it_crhd_idel WITH KEY
    vorglfnr = it_afpo_idel-aplzl
    aufpl    = it_afpo_idel-aufpl.
  binary search.

  it_final_idel-arbpl = it_crhd_idel-arbpl.
*

  READ TABLE it_mara_idel WITH KEY
    matnr = it_afpo_idel-matnr
    BINARY SEARCH.

  IF sy-subrc = 0.

    it_final_idel-maktx = it_mara_idel-maktx.

    it_final_idel-stprs = it_mara_idel-stprs.

    it_final_idel-tc = it_afpo_idel-xmnga * it_mara_idel-stprs.

  ENDIF.

  APPEND it_final_idel.
* CLEAR : IT_FINAL_IDEL,IT_AFPO_IDEL,IT_MARA_IDEL,IT_CRHD_IDEL.
  CLEAR : it_trugt_idel-grdtx,it_final_idel-tc,it_final_idel-matnr,
  it_final_idel-maktx, it_final_idel-psmng, it_final_idel-stprs.
ENDLOOP.

Rob