Application Development and Automation 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: 
Read only

ALV Report Program is displaying without data

Former Member
0 Likes
4,907

Hi All,

Data is not displaying in my ALV Report Program.

Please find the requirement below.

Input:

Company code

Posting date

From 

To 

Vendor

From 

To 

Article

From 

To 

Plant

Tables Used:

ekko, ekbe, konp, konv

Condition Table:

a918->zmar

a142->zstd

Output Format:

Purchase orderPurchase order item noArticleArticle descriptionZMAR and ZSTD margins in SAPZMAR with Key combination of Customer/Article in SAPGRN NoZMAR/ZSTD of PO post GRNStatus

Please see the below source code of my ALV Report Program.

*&---------------------------------------------------------------------*

*& Report  ZMM_GRNMARGIN_REPORT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  zmm_grnmargin_report.

TYPE-POOLS : slis.

TABLES : ekko,ekbe.

TYPES : BEGIN OF ty_ekko,

         ebeln TYPE ebeln,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         END OF ty_ekko,

         BEGIN OF ty_ekbe,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         belnr TYPE mblnr,

         END OF ty_ekbe,

         BEGIN OF ty_konp,

         KBETR TYPE KBETR_KOND,

          END OF ty_konp,

         BEGIN OF ty_konv,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

         zmm_kbetr TYPE kbetr,

         zstd_kbetr TYPE kbetr,

          END OF ty_konv,

         BEGIN OF ty_final,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         zstd(13) TYPE c,

         zmar(13) TYPE c,

         ebelp TYPE ebelp,

         KBETR TYPE KBETR_KOND,

         knumh TYPE knumh,

         kdgrp TYPE kdgrp,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

          belnr TYPE mblnr,

          zmm_kbetr TYPE kbetr,

          zstd_kbetr TYPE kbetr,

         END OF ty_final.

DATA : it_ekko TYPE TABLE OF ty_ekko,

        wa_ekko LIKE LINE OF it_ekko,

        it_ekbe TYPE TABLE OF ty_ekbe,

        wa_ekbe LIKE LINE OF it_ekbe,

        it_final TYPE TABLE OF ty_final,

        wa_final LIKE LINE OF it_final.

DATA : it_a918 TYPE TABLE OF a918 WITH HEADER LINE,

         wa_a918 LIKE LINE OF it_a918,

         it_konv TYPE TABLE OF konv WITH HEADER LINE,

         wa_konv LIKE LINE OF it_konv,

         it_konp TYPE TABLE OF konp WITH HEADER LINE,

         wa_konp LIKE LINE OF it_konp,

         it_a142 TYPE TABLE OF a142 WITH HEADER LINE,

         wa_a142 LIKE LINE OF it_a142.

DATA: it_fieldcat TYPE TABLE OF slis_fieldcat_alv,

       wa_fieldcat LIKE LINE OF it_fieldcat,

       wa_layout TYPE slis_layout_alv.

SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.

PARAMETERS :p_bukrs TYPE ekko-bukrs OBLIGATORY.

SELECT-OPTIONS :s_budat FOR ekbe-budat,

                 s_lifnr FOR ekko-lifnr,

                 s_matnr FOR ekbe-matnr.

PARAMETERS : p_werks TYPE ekbe-werks OBLIGATORY.

SELECTION-SCREEN: END OF BLOCK b1.

START-OF-SELECTION.

   SELECT  ebeln

           bukrs

          lifnr

       FROM ekko  INTO TABLE it_ekko

       WHERE bukrs = p_bukrs

       AND lifnr IN s_lifnr.

     IF it_ekko[] IS NOT INITIAL.

       SELECT  ebeln

               budat

               matnr

               werks

               BELNR

         FROM ekbe INTO TABLE it_ekbe

         WHERE budat IN s_budat

         AND  matnr IN s_matnr

         AND  werks EQ p_werks.

     ENDIF.

*&-----------------------------------------------------------------------------------------------&*

*& FORM GET ZMAR

*&-----------------------------------------------------------------------------------------------&*

* text

*------------------------------------------------------------------------------------------------&*

*  --> p1 text

* <-- p2 text

*------------------------------------------------------------------------------------------------*

   IF it_ekbe[] IS NOT INITIAL.

     SELECT matnr

            knumh

        FROM a918 INTO TABLE it_a918

         WHERE kappl = 'V'

        AND  kschl = 'ZMAR'

       AND   kdgrp = 'FR'

       AND  matnr IN s_matnr

       AND  DATAB GE SY-DATUM.

   ENDIF.

*&-----------------------------------------------------------------------------------------------&*

*& FORM GET ZSTD

*&-----------------------------------------------------------------------------------------------&*

* text

*------------------------------------------------------------------------------------------------&*

*  --> p1 text

* <-- p2 text

*------------------------------------------------------------------------------------------------*

   IF it_a918[] IS NOT INITIAL.

     SELECT kappl

            kschl

            matnr

            knumh

          FROM a142 INTO TABLE it_a142

         WHERE kappl = 'M'

         AND kschl = 'ZSTD'

         AND matnr IN s_matnr

        AND  DATAB GE SY-DATUM.

   ENDIF.

   IF sy-subrc = 0.

     SELECT

            kappl

            kschl

            Kbetr

       FROM konv INTO TABLE it_konv

       WHERE kappl = 'M'

       AND  kschl = 'zmar' OR kschl = 'zstd'.

   ENDIF.

   PERFORM arrange_data.

   PERFORM build_fieldcatalog.

   perFORM display_report .

