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

tables

Former Member
0 Likes
720

Hi ,

I am not very good with the flow...I need to find the tables to fulfill this requirement.

Anyone help me.

write a program which will take the customer number from the selection screen and show the following details of its sales order.

KUNNR , ERDAT,VKORG , VBELN and VKORG

Message was edited by:

ramana peddu

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
668

Hi,

You can read from table VBAK for field KUNNR, ERDAT, VKORG and VBELN.

Please try something like this.


TABLES: VBAK.

SELECT-OPTIONS: S_KUNNR FOR VBAK-KUNNR.

DATA: BEGIN OF I_VBAK OCCURS 0,
        KUNNR LIKE VBAK-KUNNR,
        ERDAT LIKE VBAK-ERDAT,
        VKORG LIKE VBAK-VKORG,
        VBELN LIKE VBAK-VBELN.   
DATA: END OF I_VBAK.

SELECT KUNNR, ERDAT, VKORG, VBELN
INTO TABLE I_VBAK
FROM VBAK
WHERE KUNRR IN S_KUNNR.

SORT I_VBAK.
LOOP AT I_VBAK.
  WRITE: / I_VBAK-KUNNR,
           I_VBAK-ERDAT,
           I_VBAK-VKORG,
           I_VBAK-VBELN.
ENDLOOP.

Regards,

Ferry Lianto

5 REPLIES 5
Read only

Former Member
0 Likes
669

Hi,

You can read from table VBAK for field KUNNR, ERDAT, VKORG and VBELN.

Please try something like this.


TABLES: VBAK.

SELECT-OPTIONS: S_KUNNR FOR VBAK-KUNNR.

DATA: BEGIN OF I_VBAK OCCURS 0,
        KUNNR LIKE VBAK-KUNNR,
        ERDAT LIKE VBAK-ERDAT,
        VKORG LIKE VBAK-VKORG,
        VBELN LIKE VBAK-VBELN.   
DATA: END OF I_VBAK.

SELECT KUNNR, ERDAT, VKORG, VBELN
INTO TABLE I_VBAK
FROM VBAK
WHERE KUNRR IN S_KUNNR.

SORT I_VBAK.
LOOP AT I_VBAK.
  WRITE: / I_VBAK-KUNNR,
           I_VBAK-ERDAT,
           I_VBAK-VKORG,
           I_VBAK-VBELN.
ENDLOOP.

Regards,

Ferry Lianto

Read only

SantoshKallem
Active Contributor
0 Likes
668
Read only

RaymondGiuseppi
Active Contributor
0 Likes
668

Look at <a href="http://www.erpgenie.com/abap/tables_sd.htm">SAP SD Tables</a> for SD table

For your requirement use table VBAK.

Regards

Read only

Former Member
0 Likes
668

Hi Ramana,

PARAMETERS: P_KUNNR TYPE VBAK-KUNNR.

DATA:

BEGIN OF IT_VBAK OCCURS 0,

VBELN TYPE VBAK-VBELN,

ERDAT TYPE VBAK-ERDAT,

VKORG TYPE VBAK-VKROG,

KUNNR TYPE VBAK-KUNNR,

END OF IT_VBAK.

START-OF-SELECTION.

SELECT VBELN

ERDAT

VKORG

KUNNR

FROM VBAK

INTO TABLE IT_VBAK

WHERE KUNNR = P_KUNNR.

END-OF-SELECTION.

LOOP AT IT_VBAK,

WRITE:/ IT_VBAK.

ENDLOOP.

Thanks,

Vinay

Read only

Former Member
0 Likes
668

Hi,

<b>Option-1:

-


</b>

Do not read VBAK for KUNNR since KUNNR is not index field. You have to create a index on table VBAK for KUNNR. But before that consult your SD functional lead.

If you create a idex on VBAK then your code would be:

*----------------------------------------------------------------------*
TABLES: vbak.
DATA: BEGIN OF lit_vbak OCCURS 0,
        vbeln LIKE vbak-vbeln,
        erdat LIKE vbak-erdat,
        vkorg LIKE vbak-vkorg,
        kunnr LIKE vbak-kunnr,
      END OF lit_vbak.

SELECT-OPTIONS: s_kunnr FOR vbak-kunnr.

SELECT
      vbeln
      erdat
      vkorg
      kunnr FROM vbak
      INTO TABLE lit_vbak
      WHERE kunnr IN s_kunnr.

SORT lit_vbak BY kunnr erdat
                 vkorg vbeln.
LOOP AT lit_vbak.
  WRITE: / lit_vbak-kunnr,
           lit_vbak-erdat,
           lit_vbak-vkorg,
           lit_vbak-vbeln.
ENDLOOP.
*----------------------------------------------------------------------*

<b>Option-2:

-


</b>

Read table VAKPA. This is Sales index table by partner function. Let's your customer are "Solt-to party" and your order type is "ZOR" then your code would be:

*----------------------------------------------------------------------*
TABLES: vbak.
CONSTANTS: c_auart LIKE vbak-auart VALUE 'ZOR',
           c_parvw LIKE vbpa-parvw VALUE 'SP'.

DATA: BEGIN OF lit_vbak OCCURS 0,
        kunnr LIKE vbak-kunnr,
        vkorg LIKE vbak-vkorg,
        vbeln LIKE vbak-vbeln,
        erdat LIKE vbak-erdat,
      END OF lit_vbak.

SELECT-OPTIONS: s_kunnr FOR vbak-kunnr.

SELECT
      a~kunde
      a~vkorg
      a~vbeln
      b~erdat FROM vakpa AS a
              INNER JOIN vbak AS b
              ON a~vbeln = b~vbeln
              INTO TABLE lit_vbak
              WHERE a~kunde IN s_kunnr AND
                    a~parvw = c_parvw  AND
                    a~auart = c_auart.

SORT lit_vbak BY kunnr erdat
                 vkorg vbeln.
LOOP AT lit_vbak.
  WRITE: / lit_vbak-kunnr,
           lit_vbak-erdat,
           lit_vbak-vkorg,
           lit_vbak-vbeln.
ENDLOOP.
*----------------------------------------------------------------------*

Let me know if you need any other information.

Regards,

RS