Go on link..

link us with ...

Thursday, December 30, 2010

Report for Comparing Budgeted Price Vs Actual Purchase Price

*&---------------------------------------------------------------------*
*& Report ZVVF_MR006_PURCHASE *
*& *
*&---------------------------------------------------------------------*
REPORT ZVVF_MR006_PURCHASE no standard page heading line-size 110
MESSAGE-ID ZMM .
*----------------------------------------------------------------------
** Module Sales *
*----------------------------------------------------------------------
** Objective: Report for Comparing Budgeted Price Vs Actual
** Purchase Price
** Program : Updates tables ( ) Download data ( )
** Output Lists (X) ALV
**
** Technical Spec No :
** Date Created :
** Author :
** Location :
**---------------------------------------------------------------------*
* External Dependencies
**---------------------------------------------------------------------*
*
**---------------------------------------------------------------------*
* Amendment History
**---------------------------------------------------------------------*
* Who Change ID Reason
*** ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
*---------------------------------------------------------------------**
* Type-pools
*----------------------------------------------------------------------*
TYPE-POOLS : slis.
**---------------------------------------------------------------------*
* Tables
**---------------------------------------------------------------------*
TABLES: EKKO, "PURCHASING DOC. HEADER
EKPO, "PURCHASING DOC. ITEM
MAKT, "MATERIAL DISCRIPTION
LFA1, "VENDOR MASTER
KONV, "CONDITION (TRANSECTION DATA - CLUSTER TABLE)
T001, "Company Codes
ZVVF_MT006_PRICE,
ZVVF_MT006_MATNR.
**---------------------------------------------------------------------*
* Types Begin with TY_
**---------------------------------------------------------------------*
TYPES: BEGIN OF TY_DISPLAY ,
SRNUM TYPE I,
BSART LIKE EKKO-BSART,
EBELN LIKE EKKO-EBELN,
EBELP LIKE KONV-KPOSN,
AEDAT LIKE EKKO-AEDAT,
EKGRP LIKE EKKO-EKGRP,
LIFNR LIKE EKKO-LIFNR,
NAME1 LIKE LFA1-Name1,
MATNR LIKE EKPO-MATNR,
MATKL LIKE EKPO-MATKL,
MAKTX LIKE MAKT-MAKTX,
MENGE LIKE EKPO-MENGE,
kWERT1 like konv-kWERT,
kWERT2 like konv-kWERT,
kWERT3 like konv-kWERT,
kWERT4 like konv-kWERT,

MWSKZ LIKE EKPO-MWSKZ,
zJMO1 LIKE KONV-KWERT,
zJEC1 LIKE KONV-KWERT,
zJIP1 LIKE KONV-KWERT,
zJIP2 LIKE KONV-KWERT,
zJIP3 LIKE KONV-KWERT,
zJIP4 LIKE KONV-KWERT,
zJIP5 LIKE KONV-KWERT,
zJIP6 LIKE KONV-KWERT,
zSUR LIKE KONV-KWERT,
zTOT LIKE KONV-KWERT,
zRST LIKE KONV-KWERT,

ZFA1 LIKE KONV-KWERT,
ZCOM LIKE KONV-KWERT,
ZHAN LIKE KONV-KWERT,
ZICH LIKE KONV-KWERT,
ZIST LIKE KONV-KWERT,
ZAPM LIKE KONV-KWERT,
ZINS LIKE KONV-KWERT,
ZOCM LIKE KONV-KWERT,
ZPCK LIKE KONV-KWERT,
ZFCH LIKE KONV-KWERT,
ZMIS LIKE KONV-KWERT,
ZSUP LIKE KONV-KWERT,
ZEXP LIKE KONV-KWERT,

zsum1 like KONV-KWERT,
zland like KONV-KWERT,
zlaUN like KONV-KWERT,
ZSUM like KONV-KWERT,
zASUM like KONV-KWERT,
zDIF1 like KONV-KWERT,
zDIF2 like KONV-KWERT,
kunnr like ZVVF_MT006_PRICE-kunnr,
END OF TY_DISPLAY.