*&-----------------------------------------------------------------------------------------------&*

*& FORM Arrange data

*&-----------------------------------------------------------------------------------------------&*

FORM arrange_data.

   LOOP AT it_ekko INTO wa_ekko.

     wa_final-bukrs = wa_ekko-bukrs.

     wa_final-lifnr = wa_ekko-lifnr.

     READ TABLE it_ekbe INTO wa_ekbe WITH KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       wa_final-budat = wa_ekbe-budat.

       wa_final-matnr = wa_ekbe-matnr.

       wa_final-werks = wa_ekbe-werks.

     ENDIF.

     IF sy-subrc = 0.

      READ TABLE it_a918 INTO wa_a918 WITH KEY matnr = S_matnr KSCHL = 'ZMAR'.

*    wa_final-ZMAR = wa_a914-KBETR.

      SELECT SINGLE kbetr FROM konp INTO wa_konp WHERE kappl = 'M'

                                            AND ( kschl = 'ZMAR' OR kschl = 'ZSTD' )

                                            AND knumh = wa_a918-knumh.

       IF sy-subrc = 0.

         wa_final-zmar = wa_konp-kbetr / 10.

       ENDIF.

     ENDIF.

      IF sy-subrc = 0.

      READ TABLE it_a142 INTO wa_a142 WITH KEY matnr = s_matnr.

      wa_final-zstd = wa_konp-kbetr / 10.

      ENDIF.

     SORT it_ekbe.

     READ TABLE it_ekbe INTO wa_ekbe WITH  KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       CLEAR wa_final.

     ENDIF.

     CLEAR : wa_final,wa_ekko,wa_ekbe,wa_a918,wa_a142,wa_konv,wa_konp.

   ENDLOOP.

ENDFORM.                    "Arrange_data

*&---------------------------------------------------------------------*

*& FORM BUILD FIELDCATALOG

*&---------------------------------------------------------------------*

FORM build_fieldcatalog.

   wa_fieldcat-col_pos = 1.

   wa_fieldcat-fieldname = 'EBELN'.

   wa_fieldcat-seltext_m = 'Purchase order'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 2.

   wa_fieldcat-fieldname = 'EBELP'.

   wa_fieldcat-seltext_m = 'Purchase order item no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 3.

   wa_fieldcat-fieldname = 'MATNR'.

   wa_fieldcat-seltext_m = 'Article description'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 4.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR and ZSTD margins in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 5.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR with key combination of customer article in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 6.

   wa_fieldcat-fieldname = 'MBLNR'.

   wa_fieldcat-seltext_m = 'Goods reciept no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 7.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 8.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZSTD OF PO POST GRN'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

ENDFORM.                    " BUILD_FIELDCAT

*&---------------------------------------------------------------------*

*&      Form  DISPLAY_REPORT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM display_report .

   wa_layout-zebra = 'X'.

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

   EXPORTING

      I_CALLBACK_PROGRAM                = sy-cprog

      IS_LAYOUT                         = wa_layout

      IT_FIELDCAT                       = it_fieldcat

     TABLES

       t_outtab                          it_final

*   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.

Please provide me the solution ASAP.

31 REPLIES 31
Read only

venkat_aileni
Contributor
0 Likes
4,844

Hello Mounika-

In your Sub-Routine: arrange_data you are filling your values in to workarea wa_final, but you are not appending it to your final internal table it_final.

FORM arrange_data.

    LOOP AT it_ekko INTO wa_ekko.

      wa_final-bukrs = wa_ekko-bukrs.

      wa_final-lifnr = wa_ekko-lifnr.

      READ TABLE it_ekbe INTO wa_ekbe WITH KEY ebeln = wa_ekko-ebeln.

      IF sy-subrc = 0.

        wa_final-budat = wa_ekbe-budat.

        wa_final-matnr = wa_ekbe-matnr.

        wa_final-werks = wa_ekbe-werks.

      ENDIF.

      IF sy-subrc = 0.

       READ TABLE it_a918 INTO wa_a918 WITH KEY matnr = S_matnr KSCHL = 'ZMAR'.

*    wa_final-ZMAR = wa_a914-KBETR.

       SELECT SINGLE kbetr FROM konp INTO wa_konp WHERE kappl = 'M'

                                             AND ( kschl = 'ZMAR' OR kschl = 'ZSTD' )

                                             AND knumh = wa_a918-knumh.

        IF sy-subrc = 0.

          wa_final-zmar = wa_konp-kbetr / 10.

        ENDIF.

      ENDIF.

       IF sy-subrc = 0.

       READ TABLE it_a142 INTO wa_a142 WITH KEY matnr = s_matnr.

       wa_final-zstd = wa_konp-kbetr / 10.

       ENDIF.

      SORT it_ekbe.

      READ TABLE it_ekbe INTO wa_ekbe WITH  KEY ebeln = wa_ekko-ebeln.

      IF sy-subrc = 0.

        CLEAR wa_final.

      ENDIF.

      CLEAR : wa_final,wa_ekko,wa_ekbe,wa_a918,wa_a142,wa_konv,wa_konp.

    ENDLOOP.

ENDFORM.

So as you are passing this it_final internal table which has no data to the ALV FM, you are getting not getting any output.

Use an Append statement at the end like: APPEND wa_final TO it_final and check the output.

Please don't open multiple threads on same topic:

