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

Report

Former Member
0 Likes
391

Hi All,

I want Assignment Number against Billing Document No..

For HINT:- I want to take Assignment from F-28 T.Code.

Plz check my CODE...

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

REPORT ZSALES_REPORT LINE-SIZE 250 MESSAGE-ID ZPU .

TABLES : VBAK, VBRP, VBRK, KNA1, T001, LIKP, VBPA, TVKBT, TVGRT, KONV, VBKD, VBFA, T052, BSAD, BSAK, bkpf.

TYPE-POOLS: SLIS.

DATA: BEGIN OF ITAB OCCURS 0,

VKBUR LIKE VBAK-VKBUR , " Sales Office

BEZEI LIKE TVKBT-BEZEI, " Description

KUNNR LIKE VBAK-KUNNR , " Sold to party

NAME1 LIKE KNA1-NAME1 , " CUSTOMER NAME

VBELN LIKE VBAK-VBELN , " Sale Order Number

NETWR LIKE VBAK-NETWR , " SALES DOC VALUE

VBELN1 LIKE VBRP-VBELN , " BILLING DOCUMENT NO.

FKDAT LIKE VBRK-FKDAT , " BILLING DATE

NETWR1 LIKE VBRK-NETWR , " BILLING DOCUMENT VALUE

MWSBK LIKE VBRK-MWSBK , " TAX AMOUNT

CD_AMT TYPE P DECIMALS 2 , " CD AMOUNT

AMT_DUE TYPE P DECIMALS 2 , " AMOUNT DUE

ZUONR LIKE BSAK-ZUONR , " Assignment number

END OF ITAB .

DATA : W_CONTAINER TYPE SCRFNAME VALUE 'CL_GRID',

W_CPROG TYPE LVC_S_LAYO,

G_REPID LIKE SY-REPID,

W_SAVE TYPE C,

W_EXIT TYPE C,

CL_GRID TYPE REF TO CL_GUI_ALV_GRID,

CL_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,

IT_FLD_CATALOG TYPE SLIS_T_FIELDCAT_ALV,

WA_FLD_CATALOG TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE ,

LAYOUT TYPE SLIS_LAYOUT_ALV,

COL_POS LIKE SY-CUCOL ,

ALVFC TYPE SLIS_T_FIELDCAT_ALV,

IT_SORT TYPE SLIS_T_SORTINFO_ALV.

SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME.

SELECT-OPTIONS: VKBUR FOR VBAK-VKBUR, " Sales Office

KUNNR FOR VBAK-KUNNR, " Sold to party

FKDAT FOR VBRK-FKDAT, " OBLIGATORY . " Created on

FKART FOR VBRK-FKART, " Billing Type

DUE_DT FOR SY-DATUM. " Due Date

SELECTION-SCREEN END OF BLOCK A.

PERFORM FILL_CATALOG1 USING:

'BEZEI' 'ITAB' 'BRANCH NAME',

'KUNNR' 'ITAB' 'CUST CODE',

'NAME1' 'ITAB' 'NAME' ,

'VBELN1' 'ITAB' 'INVOICE NO.' ,

'FKDAT' 'ITAB' 'INVOICE DATE',

'NETWR1' 'ITAB' 'INVOICE VALUE' ,

'ZUONR' 'ITAB' 'CHEQUE NUMBER' .

SELECT DISTINCT AVKBUR AKUNNR AVBELN BVBELN C~BEZEI

INTO (ITAB-VKBUR, ITAB-KUNNR, ITAB-VBELN, ITAB-VBELN1, ITAB-BEZEI)

FROM VBAK AS A INNER JOIN VBRP AS B ON AVBELN = BAUBEL

INNER JOIN TVKBT AS C ON AVKBUR = CVKBUR

WHERE A~VKBUR IN VKBUR

AND A~KUNNR IN KUNNR

AND C~SPRAS = 'EN'.

APPEND ITAB.

ENDSELECT.

SORT ITAB BY VBELN.

LOOP AT ITAB.

SELECT SINGLE FKDAT NETWR MWSBK FROM VBRK INTO (ITAB-FKDAT, ITAB-NETWR1, ITAB-MWSBK)

WHERE VBELN = ITAB-VBELN1

AND FKDAT IN FKDAT.

IF SY-SUBRC NE 0.

DELETE ITAB.

CONTINUE.

ENDIF.

MODIFY ITAB INDEX SY-TABIX TRANSPORTING FKDAT NETWR1 MWSBK.

SELECT NAME1 FROM KNA1 INTO ITAB-NAME1 WHERE KUNNR = ITAB-KUNNR .

MODIFY ITAB INDEX SY-TABIX TRANSPORTING NAME1 .

ENDSELECT .

SELECT ZUONR FROM BSAK INTO (ITAB-ZUONR) WHERE zuonr = BKPF-BeLNR.

MODIFY ITAB INDEX SY-TABIX TRANSPORTING ZUONR.

ENDSELECT .

ENDLOOP.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = 'ZAK_CHQ_DUE'

IS_LAYOUT = LAYOUT

IT_FIELDCAT = IT_FLD_CATALOG

IT_SORT = IT_SORT

I_DEFAULT = 'X'

I_SAVE = 'A'

TABLES

T_OUTTAB = ITAB

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.

&----


*& Form FILL_CATALOG1

&----


  • text

----


  • -->P_FIELDNAME text

  • -->P_REF_TABLE text

  • -->P_SCRTEXT text

----


FORM FILL_CATALOG1 USING P_FIELDNAME TYPE ANY

P_REF_TABLE TYPE ANY

P_SCRTEXT TYPE ANY.

CLEAR : WA_FLD_CATALOG.

WA_FLD_CATALOG-FIELDNAME = P_FIELDNAME.

WA_FLD_CATALOG-TABNAME = P_REF_TABLE.

WA_FLD_CATALOG-SELTEXT_S = P_SCRTEXT.

WA_FLD_CATALOG-SELTEXT_M = P_SCRTEXT.

WA_FLD_CATALOG-SELTEXT_L = P_SCRTEXT.

APPEND WA_FLD_CATALOG TO IT_FLD_CATALOG.

ENDFORM. " fill_catalog1

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

In BOLD, this select query is for assignment number..In it, Value not coming.

If there is any condition that i must prefer plz tell me...

Thanks..

Edited by: Prince Kumar on May 15, 2008 1:05 PM

Edited by: Prince Kumar on May 15, 2008 2:09 PM

2 REPLIES 2
Read only

Sm1tje
Active Contributor
0 Likes
328

SELECT ZUONR FROM BSAK INTO (ITAB-ZUONR) WHERE zuonr = BKPF-BeLNR.

MODIFY ITAB INDEX SY-TABIX TRANSPORTING ZUONR.

ENDSELECT

Does this select give a subrc <> 0?

You have to make sure that field zuonr = BKPF-BeLNR are exactly the same, meaning for example the number of leading zero (conversion exit).

BTW: When you want to avoid ANY performance issues, you should at least get rid of all the select statements within a loop. Very expense performance wise!!

Read only

Former Member
0 Likes
328

Hi,

I know that my this select statement is wrong...that's why i m telling to do right this....

There is no value in ITAB-ZUONR field, that means select not give subrc 0...

Plz tell me..