TYPES: BEGIN OF TY_EKKO ,
BSART LIKE EKKO-BSART,
EBELN LIKE EKKO-EBELN,
EBELP LIKE KONV-KPOSN,
AEDAT LIKE EKKO-AEDAT,
EKORG LIKE EKKO-EKORG,
EKGRP LIKE EKKO-EKGRP,
LIFNR LIKE EKKO-LIFNR,
KNUMV LIKE EKKO-KNUMV,
BUKRS LIKE EKKO-BUKRS,
WAERS LIKE EKKO-WAERS,
WERKS LIKE EKPO-WERKS,
MATNR LIKE EKPO-MATNR,
MATKL LIKE EKPO-MATKL,
MWSKZ LIKE EKPO-MWSKZ,
MEINS LIKE EKPO-MEINS,
MENGE LIKE EKPO-MENGE,
MTART LIKE EKPO-MTART,
kunnr like ZVVF_MT006_PRICE-kunnr,
ZSUM like KONV-KWERT,
zASUM like KONV-KWERT,
NAME1 LIKE LFA1-Name1,
MAKTX LIKE MAKT-MAKTX,
LAND1 LIKE T001-LAND1,
*--------------ADDED BY VINOD FOR TAXES.
NETWR LIKE EKPO-NETWR,
EFFWR LIKE EKPO-EFFWR,
KZWI6 LIKE EKPO-KZWI6,
KZWI4 LIKE EKPO-KZWI4,
*--------------END OF ADDITIONS BY VINOD
END OF TY_EKKO.

TYPES: BEGIN OF TY_KONV,
KNUMV LIKE KONV-KNUMV,
KPOSN LIKE KONV-KPOSN,
KSCHL LIKE KONV-KSCHL,
* KBETR LIKE KONV-KBETR,
KWERT LIKE KONV-KWERT,
END OF TY_KONV.

TYPES: BEGIN OF TY_KWERT,
KNUMV LIKE KONV-KNUMV,
KPOSN LIKE KONV-KPOSN,
KWERT1 LIKE KONV-KWERT,
KWERT2 LIKE KONV-KWERT,
KWERT3 LIKE KONV-KWERT,
kWERT4 like konv-KWERT,
KWERT LIKE KONV-KWERT,
KBETR LIKE KONV-KBETR,
ZFA1 LIKE KONV-KWERT,
ZCOM LIKE KONV-KWERT,
ZHAN LIKE KONV-KWERT,
ZICH LIKE KONV-KWERT,
ZIST LIKE KONV-KWERT,
ZAPM LIKE KONV-KWERT,
ZINS LIKE KONV-KWERT,
ZOCM LIKE KONV-KWERT,
ZPCK LIKE KONV-KWERT,
ZFCH LIKE KONV-KWERT,
ZMIS LIKE KONV-KWERT,
ZSUP LIKE KONV-KWERT,
ZEXP LIKE KONV-KWERT,
zsum1 LIKE KONV-KWERT,
END OF TY_KWERT.


**---------------------------------------------------------------------*
* Constants Begin with C_
**---------------------------------------------------------------------*
*--- For ALV ----*
CONSTANTS: c_top_of_page_db TYPE slis_formname VALUE 'TOP_OF_PAGE_DB'.
**---------------------------------------------------------------------*
* Data Begin with W_
**---------------------------------------------------------------------*

DATA : W_repid LIKE sy-repid, " For ALV
w_temp like ekpo-matnr.


**---------------------------------------------------------------------*
* Internal tables Begin with IT_
**---------------------------------------------------------------------*
*--- For ALV ----*
DATA: it_list_top_of_page TYPE slis_t_listheader,
it_events TYPE slis_t_event,
it_fieldcat TYPE slis_t_fieldcat_alv.
*---------------*
DATA : IT_DISPLAY TYPE STANDARD TABLE OF TY_DISPLAY WITH HEADER LINE.
DATA : IT_EKKO TYPE STANDARD TABLE OF TY_EKKO WITH HEADER LINE.
DATA : IT_KONV TYPE STANDARD TABLE OF TY_KONV WITH HEADER LINE.
DATA : IT_KWERT TYPE STANDARD TABLE OF TY_KWERT WITH HEADER LINE.

DATA : IT_XKOMV TYPE TABLE OF KOMV WITH HEADER LINE.
DATA : IT_TAXCOM TYPE TABLE OF TAXCOM WITH HEADER LINE.


*---------------------------------------------------------------------*
** WORK AREAS
*---------------------------------------------------------------------*
DATA : WA_layout TYPE slis_layout_alv. " For ALV
DATA : WA_DISPLAY LIKE LINE OF IT_DISPLAY.
DATA : WA_EKKO LIKE LINE OF IT_EKKO.
DATA : WA_KONV LIKE LINE OF IT_KONV.
DATA : WA_KWERT LIKE LINE OF IT_KWERT.
DATA : WA_matnr LIKE ZVVF_MT006_MATNR.
**---------------------------------------------------------------------*
* RANGES
**---------------------------------------------------------------------*
ranges: R_KONV for KONV-KSCHL.
**---------------------------------------------------------------------*
* Select Options Begin with SO_
**---------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK MAIN WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS : SO_LIFNR FOR EKKO-LIFNR.
SELECT-OPTIONS : SO_EKORG FOR EKKO-EKORG .
SELECT-OPTIONS : SO_WERKS FOR EKPO-WERKS OBLIGATORY.
SELECT-OPTIONS : SO_EBELN FOR EKKO-EBELN.
SELECT-OPTIONS : SO_AEDAT FOR EKKO-AEDAT OBLIGATORY.
SELECT-OPTIONS : SO_EKGRP FOR EKKO-EKGRP.
SELECT-OPTIONS : SO_MATKL FOR EKPO-MATKL.
SELECT-OPTIONS : SO_MATNR FOR EKPO-MATNR.
SELECTION-SCREEN END OF BLOCK MAIN.