http://scn.sap.com/thread/3444261

-Venkat

Read only

0 Likes
4,844

Hi Venkat,

I did as you suggested. Even am not getting output.

FORM arrange_data.

   LOOP AT it_ekko INTO wa_ekko.

     wa_final-bukrs = wa_ekko-bukrs.

     wa_final-lifnr = wa_ekko-lifnr.

     READ TABLE it_ekbe INTO wa_ekbe WITH KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       wa_final-budat = wa_ekbe-budat.

       wa_final-matnr = wa_ekbe-matnr.

       wa_final-werks = wa_ekbe-werks.

     ENDIF.

     IF sy-subrc = 0.

      READ TABLE it_a918 INTO wa_a918 WITH KEY matnr = S_matnr KSCHL = 'ZMAR'.

*    wa_final-ZMAR = wa_a914-KBETR.

      SELECT SINGLE kbetr FROM konp INTO wa_konp WHERE kappl = 'M'

                                            AND ( kschl = 'ZMAR' OR kschl = 'ZSTD' )

                                            AND knumh = wa_a918-knumh.

       IF sy-subrc = 0.

         wa_final-zmar = wa_konp-kbetr / 10.

       ENDIF.

     ENDIF.

      IF sy-subrc = 0.

      READ TABLE it_a142 INTO wa_a142 WITH KEY matnr = s_matnr.

      wa_final-zstd = wa_konp-kbetr / 10.

      ENDIF.

     SORT it_ekbe.

     READ TABLE it_ekbe INTO wa_ekbe WITH  KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       APPEND wa_final TO it_final."Build final itab

       CLEAR wa_final.

     ENDIF.

     CLEAR : wa_final,wa_ekko,wa_ekbe,wa_a918,wa_a142,wa_konv,wa_konp.

   ENDLOOP.

ENDFORM

Read only

0 Likes
4,844

In debugging mode have you checked entries in it_final? Please do that, before calling REUSE_ALV_GRID_DISPLAY make sure your internal table is filled with some data.

Please place a screenshot of your debugging screen showing entries in it_final.

-Venkat

Read only

0 Likes
4,844

Check below sample report for your reference:

REPORT  zvenkat_test.

DATA: it_fieldcat TYPE slis_t_fieldcat_alv,

       wa_fieldcat TYPE slis_fieldcat_alv.

DATA: itab TYPE TABLE OF vbak.

wa_fieldcat-col_pos = 1.

wa_fieldcat-fieldname = 'VBELN'.

wa_fieldcat-seltext_m = 'Sales Order'.

APPEND wa_fieldcat TO it_fieldcat.

CLEAR wa_fieldcat.

wa_fieldcat-col_pos = 2.

wa_fieldcat-fieldname = 'ERDAT'.

wa_fieldcat-seltext_m = 'Created on'.

APPEND wa_fieldcat TO it_fieldcat.

CLEAR wa_fieldcat.

wa_fieldcat-col_pos = 3.

wa_fieldcat-fieldname = 'VKORG'.

wa_fieldcat-seltext_m = 'Sales Org'.

APPEND wa_fieldcat TO it_fieldcat.

CLEAR wa_fieldcat.

SELECT *

   FROM vbak

   INTO TABLE itab

   UP TO 100 ROWS.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

   EXPORTING

     i_callback_program = sy-repid

     it_fieldcat        = it_fieldcat

   TABLES

     t_outtab           = itab

   EXCEPTIONS

     program_error      = 1

     OTHERS             = 2.

-Venkat

Read only

0 Likes
4,844

Hi mounika tunga

First thing i am unable to find table a918 in sap.

Where you got this table?

Debug and see are you getting data to it_final

Check   sy-subrc = 0 in FORM arrange_data in debug.

Read only

0 Likes
4,844

Also while filling your field catalog table why are you appending same fields(KBETR). Give the field names which you have given in your final internal table 'it_final'.

   wa_fieldcat-col_pos = 4.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR and ZSTD margins in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 5.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR with key combination of customer article in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 6.

   wa_fieldcat-fieldname = 'MBLNR'.

   wa_fieldcat-seltext_m = 'Goods reciept no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 7.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 8.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZSTD OF PO POST GRN'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

-Venkat

Read only

0 Likes
4,844

Hi Venkat,

KBETR field is used in order to calcaulate percentage for the follwoing margins i n my program.

ZMAR and ZSTD margins in sap,

ZMAR with key combination of customer article in sap,

GRN No(MBLNR)

ZMAR

ZSTD of PO Post GRN

Read only

0 Likes
4,844

OK.

BEGIN OF ty_final,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         zstd(13) TYPE c,

         zmar(13) TYPE c,

         ebelp TYPE ebelp,

         KBETR TYPE KBETR_KOND,

         knumh TYPE knumh,

         kdgrp TYPE kdgrp,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

          belnr TYPE mblnr,

          zmm_kbetr TYPE kbetr,

          zstd_kbetr TYPE kbetr,

         END OF ty_final.

In your types declaration there is only one KBETR field as you can see. So for the other fields why are you passing KBETR field name?

Write like this:

wa_fieldcat-col_pos = 4.

   wa_fieldcat-fieldname = 'ZMAR_KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR and ZSTD margins in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 5.

   wa_fieldcat-fieldname = 'ZM_KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR with key combination of customer article in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

Fieldcatalog needs to be built based on fields in you internal table, else same column will be displayed multiple times.

