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