SELECTION-SCREEN BEGIN OF BLOCK OPT WITH FRAME TITLE TEXT-002.
parameters : prm_RST type c radiobutton group grp,
prm_ALL type c radiobutton group grp.
SELECTION-SCREEN END OF BLOCK OPT.

*---------------------------------------------------------------------
** INITIALIZATION
*---------------------------------------------------------------------
INITIALIZATION.
w_repid = sy-repid.
PERFORM APPEND_RANGE.
*---------------------------------------------------------------------
** AT SELECTION-SCREEN
*---------------------------------------------------------------------
AT SELECTION-SCREEN.

*---------------------------------------------------------------------*
** START OF SELECTION :
*---------------------------------------------------------------------*
START-OF-SELECTION.

PERFORM EKKO_DATA.

IF SY-SUBRC = 0.
PERFORM KONV_DATA.
ELSE.
MESSAGE E005.
ENDIF.
*---------------------------------------------------------------------*
**END OF SELECTION :
*---------------------------------------------------------------------*
END-OF-SELECTION.
PERFORM SUM_KWERT.
PERFORM POPULATE_DATA.
* IF IT_DISPLAY[] IS INITIAL.
* MESSAGE E022.
* ENDIF.
PERFORM fieldcat_init USING it_fieldcat[].
PERFORM eventtab_build USING it_events[].
PERFORM comment_build USING it_list_top_of_page[].
PERFORM layout_build USING WA_layout.
PERFORM write_alv_grid.

*---------------------------------------------------------------------*
** F O R M EKKO_DATA
*---------------------------------------------------------------------*
FORM EKKO_DATA.

if prm_all = 'X'.

SELECT
EKKO~BSART
EKKO~EBELN
EKKO~AEDAT
EKKO~EKORG
EKKO~EKGRP
EKKO~LIFNR
EKKO~KNUMV
EKKO~BUKRS
EKKO~WAERS

EKPO~EBELP
EKPO~WERKS
EKPO~MATNR
EKPO~MATKL
EKPO~MWSKZ
EKPO~MEINS
EKPO~MENGE
EKPO~MTART
*------added by vinod.
EKPO~NETWR
EKPO~EFFWR
EKPO~KZWI6
EKPO~KZWI4
*------end of additions
LFA1~NAME1
MAKT~MAKTX
T001~LAND1

INTO CORRESPONDING FIELDS OF TABLE IT_EKKO
FROM EKKO INNER JOIN EKPO
ON EKKO~EBELN = EKPO~EBELN
INNER JOIN LFA1
ON EKKO~LIFNR = LFA1~LIFNR
INNER JOIN MAKT
ON EKPO~MATNR = MAKT~MATNR
INNER JOIN T001
ON EKPO~BUKRS = T001~BUKRS

WHERE EKKO~LIFNR IN SO_LIFNR
AND EKKO~EKORG IN SO_EKORG
AND EKKO~EBELN IN SO_EBELN
AND EKKO~AEDAT IN SO_AEDAT
AND EKKO~EKGRP IN SO_EKGRP
AND EKPO~WERKS IN SO_WERKS
AND EKPO~MATNR IN SO_MATNR
AND EKPO~MATKL IN SO_MATKL
AND MAKT~SPRAS = SY-LANGU.

endif.

if prm_rst = 'X'.

SELECT
EKKO~BSART
EKKO~EBELN
EKKO~AEDAT
EKKO~EKORG
EKKO~EKGRP
EKKO~LIFNR
EKKO~KNUMV
EKKO~BUKRS
EKKO~WAERS

EKPO~EBELP
EKPO~WERKS
EKPO~MATNR
EKPO~MATKL
EKPO~MWSKZ
EKPO~MEINS
EKPO~MENGE
EKPO~MTART
*------added by vinod.
EKPO~NETWR
EKPO~EFFWR
EKPO~KZWI6
EKPO~KZWI4
*------end of additions


ZVVF_MT006_PRICE~kunnr
ZVVF_MT006_PRICE~ZSUM
ZVVF_MT006_PRICE~ZASUM