What run-time error are you getting?

Read only

0 Likes
4,844

Hi,

In debugging mode

SELECT  ebeln

           bukrs

          lifnr

       FROM ekko  INTO TABLE it_ekko

       WHERE bukrs = p_bukrs

AND lifnr IN s_lifnr.

while checking entries in bukrs and lifnrshowing entries but in it_ekko showing zero enteries.

How can i get enteries in it_ekko.

Read only

0 Likes
4,844

That's the reason why you weren't able to display the output!

For retrieving values from EKKO table, give valid entries on your selection screen.

Check like this:

Goto EKKO table, consider any row and pass the same combination(BUKRS and LIFNR) in your selection screen.

This should fill your internal table it_ekko.

Read only

0 Likes
4,844

Iam checking with valid enteries in selection screen. In se16n ekko table and executing its showing like BUKRS =1000 and LIFNR = 1029. This data only am giving in selection screen before debugging. but it_ekko showing zero enteries.

Read only

0 Likes
4,844

Hi Venkat,

Thanks for the solution based. Its works for me here. But sad is result is showing 0 for all field names.

zmar_kbetr

zm_kbetr

belnr,

zmm_kbetr

zstd_kbetr



          zmm_kbetr TYPE kbetr,

Read only

Pragnesh_7se7
Participant
0 Likes
4,844

Hi,

Put you append statement outside of if condition,

Read only

Former Member
0 Likes
4,844

dear Mounika ,

Put condition as shown .

if it_final[] is not initial .

call function 'Resue_alv_display'

else.

  message 'No data View ' type 'S'.

endif.

Read only

0 Likes
4,844

Hi Nice,

After using the above code am getting runtime error.

*&---------------------------------------------------------------------*

*& Report  ZMM_GRNMARGIN_REPORT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  zmm_grnmargin_report.

TYPE-POOLS : slis.

TABLES : ekko,ekbe.

TYPES : BEGIN OF ty_ekko,

         ebeln TYPE ebeln,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         END OF ty_ekko,

         BEGIN OF ty_ekbe,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         belnr TYPE mblnr,

         END OF ty_ekbe,

         BEGIN OF ty_konp,

         KBETR TYPE KBETR_KOND,

          END OF ty_konp,

         BEGIN OF ty_konv,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

         zmm_kbetr TYPE kbetr,

         zstd_kbetr TYPE kbetr,

          END OF ty_konv,

         BEGIN OF ty_final,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         zstd(13) TYPE c,

         zmar(13) TYPE c,

         ebelp TYPE ebelp,

         KBETR TYPE KBETR_KOND,

         knumh TYPE knumh,

         kdgrp TYPE kdgrp,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

          belnr TYPE mblnr,

          zmm_kbetr TYPE kbetr,

          zstd_kbetr TYPE kbetr,

         END OF ty_final.

DATA : it_ekko TYPE TABLE OF ty_ekko,

        wa_ekko LIKE LINE OF it_ekko,

        it_ekbe TYPE TABLE OF ty_ekbe,

        wa_ekbe LIKE LINE OF it_ekbe,

        it_final TYPE TABLE OF ty_final,

        wa_final LIKE LINE OF it_final.

DATA : it_a918 TYPE TABLE OF a918 WITH HEADER LINE,

         wa_a918 LIKE LINE OF it_a918,

         it_konv TYPE TABLE OF konv WITH HEADER LINE,

         wa_konv LIKE LINE OF it_konv,

         it_konp TYPE TABLE OF konp WITH HEADER LINE,

         wa_konp LIKE LINE OF it_konp,

         it_a142 TYPE TABLE OF a142 WITH HEADER LINE,

         wa_a142 LIKE LINE OF it_a142.

DATA: it_fieldcat TYPE TABLE OF slis_fieldcat_alv,

       wa_fieldcat LIKE LINE OF it_fieldcat,

       wa_layout TYPE slis_layout_alv.

SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.

PARAMETERS :p_bukrs TYPE ekko-bukrs OBLIGATORY.

SELECT-OPTIONS :s_budat FOR ekbe-budat,

                 s_lifnr FOR ekko-lifnr,

                 s_matnr FOR ekbe-matnr.

PARAMETERS : p_werks TYPE ekbe-werks OBLIGATORY.

SELECTION-SCREEN: END OF BLOCK b1.

START-OF-SELECTION.

   SELECT  ebeln

           bukrs

          lifnr

       FROM ekko  INTO TABLE it_ekko

       WHERE bukrs = p_bukrs

       AND lifnr IN s_lifnr.

     IF it_ekko[] IS NOT INITIAL.

       SELECT  ebeln

               budat

               matnr

               werks

               BELNR

         FROM ekbe INTO TABLE it_ekbe

         WHERE budat IN s_budat

         AND  matnr IN s_matnr

         AND  werks EQ p_werks.

     ENDIF.

*&-----------------------------------------------------------------------------------------------&*

*& FORM GET ZMAR

*&-----------------------------------------------------------------------------------------------&*

* text

*------------------------------------------------------------------------------------------------&*

*  --> p1 text

* <-- p2 text

*------------------------------------------------------------------------------------------------*

   IF it_ekbe[] IS NOT INITIAL.

     SELECT matnr

            knumh

        FROM a918 INTO TABLE it_a918

         WHERE kappl = 'V'

        AND  kschl = 'ZMAR'

       AND   kdgrp = 'FR'

       AND  matnr IN s_matnr

       AND  DATAB GE SY-DATUM.

   ENDIF.

*&-----------------------------------------------------------------------------------------------&*

*& FORM GET ZSTD

*&-----------------------------------------------------------------------------------------------&*

* text

*------------------------------------------------------------------------------------------------&*

*  --> p1 text

* <-- p2 text

*------------------------------------------------------------------------------------------------*

   IF it_a918[] IS NOT INITIAL.

     SELECT kappl

            kschl

            matnr

            knumh

          FROM a142 INTO TABLE it_a142

         WHERE kappl = 'M'

         AND kschl = 'ZSTD'

         AND matnr IN s_matnr

        AND  DATAB GE SY-DATUM.

   ENDIF.

   IF sy-subrc = 0.

     SELECT

            kappl

            kschl

            Kbetr

       FROM konv INTO TABLE it_konv

       WHERE kappl = 'M'

       AND  kschl = 'zmar' OR kschl = 'zstd'.

   ENDIF.

   PERFORM arrange_data.

   PERFORM build_fieldcatalog.

   perFORM display_report .

*&-----------------------------------------------------------------------------------------------&*

*& FORM Arrange data

*&-----------------------------------------------------------------------------------------------&*

FORM arrange_data.

   LOOP AT it_ekko INTO wa_ekko.

     wa_final-bukrs = wa_ekko-bukrs.

     wa_final-lifnr = wa_ekko-lifnr.

     READ TABLE it_ekbe INTO wa_ekbe WITH KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       wa_final-budat = wa_ekbe-budat.

       wa_final-matnr = wa_ekbe-matnr.

       wa_final-werks = wa_ekbe-werks.

     ENDIF.

     IF sy-subrc = 0.

      READ TABLE it_a918 INTO wa_a918 WITH KEY matnr = S_matnr KSCHL = 'ZMAR'.

*    wa_final-ZMAR = wa_a914-KBETR.

      SELECT SINGLE kbetr FROM konp INTO wa_konp WHERE kappl = 'M'

                                            AND ( kschl = 'ZMAR' OR kschl = 'ZSTD' )

                                            AND knumh = wa_a918-knumh.

       IF sy-subrc = 0.

         wa_final-zmar = wa_konp-kbetr / 10.

       ENDIF.

     ENDIF.

      IF sy-subrc = 0.

      READ TABLE it_a142 INTO wa_a142 WITH KEY matnr = s_matnr.

      wa_final-zstd = wa_konp-kbetr / 10.

      ENDIF.

     SORT it_ekbe.

     READ TABLE it_ekbe INTO wa_ekbe WITH  KEY ebeln = wa_ekko-ebeln.

     if it_final[] is not initial .

call function 'Resue_alv_display'.

else.

   message 'No data View ' type 'S'.

endif.

     APPEND wa_final TO it_final."Build final itab

       CLEAR wa_final.

     CLEAR : wa_final,wa_ekko,wa_ekbe,wa_a918,wa_a142,wa_konv,wa_konp.

   ENDLOOP.

ENDFORM.                    "Arrange_data

*&---------------------------------------------------------------------*

*& FORM BUILD FIELDCATALOG

*&---------------------------------------------------------------------*

FORM build_fieldcatalog.

   wa_fieldcat-col_pos = 1.

   wa_fieldcat-fieldname = 'EBELN'.

   wa_fieldcat-seltext_m = 'Purchase order'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 2.

   wa_fieldcat-fieldname = 'EBELP'.

   wa_fieldcat-seltext_m = 'Purchase order item no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 3.

   wa_fieldcat-fieldname = 'MATNR'.

   wa_fieldcat-seltext_m = 'Article description'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 4.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR and ZSTD margins in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 5.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR with key combination of customer article in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 6.

   wa_fieldcat-fieldname = 'MBLNR'.

   wa_fieldcat-seltext_m = 'Goods reciept no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 7.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 8.

   wa_fieldcat-fieldname = 'KBETR'.

   wa_fieldcat-seltext_m = 'ZSTD OF PO POST GRN'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

ENDFORM.                    " BUILD_FIELDCAT

*&---------------------------------------------------------------------*

*&      Form  DISPLAY_REPORT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM display_report .

   wa_layout-zebra = 'X'.

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

   EXPORTING

      I_CALLBACK_PROGRAM                = sy-cprog

      IS_LAYOUT                         = wa_layout

      IT_FIELDCAT                       = it_fieldcat

     TABLES

       t_outtab                          it_final

*   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.

Read only

0 Likes
4,844

Dear Mounika,

There are couple of points :

1. There is No FM with

call function 'Resue_alv_display'.

The intension of the above post from Mr. nice was to Use FM related to ALV Display

REUSE_ALV_GRID_DISPLAY

REUSE_ALV_LIST_DISPLAY

Thats why you are getting syntax error.

2. There is some problem with data what you are providing to selection screen. Please cross check sometimes leading zero's also cause this problem.

3. Please debug and find root cause.

Read only

Former Member
0 Likes
4,843

I did changes in my program. Getting output zero for the fields. And Purchase order fields are showing blank.

zmar_kbetr

zm_kbetr

belnr,

zmm_kbetr

zstd_kbetr

Please have a look in the below code.

zmar_kbetr

zm_kbetr

belnr,

zmm_kbetr

*&---------------------------------------------------------------------*

*& Report  ZMM_GRNMARGIN_REPORT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  zmm_grnmargin_report.