LFA1~NAME1
MAKT~MAKTX
T001~LAND1

INTO CORRESPONDING FIELDS OF TABLE IT_EKKO
FROM EKKO INNER JOIN EKPO
ON EKKO~EBELN = EKPO~EBELN
INNER JOIN LFA1
ON EKKO~LIFNR = LFA1~LIFNR
INNER JOIN MAKT
ON EKpO~MATNR = MAKT~MATNR
INNER JOIN T001
ON EKPO~BUKRS = T001~BUKRS
INNER JOIN ZVVF_MT006_PRICE
ON EKPO~matnr = ZVVF_MT006_PRICE~matnr AND
EKKO~LIFNR = ZVVF_MT006_PRICE~LIFNR

WHERE EKKO~LIFNR IN SO_LIFNR
AND EKKO~EKORG IN SO_EKORG
AND EKKO~EBELN IN SO_EBELN
AND EKKO~AEDAT IN SO_AEDAT
AND EKKO~EKGRP IN SO_EKGRP
AND EKPO~WERKS IN SO_WERKS
AND EKPO~MATNR IN SO_MATNR
AND EKPO~MATKL IN SO_MATKL
AND MAKT~SPRAS = SY-LANGU.

endif.
ENDFORM. "EKKO_DATA

*---------------------------------------------------------------------*
** F O R M KONV_DATA
*---------------------------------------------------------------------*
FORM KONV_DATA.

SELECT KNUMV KPOSN KSCHL KWERT FROM KONV INTO CORRESPONDING FIELDS OF
TABLE IT_KONV FOR ALL ENTRIES IN IT_EKKO
WHERE KNUMV = IT_EKKO-KNUMV
AND KPOSN = IT_EKKO-EBELP
AND KSCHL IN R_KONV.

ENDFORM. "KONV_DATA

*---------------------------------------------------------------------*
** F O R M SUM_KWERT
*---------------------------------------------------------------------*
FORM SUM_KWERT.

LOOP AT IT_KONV INTO WA_KONV.
WA_KWERT-KNUMV = WA_KONV-KNUMV.
WA_KWERT-KPOSN = WA_KONV-KPOSN.

IF WA_KONV-KSCHL = 'ZP00' OR WA_KONV-KSCHL = 'ZP01' or
WA_KONV-KSCHL = 'ZPK1' or WA_KONV-KSCHL = 'ZPK2' or
WA_KONV-KSCHL = 'ZFW1' or WA_KONV-KSCHL = 'ZFW2'.
WA_KWERT-KWERT1 = WA_KWERT-KWERT1 + WA_KONV-KWERT.
WA_KWERT-KWERT = WA_KWERT-KWERT + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

IF WA_KONV-KSCHL = 'ZR11' OR WA_KONV-KSCHL = 'ZR12'
OR WA_KONV-KSCHL = 'ZR13'.
WA_KWERT-KWERT4 = WA_KWERT-KWERT4 + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*------for freight

IF WA_KONV-KSCHL = 'ZFA1' OR WA_KONV-KSCHL = 'ZFB1' OR
WA_KONV-KSCHL = 'ZFC1'.
WA_KWERT-ZFA1 = WA_KWERT-ZFA1 + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----for commision charges

IF WA_KONV-KSCHL = 'ZCOM' .
WA_KWERT-ZCOM = WA_KWERT-ZCOM + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.


*-----for handling charges

IF WA_KONV-KSCHL = 'ZHAN'.
WA_KWERT-ZHAN = WA_KWERT-ZHAN + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----for inspection charges

IF WA_KONV-KSCHL = 'ZICH' .
WA_KWERT-ZICH = WA_KWERT-ZICH + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----for installation charges

IF WA_KONV-KSCHL = 'ZIST' .
WA_KWERT-ZIST = WA_KWERT-ZIST + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-------FOR APMC CHARGES

* IF WA_KONV-KSCHL = 'ZAPM'." commented by vinod.

*---ADDED BY VINOD.
IF WA_KONV-KSCHL = 'ZAPM' OR WA_KONV-KSCHL = 'ZAM1' OR
WA_KONV-KSCHL = 'ZAM2'.
*----END OF ADDITIONS.

WA_KWERT-ZAPM = WA_KWERT-ZAPM + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR INSURANCE CHARGES

IF WA_KONV-KSCHL = 'ZINS' .
WA_KWERT-ZINS = WA_KWERT-ZINS + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR OCTROI CHARGES

IF WA_KONV-KSCHL = 'ZOCM' .
WA_KWERT-ZOCM = WA_KWERT-ZOCM + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR PACKING CHARGES

* IF WA_KONV-KSCHL = 'ZPCK' ."COMMENTED BY VINOD.