TYPE-POOLS : slis.

TABLES : ekko,ekbe.

TYPES : BEGIN OF ty_ekko,

         ebeln TYPE ebeln,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         END OF ty_ekko,

         BEGIN OF ty_ekbe,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         belnr TYPE mblnr,

         END OF ty_ekbe,

         BEGIN OF ty_konp,

         KBETR TYPE KBETR_KOND,

          END OF ty_konp,

         BEGIN OF ty_konv,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

         zmm_kbetr TYPE kbetr,

         zstd_kbetr TYPE kbetr,

          END OF ty_konv,

         BEGIN OF ty_final,

         bukrs TYPE bukrs,

         lifnr TYPE elifn,

         ebeln TYPE ebeln,

         budat TYPE budat,

         matnr TYPE matnr,

         werks TYPE werks_d,

         zstd(13) TYPE c,

         zmar(13) TYPE c,

         ebelp TYPE ebelp,

         KBETR TYPE KBETR_KOND,

         knumh TYPE knumh,

         kdgrp TYPE kdgrp,

         zmar_kbetr TYPE kbetr,

          zm_kbetr TYPE kbetr,

          belnr TYPE mblnr,

          zmm_kbetr TYPE kbetr,

          zstd_kbetr TYPE kbetr,

         END OF ty_final.

DATA : it_ekko TYPE TABLE OF ty_ekko,

        wa_ekko LIKE LINE OF it_ekko,

        it_ekbe TYPE TABLE OF ty_ekbe,

        wa_ekbe LIKE LINE OF it_ekbe,

        it_final TYPE TABLE OF ty_final,

        wa_final LIKE LINE OF it_final.

DATA : it_a918 TYPE TABLE OF a918 WITH HEADER LINE,

         wa_a918 LIKE LINE OF it_a918,

         it_konv TYPE TABLE OF konv WITH HEADER LINE,

         wa_konv LIKE LINE OF it_konv,

         it_konp TYPE TABLE OF konp WITH HEADER LINE,

         wa_konp LIKE LINE OF it_konp,

         it_a142 TYPE TABLE OF a142 WITH HEADER LINE,

         wa_a142 LIKE LINE OF it_a142.

DATA: it_fieldcat TYPE TABLE OF slis_fieldcat_alv,

       wa_fieldcat LIKE LINE OF it_fieldcat,

       wa_layout TYPE slis_layout_alv.

SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.

PARAMETERS :p_bukrs TYPE ekko-bukrs OBLIGATORY.

SELECT-OPTIONS :s_budat FOR ekbe-budat,

                 s_lifnr FOR ekko-lifnr,

                 s_matnr FOR ekbe-matnr.

PARAMETERS : p_werks TYPE ekbe-werks OBLIGATORY.

SELECTION-SCREEN: END OF BLOCK b1.

START-OF-SELECTION.

   SELECT  ebeln

           bukrs

          lifnr

       FROM ekko  INTO TABLE it_ekko

       WHERE bukrs = p_bukrs

       AND lifnr IN s_lifnr.

     IF it_ekko[] IS NOT INITIAL.

       SELECT  ebeln

               budat

               matnr

               werks

               BELNR

         FROM ekbe INTO TABLE it_ekbe

         WHERE budat IN s_budat

         AND  matnr IN s_matnr

         AND  werks EQ p_werks.

     ENDIF.

*&-----------------------------------------------------------------------------------------------&*

*& FORM GET ZMAR

*&-----------------------------------------------------------------------------------------------&*

* text

*------------------------------------------------------------------------------------------------&*

*  --> p1 text

* <-- p2 text

*------------------------------------------------------------------------------------------------*

   IF it_ekbe[] IS NOT INITIAL.

     SELECT matnr

            knumh

        FROM a918 INTO TABLE it_a918

         WHERE kappl = 'V'

        AND  kschl = 'ZMAR'

       AND   kdgrp = 'FR'

       AND  matnr IN s_matnr

       AND  DATAB GE SY-DATUM.

   ENDIF.

*&-----------------------------------------------------------------------------------------------&*

*& FORM GET ZSTD

*&-----------------------------------------------------------------------------------------------&*

* text

*------------------------------------------------------------------------------------------------&*

*  --> p1 text

* <-- p2 text

*------------------------------------------------------------------------------------------------*

   IF it_a918[] IS NOT INITIAL.

     SELECT kappl

            kschl

            matnr

            knumh

          FROM a142 INTO TABLE it_a142

         WHERE kappl = 'M'

         AND kschl = 'ZSTD'

         AND matnr IN s_matnr

        AND  DATAB GE SY-DATUM.

   ENDIF.

   IF sy-subrc = 0.

     SELECT

            kappl

            kschl

            Kbetr

       FROM konv INTO TABLE it_konv

       WHERE kappl = 'M'

       AND  kschl = 'zmar' OR kschl = 'zstd'.

   ENDIF.

   PERFORM arrange_data.

   PERFORM build_fieldcatalog.

   perFORM display_report .

*&-----------------------------------------------------------------------------------------------&*

*& FORM Arrange data

*&-----------------------------------------------------------------------------------------------&*