*---ADDED BY VINOD.
IF WA_KONV-KSCHL = 'ZPC1' OR WA_KONV-KSCHL = 'ZPC2'.
*----END OF ADDITIONS.

WA_KWERT-ZPCK = WA_KWERT-ZPCK + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR FORWARDING CHARGES

* IF WA_KONV-KSCHL = 'ZFCH'."COMMENTED BY VINOD
*---ADDED BY VINOD.
IF WA_KONV-KSCHL = 'ZFH1' OR WA_KONV-KSCHL = 'ZFH2'.
*----END OF ADDITIONS.

WA_KWERT-ZFCH = WA_KWERT-ZFCH + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR MISCELANEOUS CHARGES

IF WA_KONV-KSCHL = 'ZMIS' .
WA_KWERT-ZMIS = WA_KWERT-ZMIS + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR SUPERVISION CHARGES

IF WA_KONV-KSCHL = 'ZSUP' .
WA_KWERT-ZSUP = WA_KWERT-ZSUP + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.

*-----FOR EXPORT CHARGES

IF WA_KONV-KSCHL = 'ZEXP' .
WA_KWERT-ZEXP = WA_KWERT-ZEXP + WA_KONV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + WA_KONV-KWERT.
ENDIF.


COLLECT WA_KWERT INTO IT_KWERT .

CLEAR : WA_KONV,WA_KWERT.

ENDLOOP.
ENDFORM. "SUM_KWERT

*---------------------------------------------------------------------*
** F O R M POPULATE_DATA
*---------------------------------------------------------------------*
FORM POPULATE_DATA.

LOOP AT IT_EKKO INTO WA_EKKO where MWSKZ ne ' '.

WA_DISPLAY-SRNUM = SY-TABIX.
WA_DISPLAY-BSART = WA_EKKO-BSART.
WA_DISPLAY-EBELN = WA_EKKO-EBELN.
WA_DISPLAY-EBELP = WA_EKKO-EBELP .
WA_DISPLAY-AEDAT = WA_EKKO-AEDAT .
WA_DISPLAY-EKGRP = WA_EKKO-EKGRP .
WA_DISPLAY-LIFNR = WA_EKKO-LIFNR .
WA_DISPLAY-NAME1 = WA_EKKO-NAME1.
WA_DISPLAY-MATNR = WA_EKKO-MATNR.
WA_DISPLAY-MAKTX = WA_EKKO-MAKTX .
WA_DISPLAY-MWSKZ = WA_EKKO-MWSKZ .
WA_DISPLAY-MENGE = WA_EKKO-MENGE .
WA_DISPLAY-ZSUM = WA_EKKO-ZSUM .
WA_DISPLAY-ZASUM = WA_EKKO-ZASUM .
WA_DISPLAY-kunnr = WA_EKKO-kunnr .

READ TABLE IT_KWERT INTO WA_KWERT WITH KEY KNUMV = WA_EKKO-KNUMV
KPOSN = WA_EKKO-EBELP.
IF SY-SUBRC = 0.
WA_DISPLAY-KWERT1 = WA_KWERT-KWERT1.
WA_DISPLAY-KWERT2 = WA_KWERT-KWERT2.
WA_DISPLAY-KWERT3 = WA_KWERT-KWERT3.


WA_DISPLAY-ZFA1 = WA_KWERT-ZFA1.
WA_DISPLAY-ZCOM = WA_KWERT-ZCOM.
WA_DISPLAY-ZHAN = WA_KWERT-ZHAN.
WA_DISPLAY-ZICH = WA_KWERT-ZICH.
WA_DISPLAY-ZIST = WA_KWERT-ZIST.
WA_DISPLAY-ZAPM = WA_KWERT-ZAPM.
WA_DISPLAY-ZINS = WA_KWERT-ZINS.
WA_DISPLAY-ZOCM = WA_KWERT-ZOCM.
WA_DISPLAY-ZPCK = WA_KWERT-ZPCK.
WA_DISPLAY-ZFCH = WA_KWERT-ZFCH.
WA_DISPLAY-ZMIS = WA_KWERT-ZMIS.
WA_DISPLAY-ZSUP = WA_KWERT-ZSUP.
ENDIF.