FORM arrange_data.

   LOOP AT it_ekko INTO wa_ekko.

     wa_final-bukrs = wa_ekko-bukrs.

     wa_final-lifnr = wa_ekko-lifnr.

     READ TABLE it_ekbe INTO wa_ekbe WITH KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       wa_final-budat = wa_ekbe-budat.

       wa_final-matnr = wa_ekbe-matnr.

       wa_final-werks = wa_ekbe-werks.

     ENDIF.

     IF sy-subrc = 0.

      READ TABLE it_a918 INTO wa_a918 WITH KEY matnr = S_matnr KSCHL = 'ZMAR'.

*    wa_final-ZMAR = wa_a914-KBETR.

      SELECT SINGLE kbetr FROM konp INTO wa_konp WHERE kappl = 'M'

                                            AND ( kschl = 'ZMAR' OR kschl = 'ZSTD' )

                                            AND knumh = wa_a918-knumh.

       IF sy-subrc = 0.

         wa_final-zmar = wa_konp-kbetr / 10.

       ENDIF.

     ENDIF.

      IF sy-subrc = 0.

      READ TABLE it_a142 INTO wa_a142 WITH KEY matnr = s_matnr.

      wa_final-zstd = wa_konp-kbetr / 10.

      ENDIF.

     SORT it_ekbe.

     READ TABLE it_ekbe INTO wa_ekbe WITH  KEY ebeln = wa_ekko-ebeln.

     IF sy-subrc = 0.

       CLEAR wa_final.

     ENDIF.

     APPEND wa_final TO it_final."Build final itab

     CLEAR wa_final.

     CLEAR : wa_final,wa_ekko,wa_ekbe,wa_a918,wa_a142,wa_konv,wa_konp.

   ENDLOOP.

ENDFORM.                    "Arrange_data

*&---------------------------------------------------------------------*

*& FORM BUILD FIELDCATALOG

*&---------------------------------------------------------------------*

FORM build_fieldcatalog.

   wa_fieldcat-col_pos = 1.

   wa_fieldcat-fieldname = 'EBELN'.

   wa_fieldcat-seltext_m = 'Purchase order'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 2.

   wa_fieldcat-fieldname = 'EBELP'.

   wa_fieldcat-seltext_m = 'Purchase order item no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 3.

   wa_fieldcat-fieldname = 'MATNR'.

   wa_fieldcat-seltext_m = 'Article description'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 4.

   wa_fieldcat-fieldname = 'ZMAR_KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR and ZSTD margins in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 5.

   wa_fieldcat-fieldname = 'ZM_KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR with key combination of customer article in sap'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 6.

   wa_fieldcat-fieldname = 'MBLNR'.

   wa_fieldcat-seltext_m = 'Goods reciept no'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 7.

   wa_fieldcat-fieldname = 'ZMM_KBETR'.

   wa_fieldcat-seltext_m = 'ZMAR'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-col_pos = 8.

   wa_fieldcat-fieldname = 'ZSTD_KBETR'.

   wa_fieldcat-seltext_m = 'ZSTD OF PO POST GRN'.

   APPEND wa_fieldcat TO it_fieldcat.

   CLEAR wa_fieldcat.

ENDFORM.                    " BUILD_FIELDCAT

*&---------------------------------------------------------------------*

*&      Form  DISPLAY_REPORT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM display_report .

   wa_layout-zebra = 'X'.

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

   EXPORTING

      I_CALLBACK_PROGRAM                = sy-cprog

      IS_LAYOUT                         = wa_layout

      IT_FIELDCAT                       = it_fieldcat

     TABLES

       t_outtab                          it_final

*   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.


Read only

0 Likes
4,843

Are you getting values into it_ekko table?

Read only

0 Likes
4,843

Iam not getting values in it_ekko in debugging mode .How to get values into it plz help me...

Read only

0 Likes
4,843

Hi Mounika-

Just check whether you are able to get details by passing only Company Code and Plant (as they are mandatory fields) on the selection screen. Leave other fields as empty.

If above procedure doesn't work try below approach:

Just for trial remove Obligatory for all the parameters in the selection screen and run with empty fields which has to select all the values.

Good luck!

-Venkat

Read only

0 Likes
4,843

Its working now in it_ekko enteries are showing ....

Thank u so much...

Read only

0 Likes
4,843

If everything is working fine, I would request you to close both the threads.

Thanks.

-Venkat

Read only

0 Likes
4,843

As i followed same method as u mentioned above in it_ekbe.

beln

               budat

               matnr

               werks

               BELNR

         FROM ekbe INTO TABLE it_ekbe

         WHERE budat IN s_budat

         AND  matnr IN s_matnr.

        AND  werks EQ p_werks.

If i wil enter Budat,Matnr, Werks it is showing  fill in all fields .so at tht time am giving Lifnr And company code also.still it_ekbe  showing zero enteries.

Read only

0 Likes
4,843

Check below queries:

SELECT ebeln

             bukrs

             lifnr

   FROM ekko

   INTO TABLE it_ekko

  WHERE bukrs = p_bukrs

    AND lifnr IN s_lifnr.

IF it_ekko[] IS NOT INITIAL.

   SELECT ebeln

               budat

               matnr

               werks

               belnr

     FROM ekbe

     INTO TABLE it_ekbe

      FOR ALL ENTRIES IN it_ekko

    WHERE ebeln = it_ekko-ebeln

      AND budat IN s_budat

      AND matnr IN s_matnr

      AND werks = p_werks.

ENDIF.

-Venkat

Read only

0 Likes
4,843

I followed above quey only but still in debugging mode it_ekbe showing zero enteries .s_matnr and p_werks showing values not in it_ekbe.