IT_TAXCOM-BUKRS = WA_EKKO-BUKRS.
IT_TAXCOM-WAERS = WA_EKKO-WAERS.
IT_TAXCOM-KPOSN = WA_EKKO-EBELP.
IT_TAXCOM-LIFNR = WA_EKKO-LIFNR.
IT_TAXCOM-EKORG = WA_EKKO-EKORG.
IT_TAXCOM-MWSKZ = WA_EKKO-MWSKZ.
IT_TAXCOM-MATNR = WA_EKKO-MATNR.
IT_TAXCOM-WERKS = WA_EKKO-WERKS.
IT_TAXCOM-MATKL = WA_EKKO-MATKL.
IT_TAXCOM-MEINS = WA_EKKO-MEINS.
IT_TAXCOM-MGLME = WA_EKKO-MENGE.
IT_TAXCOM-MTART = WA_EKKO-MTART.
IT_TAXCOM-LAND1 = WA_EKKO-LAND1.
* IT_TAXCOM-WRBTR = WA_KWERT-KWERT + WA_KWERT-KWERT4."COMMENTED BY
"VINOD
*-------------ADDED BY VINOD
IT_TAXCOM-WRBTR = WA_EKKO-NETWR.
*-------------END OF ADDITIONS.
IT_TAXCOM-SHKZG = 'H'.
IT_TAXCOM-BUDAT = WA_EKKO-AEDAT.
IT_TAXCOM-BLDAT = WA_EKKO-AEDAT.
IT_TAXCOM-HWAER = WA_EKKO-WAERS.
IT_TAXCOM-XMWST = 'X'.
IT_TAXCOM-EBELN = WA_EKKO-EBELN.
IT_TAXCOM-EBELP = WA_EKKO-EBELP.

*--------------------ADDED BY VINOD FOR TAXES.
CALL FUNCTION 'J_1I4_SET_KWERT'
EXPORTING
KWERT = WA_EKKO-KZWI6
ALT_KWERT = WA_EKKO-KZWI4.


*-------END OF ADDITIONS BY VINOD FOR TAXES

APPEND IT_TAXCOM.

CALL FUNCTION 'CALCULATE_TAX_ITEM'
EXPORTING
I_TAXCOM = IT_TAXCOM
TABLES
T_XKOMV = IT_XKOMV.


LOOP AT IT_XKOMV where kposn = WA_EKKO-EBELP.

* IF IT_XKOMV-KWERT LT 0.
* IT_XKOMV-KWERT = ( -1 ) * ( IT_XKOMV-KWERT ).
* ENDIF.

CASE IT_XKOMV-KSCHL.
WHEN 'JMO1'.
WA_DISPLAY-ZJMO1 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JIP1'.
WA_DISPLAY-ZJIP1 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JEC1'.
WA_DISPLAY-ZJEC1 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JIP2'.
WA_DISPLAY-ZJIP2 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JIP3'.
WA_DISPLAY-ZJIP3 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JIP4'.
WA_DISPLAY-ZJIP4 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JIP5'.
WA_DISPLAY-ZJIP5 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'JIP6'.
WA_DISPLAY-ZJIP6 = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'ZSUR'.
WA_DISPLAY-ZSUR = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'ZTOT'.
WA_DISPLAY-ZTOT = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.
WHEN 'ZRST'.
WA_DISPLAY-ZRST = IT_XKOMV-KWERT.
WA_KWERT-zsum1 = WA_KWERT-zsum1 + IT_XKOMV-KWERT.

ENDCASE.

endloop.

clear :IT_XKOMV,IT_TAXCOM.
refresh :IT_XKOMV,IT_TAXCOM.
* WA_DISPLAY-zsum1 = WA_KWERT-zsum1."COMMENTED BY VINOD

*----------ADDED BY VINOD .

WA_DISPLAY-ZSUM1 = WA_EKKO-EFFWR.

*----------END OF ADDITIONS

WA_DISPLAY-zLAUN = WA_KWERT-zsum1 / WA_DISPLAY-MENGE.
WA_DISPLAY-ZDIF1 = WA_DISPLAY-zLAUN - WA_EKKO-ZSUM .
WA_DISPLAY-ZDIF2 = WA_DISPLAY-zLAUN - WA_EKKO-ZASUM .

if prm_rst = 'X'.

move-corresponding WA_DISPLAY to WA_matnr .

SELECT SINGLE ebeln FROM ZVVF_MT006_MATNR
INTO ZVVF_MT006_MATNR-ebeln WHERE
kunnr = WA_matnr-kunnr AND
lifnr = WA_matnr-lifnr AND
matnr = WA_matnr-matnr and
EBELN = WA_matnr-EBELN AND
EBELP = WA_matnr-EBELP.

IF SY-SUBRC = 0.


MODIFY ZVVF_MT006_MATNR FROM WA_matnr.

ELSE.
INSERT ZVVF_MT006_MATNR FROM WA_matnr.
ENDIF.

endif.

perform convert_format CHANGING
WA_DISPLAY-KUNNR .
perform convert_format CHANGING
WA_DISPLAY-lifnr .
perform convert_format CHANGING
WA_DISPLAY-MATnr .