START-OF-SELECTION.

SELECT  ebeln

           bukrs

          lifnr

       FROM ekko  INTO TABLE it_ekko

       WHERE bukrs = p_bukrs

       AND lifnr IN s_lifnr.

     IF it_ekko[] IS NOT INITIAL.

       SELECT  ebeln

               budat

               matnr

               werks

               BELNR

         FROM ekbe INTO TABLE it_ekbe

         FOR ALL ENTRIES IN it_ekko

         WHERE ebeln = it_ekko-ebeln

         AND  matnr IN s_matnr

         AND  werks EQ p_werks.

     ENDIF.

Read only

0 Likes
4,843

Mounika-

I couldn't find any issue with query, I only doubt the data you are selecting....

   SELECT ebeln

               budat

               matnr

               werks

               belnr

     FROM ekbe

     INTO TABLE it_ekbe

      FOR ALL ENTRIES IN it_ekko

    WHERE ebeln = it_ekko-ebeln

      AND budat IN s_budat -> missing in your quesry

      AND matnr IN s_matnr

      AND werks = p_werks.

Please note:

Select an entry from EKKO table and the same order needs to be available in EKBE -> PO history table. (This table will be updated only when you make an goods receipt / invoice against particular PO)

So check for the same order in EKBE table too and pass the values accordingly.

For testing purpose select an order which is available in all these tables...

-Venkat

Read only

0 Likes
4,843

Hi-

I have tried to retrieve data from both EKKO and EKBE tables based on your selection screen criteria:

Selection Screen:

Debugging Screen:

Internal table:IT_EKKO

Internal Table: IT_EKBE

My code for the same is:

REPORT zvenkat_test1.

TYPE-POOLS: slis.

TABLES: ekko,

         ekbe.

TYPES : BEGIN OF ty_ekko,

          ebeln TYPE ebeln,

          bukrs TYPE bukrs,

          lifnr TYPE elifn,

          END OF ty_ekko,

          BEGIN OF ty_ekbe,

          ebeln TYPE ebeln,

          budat TYPE budat,

          matnr TYPE matnr,

          werks TYPE werks_d,

          belnr TYPE mblnr,

          END OF ty_ekbe,

          BEGIN OF ty_final,

          bukrs TYPE bukrs,

          lifnr TYPE elifn,

          ebeln TYPE ebeln,

          budat TYPE budat,

          matnr TYPE matnr,

          werks TYPE werks_d,

          belnr TYPE mblnr,

          END OF ty_final.

DATA : it_ekko  TYPE TABLE OF ty_ekko,

        wa_ekko  TYPE ty_ekko,

        it_ekbe  TYPE TABLE OF ty_ekbe,

        wa_ekbe  TYPE ty_ekbe,

        it_final TYPE TABLE OF ty_final,

        wa_final TYPE ty_final.

DATA: it_fieldcat TYPE TABLE OF slis_fieldcat_alv,

       wa_fieldcat LIKE LINE OF it_fieldcat.

PARAMETERS :p_bukrs TYPE ekko-bukrs OBLIGATORY.

SELECT-OPTIONS :s_budat FOR ekbe-budat,

                 s_lifnr FOR ekko-lifnr,

                 s_matnr FOR ekbe-matnr.

PARAMETERS : p_werks TYPE ekbe-werks OBLIGATORY.

START-OF-SELECTION.

SELECT ebeln

        bukrs

        lifnr

   FROM ekko

   INTO TABLE it_ekko

  WHERE bukrs = p_bukrs

    AND lifnr IN s_lifnr.

IF sy-subrc 0 AND it_ekko[] IS NOT INITIAL.

   SELECT ebeln

          budat

          matnr

          werks

          belnr

     FROM ekbe

     INTO TABLE it_ekbe

      FOR ALL ENTRIES IN it_ekko

    WHERE ebeln = it_ekko-ebeln

      AND budat IN s_budat

      AND matnr IN s_matnr

      AND werks = p_werks.

ENDIF.

IF it_ekbe[] IS NOT INITIAL.

ENDIF.

Now I can confirm that queries written were correct, problem is with your data selection. Please pass the appropriate data.

Thanks.

-Venkat

Read only

0 Likes
4,843

Iam checking ekbe values in se16n and giving valid data in selection screen.

Bukrs :1000

Budat : 04.06.2008

Matnr :40002654

Werks : 1002

Above mentioned data am checking in selction screen .

IF it_ekko[] IS NOT INITIAL.

       SELECT  ebeln

               budat

               matnr

               werks

               belnr

         FROM ekbe INTO TABLE it_ekbe

         FOR ALL ENTRIES IN it_ekko

         WHERE ebeln = it_ekko-ebeln

         AND budat IN s_budat

         AND  matnr IN s_matnr

         AND  werks EQ p_werks.

     ENDIF.

Above query am debugging still it_ekbe showing zero enteries.what to do.plz help me

Read only

0 Likes
4,843

First of all check whether material has leading zeros. Secondly you have date in EKBE  for MATNR  and other criteria, but did you check the PO number in IT_EKKO Whether those PO satisy plant...material...date criteria from EKBE

Read only

0 Likes
4,843

Its working ...thank u..

Regards,

Mounika

Read only

0 Likes
4,843

Hi Mounika,

Good to hear that, at last your problem got resolved!

Please close your threads if it's been answered and from here on please don't open multiple threads for the same issue.

Thanks,

Venkat