APPEND WA_DISPLAY TO IT_DISPLAY .
CLEAR : WA_DISPLAY,WA_KWERT,IT_TAXCOM.
ENDLOOP.



ENDFORM. "POPULATE_DATA
*---------------------------------------------------------------------*
** F O R M APPEND_RANGE
*---------------------------------------------------------------------*
FORM APPEND_RANGE.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZP00'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZP01'.
R_KONV-high = ' '.
append R_KONV.


R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZR11'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZR12'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZR13'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZPK1'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZPK2'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZFW1'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZFW2'.
R_KONV-high = ' '.
append R_KONV.


R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZFA1'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZFB1'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZFC1'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZCOM'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZHAN'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZICH'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZIST'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZAPM'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZINS'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZOCM'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZPCK'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZFCH'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZMIS'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZSUP'.
R_KONV-high = ' '.
append R_KONV.

R_KONV-sign = 'I'.
R_KONV-option = 'EQ'.
R_KONV-low = 'ZEXP'.
R_KONV-high = ' '.
append R_KONV.

ENDFORM. "APPEND_RANGE
*&--------------------------------------------------------------------*
*& Form fieldcat_init
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
* -->IT_FIELDCATtext
*---------------------------------------------------------------------*
FORM fieldcat_init USING lt_fieldcat TYPE slis_t_fieldcat_alv.
DATA : wa_fieldcat TYPE slis_fieldcat_alv.
DATA :w_pos TYPE i VALUE 0.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'SRNUM'.
wa_fieldcat-seltext_m = 'Sr.No.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'BSART'.
wa_fieldcat-seltext_m = 'PO Doc.type'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'EBELN'.
wa_fieldcat-seltext_m = 'PO No.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'EBELP'.
wa_fieldcat-seltext_m = 'PO Item'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'EKGRP'.
wa_fieldcat-seltext_m = 'Purchase Group'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'LIFNR'.
wa_fieldcat-seltext_m = 'Vendor'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'KUNNR'.
wa_fieldcat-seltext_m = 'Customer'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'NAME1'.
wa_fieldcat-seltext_m = 'Vendor Name'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'MATNR'.
wa_fieldcat-seltext_m = 'Material'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'MAKTX'.
wa_fieldcat-seltext_m = 'Material Descr.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'MENGE'.
wa_fieldcat-seltext_m = 'Quantity'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'KWERT1'.
wa_fieldcat-seltext_m = 'Basic Price'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

* w_pos = w_pos + 1.
* CLEAR wa_fieldcat.
* wa_fieldcat-col_pos = w_pos.
* wa_fieldcat-tabname = 'IT_DISPLAY'.
* wa_fieldcat-fieldname = 'KWERT2'.
* wa_fieldcat-seltext_m = 'Packing Charges'.
* wa_fieldcat-do_sum = 'X'.
* wa_fieldcat-emphasize = 'C410'.
* wa_fieldcat-outputlen = '15'.
* APPEND wa_fieldcat TO lt_fieldcat.
*
* w_pos = w_pos + 1.
* CLEAR wa_fieldcat.
* wa_fieldcat-col_pos = w_pos.
* wa_fieldcat-tabname = 'IT_DISPLAY'.
* wa_fieldcat-fieldname = 'KWERT3'.
* wa_fieldcat-seltext_m = 'Forwarding Charges'.
* wa_fieldcat-do_sum = 'X'.
* wa_fieldcat-emphasize = 'C410'.
* wa_fieldcat-outputlen = '15'.
* APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'MWSKZ'.
wa_fieldcat-seltext_m = 'Tax Code'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJMO1'.
wa_fieldcat-seltext_m = 'Excise Duty(Setoff)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJEC1'.
wa_fieldcat-seltext_m = 'Edu.Cess(Setoff)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJIP1'.
wa_fieldcat-seltext_m = 'CST'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJIP2'.
wa_fieldcat-seltext_m = 'LST'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJIP3'.
wa_fieldcat-seltext_m = 'LST(Setoff)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJIP4'.
wa_fieldcat-seltext_m = 'CST(VAT)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJIP5'.
wa_fieldcat-seltext_m = 'VAT(Setoff)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZJIP6'.
wa_fieldcat-seltext_m = 'VAT(Non Deductable)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZSUR'.
wa_fieldcat-seltext_m = 'Surcharge'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZTOT'.
wa_fieldcat-seltext_m = 'Turnover Tax'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZRST'.
wa_fieldcat-seltext_m = 'Resale Tax'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZFA1'.
wa_fieldcat-seltext_m = 'Freight'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZCOM'.
wa_fieldcat-seltext_m = 'Commission Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZHAN'.
wa_fieldcat-seltext_m = 'Handling Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZICH'.
wa_fieldcat-seltext_m = 'Inspection Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZIST'.
wa_fieldcat-seltext_m = 'Installation Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZAPM'.
wa_fieldcat-seltext_m = 'APMC Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZINS'.
wa_fieldcat-seltext_m = 'Insurance'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZOCM'.
wa_fieldcat-seltext_m = 'Octroi'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZPCK'.
wa_fieldcat-seltext_m = 'Packing Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZFCH'.
wa_fieldcat-seltext_m = 'Forwarding Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZMIS'.
wa_fieldcat-seltext_m = 'Misc.Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZEXP'.
wa_fieldcat-seltext_m = 'Export Fees'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.


w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZSUP'.
wa_fieldcat-seltext_m = 'Supervising Charges'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZSUM1'.
wa_fieldcat-seltext_m = 'Landed Value'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZLAUN'.
wa_fieldcat-seltext_m = 'Landed Value/Unit'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZSUM'.
wa_fieldcat-seltext_m = 'Total Costs'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZASUM'.
wa_fieldcat-seltext_m = 'Internal Appr.cost/Unit'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZDIF1'.
wa_fieldcat-seltext_m = 'Diff.(Principal)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_DISPLAY'.
wa_fieldcat-fieldname = 'ZDIF2'.
wa_fieldcat-seltext_m = 'Diff.(Internal)'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.

ENDFORM. " fieldcat_init

*&---------------------------------------------------------------------*
*& Form eventtab_build
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_it_EVENTS[] text
*----------------------------------------------------------------------*
FORM eventtab_build USING lt_events TYPE slis_t_event.
DATA: wa_event TYPE slis_alv_event.
DATA: c_top_of_page TYPE slis_formname.

c_top_of_page = c_top_of_page_db.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = lt_events.
READ TABLE lt_events WITH KEY name = slis_ev_top_of_page
INTO wa_event.
IF sy-subrc <> 0.
MOVE c_top_of_page TO wa_event-form.
APPEND wa_event TO lt_events.
ELSE.
MOVE c_top_of_page TO wa_event-form.
MODIFY lt_events FROM wa_event INDEX sy-tabix .
ENDIF.

ENDFORM. " eventtab_build

*&---------------------------------------------------------------------*
*& Form comment_build
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_it_LIST_TOP_OF_PAGE[] text
*----------------------------------------------------------------------*
FORM comment_build USING lt_top_of_page TYPE slis_t_listheader.
DATA: wa_line TYPE slis_listheader.
CLEAR wa_line.
wa_line-typ = 'H'.
wa_line-info = 'VVF LTD. Mumbai'.
APPEND wa_line TO lt_top_of_page.

wa_line-typ = 'H'.
wa_line-info = SY-ULINE.
APPEND wa_line TO lt_top_of_page.

wa_line-typ = 'H'.
wa_line-info = 'Budget Price Vs Actual Purchase Price'.
APPEND wa_line TO lt_top_of_page.

ENDFORM. " comment_build

*&---------------------------------------------------------------------*
*& Form layout_build
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_WA_layout text
*----------------------------------------------------------------------*
FORM layout_build USING wa_layout TYPE slis_layout_alv.
wa_layout-zebra = 'X'.
wa_layout-colwidth_optimize = 'X'.
wa_layout-no_totalline = 'X'.
* wa_layout-edit = 'X'.
ENDFORM. " layout_build

*&---------------------------------------------------------------------*
*& Form write_alv_grid
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_alv_grid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = w_repid
i_background_id = 'ALV_BACKGROUND'
I_CALLBACK_TOP_OF_PAGE = c_top_of_page_db
is_layout = WA_layout
it_fieldcat = it_fieldcat[]
it_events = it_events[]
i_save = 'A'
TABLES
t_outtab = IT_DISPLAY
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. " write_alv_grid

*&--------------------------------------------------------------------*
*& Form TOP_OF_PAGE_DB
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM TOP_OF_PAGE_DB.
*
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_list_top_of_page
i_logo = ' '.
ENDFORM. "top_of_page_db

*&--------------------------------------------------------------------*
*& Form convert_format
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
* -->W_TEMP text
*---------------------------------------------------------------------*
FORM convert_format CHANGING
W_temp.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = W_temp
IMPORTING
OUTPUT = W_temp.
ENDFORM . "convert_format

No comments:

link us...

For Visitors

if you want to publish or Add something on ERP, SAP , SAP FUNCTIONAL, SAP ABAP then mail us along with your email-id. contain must be yours

email-id :- avinashkr_raj@yahoo.com(any email)

email-id :- avinaskr_raj.abap@blogger.com ( use only gmail)