BBP_UPLOAD_QM_SYSTEMS Importance of this report
Hello All,
BBP_UPLOAD_QM_SYSTEMS What is the importance of this report in EBP? and tables .It says that to replicate quality management syatem data from r/3.Can you elaborate more?
Appreciate your answers.
Regards
Muthu
Hi
Please see the related links ->
Report BBP_upload_QM_systems is used for uploading the QM data
Report BBP_upload_payment_terms is used for payment terms to be uploded from the backend
Use the SE38 transaction and just display the Program there are 2 function modules ->
1 META_QMSYSTEMS_GET
2 BBP_VENDOR_QMSYSTEMS_SET
Payment terms (BBPPAYTERM table) are stored by logical system. Hence, you may not find them for local purch.org._
Define Payment terms in IMG and check
All the Local as well as the R/3 data gets stored in the SRM tables ->
BBP_PAYTERM (Terms of Payment, Backend-Dependent)
BBP_PAYTERM_TEXT ( Texts for Terms of Payment, Backend-Dependent)
BBP_TQ02B ( QM System)
BBP_TQ02U (Description QM system)
Also refer to Transaction SLG1 for the log created in this case.
Re: Urgent Vendor Replication
Re: Replication material master of table MARC
I am unable to get values for terms of payment for local Pur.Organization
Hope this will help. Do let me know.
Regards
- Atul
Similar Messages
-
Hi Seniors,
Please help me with this issue........i have to develope a New report Vendor balance Reconcillation ......Using the Standard report S_ALR_87012082 vendor balances in local currency.....it should be same like this Standard report but this Report is not Designed to give Line Items Because it has Picked up the Data only from few tables like LFA1 LFB1 LFC3.....which give Direct Balances in these tables......But i have Developed a report to Some Extent....But Finding it Difficult in Adding a Special GL Date which is Reflecting in the LFC3 Table....I have to Keep a Check Box Special GL balances in the Selection-Screen when when ever i select Special GL Balances indicator ....Date from LFC3
should be Selected and Addred to the Final in the Internal Table....I have Written a program .......Based on GSBER And LIFNR SUBTOTALS.....I have to Add this New check box in this Slection-Screen.....this report should be same like this Standard Report....S_ALR_87012082...the Program for this Report is RFKSLD00...please tel me the logic or help me with the Modification my below Report.....If i am not clear please reply me back...
waiting for your replys...
Thank you...
*& Report ZVENDOR_BALANCES
REPORT ZMM_PO_CHECKLIST.
TYPE-POOLS : SLIS.
DATA: it_fcat TYPE slis_t_fieldcat_alv,
wa_fcat LIKE LINE OF it_fcat,
lt_top_of_page TYPE slis_t_listheader,
ls_layout TYPE slis_layout_alv,
gt_events TYPE slis_t_event.
TYPES : BEGIN OF TY_BSEG,
LIFNR TYPE BSEG-LIFNR,
BUKRS TYPE BSEG-BUKRS,
BELNR TYPE BSEG-BELNR,
GJAHR TYPE BSEG-GJAHR,
SHKZG TYPE BSEG-SHKZG,
GSBER TYPE BSEG-GSBER,
DMBTR TYPE BSEG-DMBTR,
WRBTR TYPE BSEG-WRBTR,
SGTXT TYPE BSEG-SGTXT,
buzei TYPE bseg-buzei,
buzid TYPE bseg-buzid,
augdt TYPE bseg-augdt,
augcp TYPE bseg-augcp,
augbl TYPE bseg-augbl,
bschl TYPE bseg-bschl,
koart TYPE bseg-koart,
umskz TYPE bseg-umskz,
zuonr TYPE bseg-zuonr,
saknr TYPE bseg-saknr,
hkont TYPE bseg-hkont,
END OF TY_BSEG,
BEGIN OF TY_LFA1,
LIFNR TYPE LFA1-LIFNR,
LAND1 TYPE LFA1-LAND1,
NAME1 TYPE LFA1-NAME1,
END OF TY_LFA1,
BEGIN OF TY_LFC1,
LIFNR TYPE LFC1-LIFNR,
BUKRS TYPE LFC1-BUKRS,
GJAHR TYPE LFC1-GJAHR,
UMSAV TYPE LFC1-UMSAV,
END OF TY_LFC1,
BEGIN OF TY_BKPF,
BUKRS TYPE BKPF-BUKRS,
BELNR TYPE BKPF-BELNR,
GJAHR TYPE BKPF-GJAHR,
BLart type bkpf-blart,
BUDAT TYPE BKPF-BUDAT,
bldat TYPE bkpf-bldat,
monat TYPE bkpf-monat,
usnam TYPE bkpf-usnam,
xblnr TYPE bkpf-xblnr,
END OF TY_BKPF,
BEGIN OF it_bsak,
bukrs TYPE bsak-bukrs,
lifnr TYPE bsak-lifnr,
umskz TYPE bsak-umskz,
augdt TYPE bsak-augdt,
augbl TYPE bsak-augbl,
zuonr TYPE bsak-zuonr,
gjahr TYPE bsak-gjahr,
belnr TYPE bsak-belnr,
buzei TYPE bsak-buzei,
budat TYPE bsak-budat,
bldat TYPE bsak-bldat,
xblnr TYPE bsak-xblnr,
blart TYPE bsak-blart,
monat TYPE bsak-monat,
bschl TYPE bsak-bschl,
shkzg TYPE bsak-shkzg,
gsber TYPE bsak-gsber,
dmbtr TYPE bsak-dmbtr,
wrbtr TYPE bsak-wrbtr,
sgtxt TYPE bsak-sgtxt,
saknr TYPE bsak-saknr,
hkont TYPE bsak-hkont,
END OF it_bsak,
BEGIN OF it_skat,
spras TYPE skat-spras,
saknr TYPE skat-saknr,
txt20 TYPE skat-txt20,
txt50 TYPE skat-txt50,
END OF it_skat,
BEGIN OF TY_ITAB,
GSBER TYPE BSEG-GSBER,
LIFNR TYPE BSEG-LIFNR,
BUKRS TYPE BSEG-BUKRS,
BELNR TYPE BSEG-BELNR,
GJAHR TYPE BSEG-GJAHR,
SHKZG TYPE BSEG-SHKZG,
GSBER TYPE BSEG-GSBER,
DMBTR TYPE BSEG-DMBTR,
WRBTR TYPE BSEG-WRBTR,
SGTXT TYPE BSEG-SGTXT,
buzei TYPE bseg-buzei,
buzid TYPE bseg-buzid,
augdt TYPE bseg-augdt,
augcp TYPE bseg-augcp,
augbl TYPE bseg-augbl,
bschl TYPE bseg-bschl,
koart TYPE bseg-koart,
umskz TYPE bseg-umskz,
zuonr TYPE bseg-zuonr,
saknr TYPE bseg-saknr,
hkont TYPE bseg-hkont,
LIFNR TYPE LFA1-LIFNR,
LAND1 TYPE LFA1-LAND1,
NAME1 TYPE LFA1-NAME1,
DMBTR_H TYPE BSEG-WRBTR,
DMBTR_S TYPE BSEG-WRBTR,
DH TYPE BSEG-WRBTR,
DS TYPE BSEG-WRBTR,
HS TYPE BSEG-WRBTR,
BAL TYPE BSEG-WRBTR,
FLAG TYPE C,
LIFNR TYPE LFC1-LIFNR,
BUKRS TYPE LFC1-BUKRS,
GJAHR TYPE LFC1-GJAHR,
UMSAV TYPE LFC1-UMSAV,
UM(15) TYPE P DECIMALS 2,
BUKRS TYPE BKPF-BUKRS,
BELNR TYPE BKPF-BELNR,
GJAHR TYPE BKPF-GJAHR,
BLart type bkpf-blart,
BUDAT TYPE BKPF-BUDAT,
bldat TYPE bkpf-bldat,
monat TYPE bkpf-monat,
usnam TYPE bkpf-usnam,
xblnr TYPE bkpf-xblnr,
spras TYPE skat-spras,
saknr TYPE skat-saknr,
txt20 TYPE skat-txt20,
txt50 TYPE skat-txt50,
LINE_COLOR(4) TYPE C,
LINE_CTR(4) TYPE C,
END OF TY_ITAB,
BEGIN OF TY_TEMP,
LIFNR TYPE BSEG-LIFNR,
GSBER TYPE BSEG-GSBER,
BUKRS TYPE BSEG-BUKRS,
BELNR TYPE BSEG-BELNR,
GJAHR TYPE BSEG-GJAHR,
SHKZG TYPE BSEG-SHKZG,
GSBER TYPE BSEG-GSBER,
DMBTR TYPE BSEG-DMBTR,
WRBTR TYPE BSEG-WRBTR,
SGTXT TYPE BSEG-SGTXT,
buzei TYPE bseg-buzei,
buzid TYPE bseg-buzid,
augdt TYPE bseg-augdt,
augcp TYPE bseg-augcp,
augbl TYPE bseg-augbl,
bschl TYPE bseg-bschl,
koart TYPE bseg-koart,
umskz TYPE bseg-umskz,
zuonr TYPE bseg-zuonr,
saknr TYPE bseg-saknr,
hkont TYPE bseg-hkont,
LIFNR TYPE LFA1-LIFNR,
LAND1 TYPE LFA1-LAND1,
NAME1 TYPE LFA1-NAME1,
LIFNR TYPE LFC1-LIFNR,
BUKRS TYPE LFC1-BUKRS,
GJAHR TYPE LFC1-GJAHR,
UMSAV TYPE LFC1-UMSAV,
DMBTR_H TYPE BSEG-WRBTR,
DMBTR_S TYPE BSEG-WRBTR,
HS TYPE BSEG-WRBTR,
BAL TYPE BSEG-WRBTR,
FLAG TYPE C,
FLAG TYPE C,
BUKRS TYPE BKPF-BUKRS,
BELNR TYPE BKPF-BELNR,
GJAHR TYPE BKPF-GJAHR,
BLart type bkpf-blart,
BUDAT TYPE BKPF-BUDAT,
bldat TYPE bkpf-bldat,
monat TYPE bkpf-monat,
usnam TYPE bkpf-usnam,
xblnr TYPE bkpf-xblnr,
bukrs TYPE bsak-bukrs,
lifnr TYPE bsak-lifnr,
umskz TYPE bsak-umskz,
augdt TYPE bsak-augdt,
augbl TYPE bsak-augbl,
zuonr TYPE bsak-zuonr,
gjahr TYPE bsak-gjahr,
belnr TYPE bsak-belnr,
buzei TYPE bsak-buzei,
budat TYPE bsak-budat,
bldat TYPE bsak-bldat,
xblnr TYPE bsak-xblnr,
blart TYPE bsak-blart,
monat TYPE bsak-monat,
bschl TYPE bsak-bschl,
shkzg TYPE bsak-shkzg,
gsber TYPE bsak-gsber,
dmbtr TYPE bsak-dmbtr,
wrbtr TYPE bsak-wrbtr,
sgtxt TYPE bsak-sgtxt,
saknr TYPE bsak-saknr,
hkont TYPE bsak-hkont,
spras TYPE skat-spras,
saknr TYPE skat-saknr,
txt20 TYPE skat-txt20,
txt50 TYPE skat-txt50,
LINE_COLOR(4) TYPE C,
LINE_CTR(4) TYPE C,
END OF TY_TEMP.
DATA : IT_BSEG TYPE STANDARD TABLE OF TY_BSEG WITH HEADER LINE,
IT_LFA1 TYPE STANDARD TABLE OF TY_LFA1 WITH HEADER LINE,
IT_LFC1 TYPE STANDARD TABLE OF TY_LFC1 WITH HEADER LINE,
IT_BKPF TYPE STANDARD TABLE OF TY_BKPF WITH HEADER LINE,
IT_BSIK TYPE STANDARD TABLE OF TY_BSIK WITH HEADER LINE,
IT_BSAK TYPE STANDARD TABLE OF TY_BSAK WITH HEADER LINE,
IT_BSIP TYPE STANDARD TABLE OF TY_BSIP WITH HEADER LINE,
IT_SKAT TYPE STANDARD TABLE OF IT_SKAT WITH HEADER LINE,
IT_ITAB TYPE STANDARD TABLE OF TY_ITAB WITH HEADER LINE,
IT_TEMP TYPE STANDARD TABLE OF TY_TEMP WITH HEADER LINE.
TABLES : BSEG, LFA1, LFC1, BKPF ,SKAT.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE T001.
SELECT-OPTIONS: Vendor FOR BSEG-LIFNR OBLIGATORY.
PARAMETERS : CoCd LIKE BSEG-BUKRS OBLIGATORY.
PARAMETERS : Fiscal LIKE BSEG-GJAHR OBLIGATORY.
SELECT-OPTIONS : Period FOR BKPF-MONAT .
*SELECT-OPTIONS : b_monate for rfsdo-allgbmon "Berichtsperioden
no-extension,
*SELECT-OPTIONS: SO_LIFNR FOR BSEG-LIFNR.
SO_BELNR FOR BSEG-BELNR.
SELECTION-SCREEN END OF BLOCK B1.
PERFORM DATA_RETRIVE.
*PERFORM SUB_MOVE_DATA.
**PERFORM SUB_FETCH_EXTRA_DATA.
**PERFORM SUB_MOVE_EXTRA_DATA.
PERFORM SUB_CALC.
PERFORM SUB_FIELDCAT.
PERFORM SUB_DISPLAY.
*& Form DATA_RETRIVE
text
--> p1 text
<-- p2 text
form DATA_RETRIVE .
SELECT LIFNR BUKRS BELNR GJAHR SHKZG GSBER DMBTR WRBTR SGTXT BUZEI
BUZID AUGDT AUGCP AUGBL BSCHL KOART UMSKZ ZUONR SAKNR HKONT
FROM BSEG INTO TABLE IT_BSEG
WHERE LIFNR IN vendor AND BUKRS = CoCd AND GJAHR = Fiscal.
IF NOT IT_BSEG[] IS INITIAL.
SELECT LIFNR LAND1 NAME1
FROM LFA1 INTO TABLE IT_LFA1 FOR ALL ENTRIES IN IT_BSEG
WHERE LIFNR = IT_BSEG-LIFNR.
ENDIF.
IF NOT IT_BSEG[] IS INITIAL.
SELECT LIFNR BUKRS GJAHR UMSAV
FROM LFC1 INTO TABLE IT_LFC1 FOR ALL ENTRIES IN IT_BSEG
WHERE LIFNR = IT_BSEG-LIFNR AND BUKRS = IT_BSEG-BUKRS AND GJAHR = IT_BSEG-GJAHR.
ENDIF.
IF NOT IT_BSEG[] IS INITIAL.
SELECT BUKRS BELNR GJAHR BLART BUDAT BLDAT MONAT USNAM XBLNR
FROM BKPF INTO TABLE IT_BKPF FOR ALL ENTRIES IN IT_BSEG
WHERE MONAT IN Period AND BUKRS = IT_BSEG-BUKRS AND GJAHR = IT_BSEG-GJAHR AND BELNR = IT_BSEG-BELNR.
ENDIF.
LOOP AT IT_BSEG.
IT_ITAB-LIFNR = IT_BSEG-LIFNR.
IT_ITAB-BUKRS = IT_BSEG-BUKRS.
IT_ITAB-BELNR = IT_BSEG-BELNR.
IT_ITAB-GJAHR = IT_BSEG-GJAHR.
IT_ITAB-SHKZG = IT_BSEG-SHKZG.
IT_ITAB-GSBER = IT_BSEG-GSBER.
IT_ITAB-DMBTR = IT_BSEG-DMBTR.
IT_ITAB-WRBTR = IT_BSEG-WRBTR.
IT_ITAB-SGTXT = IT_BSEG-SGTXT.
IT_ITAB-BUZEI = IT_BSEG-BUZEI.
IT_ITAB-BUZID = IT_BSEG-BUZID.
IT_ITAB-AUGDT = IT_BSEG-AUGDT.
IT_ITAB-AUGCP = IT_BSEG-AUGCP.
IT_ITAB-AUGBL = IT_BSEG-AUGBL.
IT_ITAB-BSCHL = IT_BSEG-BSCHL.
IT_ITAB-KOART = IT_BSEG-KOART.
IT_ITAB-UMSKZ = IT_BSEG-UMSKZ.
IT_ITAB-ZUONR = IT_BSEG-ZUONR.
IT_ITAB-SAKNR = IT_BSEG-SAKNR.
IT_ITAB-HKONT = IT_BSEG-HKONT.
READ TABLE IT_LFA1 WITH KEY LIFNR = IT_ITAB-LIFNR.
IF SY-SUBRC = 0.
IT_ITAB-LAND1 = IT_LFA1-LAND1.
IT_ITAB-NAME1 = IT_LFA1-NAME1.
ENDIF.
READ TABLE IT_LFC1 WITH KEY LIFNR = IT_ITAB-LIFNR
BUKRS = IT_ITAB-BUKRS
GJAHR = IT_ITAB-GJAHR
BINARY SEARCH.
IF SY-SUBRC = 0.
IT_ITAB-UMSAV = IT_LFC1-UMSAV.
ENDIF.
READ TABLE IT_BKPF WITH KEY BUKRS = IT_ITAB-BUKRS
BELNR = IT_ITAB-BELNR
GJAHR = IT_ITAB-GJAHR.
IF SY-SUBRC = 0.
IT_ITAB-BLART = IT_BKPF-BLART.
IT_ITAB-BUDAT = IT_BKPF-BUDAT.
IT_ITAB-BLDAT = IT_BKPF-BLDAT.
IT_ITAB-MONAT = IT_BKPF-MONAT.
IT_ITAB-USNAM = IT_BKPF-USNAM.
IT_ITAB-XBLNR = IT_BKPF-XBLNR.
ENDIF.
APPEND IT_ITAB.
CLEAR IT_ITAB.
ENDLOOP.
endform. " DATA_RETRIVE
*& Form SUB_CALC
text
--> p1 text
<-- p2 text
form SUB_CALC .
*SORT IT_ITAB BY LIFNR GSBER GJAHR.
*LOOP AT IT_ITAB.
*IF IT_ITAB-SHKZG = 'S'.
IT_ITAB-DMBTR = IT_ITAB-DMBTR * ( -1 ).
*ENDIF.
*CLEAR IT_ITAB-DMBTR_S.
*MODIFY IT_ITAB.
*ENDLOOP.
*LOOP AT IT_ITAB.
*IT_ITAB-BAL = IT_ITAB-UMSAV + IT_ITAB-DMBTR.
*MODIFY IT_ITAB.
*CLEAR IT_ITAB.
*ENDLOOP.
*LOOP AT IT_ITAB.
IF IT_ITAB-SHKZG = 'S'.
IT_ITAB-DMBTR = IT_ITAB-DMBTR * ( -1 ).
ENDIF.
MODIFY IT_ITAB.
*ENDLOOP.
LOOP AT IT_ITAB.
IF IT_ITAB-SHKZG = 'S'.
IT_ITAB-DMBTR_S = IT_ITAB-DMBTR .
ELSE.
IF IT_ITAB-SHKZG = 'H'.
IT_ITAB-DMBTR_H = IT_ITAB-DMBTR.
ENDIF.
ENDIF.
IT_ITAB-DMBTR = ''.
MODIFY IT_ITAB INDEX SY-TABIX TRANSPORTING DMBTR_H DMBTR_S DMBTR.
"VAR.
CLEAR IT_ITAB.
ENDLOOP.
*MOVE CORRESPONDING IT_LFC1-UMSAV = IT_ITAB-UMSAV.
SORT IT_ITAB BY LIFNR GSBER.
LOOP AT IT_ITAB.
IT_ITAB-DMBTR_H = IT_ITAB-DMBTR_H.
IT_ITAB-DMBTR_S = IT_ITAB-DMBTR_S.
IT_ITAB-DH = IT_ITAB-DMBTR_H.
IT_ITAB-DS = IT_ITAB-DMBTR_S.
IT_ITAB-FLAG = 'X'.
IT_ITAB-CTR = 'X'.
IT_ITAB-HS = IT_ITAB-DMBTR_H - IT_ITAB-DMBTR_S.
IT_ITAB-BAL = IT_ITAB-UMSAV + IT_ITAB-HS.
MODIFY IT_ITAB INDEX SY-TABIX TRANSPORTING DMBTR_H DMBTR_S HS
FLAG BAL.
CLEAR IT_ITAB.
ENDLOOP.
*LOOP AT IT_ITAB.
**IF IT_ITAB-MONAT = ''.
DELETE IT_ITAB[] WHERE MONAT = ''.
*MODIFY IT_ITAB.
*ENDLOOP.
LOOP AT IT_ITAB.
AT END OF GSBER.
SUM.
IT_ITAB-DMBTR_H = IT_ITAB-DMBTR_H.
IT_ITAB-DMBTR_S = IT_ITAB-DMBTR_S.
IT_ITAB-DH = IT_ITAB-DMBTR_H.
IT_ITAB-DS = IT_ITAB-DMBTR_S.
IT_ITAB-FLAG = 'X'.
IT_ITAB-CTR = 'X'.
IT_ITAB-DMBTR_H = IT_ITAB-DMBTR_H.
IT_ITAB-DMBTR_S = IT_ITAB-DMBTR_S.
IT_ITAB-HS = IT_ITAB-DMBTR_S - IT_ITAB-DMBTR_H.
IT_ITAB-BAL = IT_ITAB-UMSAV - IT_ITAB-HS.
MODIFY IT_ITAB INDEX SY-TABIX TRANSPORTING DMBTR_H DMBTR_S HS
FLAG BAL.
ENDAT.
CLEAR IT_ITAB.
ENDLOOP.
LOOP AT IT_ITAB.
AT END OF GSBER.
SUM.
IT_ITAB-DMBTR_H = IT_ITAB-DMBTR_H.
IT_ITAB-DMBTR_S = IT_ITAB-DMBTR_S.
IT_ITAB-DH = IT_ITAB-DMBTR_H.
IT_ITAB-DS = IT_ITAB-DMBTR_S.
IT_ITAB-FLAG = 'X'.
IT_ITAB-CTR = 'X'.
IT_ITAB-DMBTR_H = IT_ITAB-DMBTR_H.
IT_ITAB-DMBTR_S = IT_ITAB-DMBTR_S.
IT_ITAB-BAL = IT_ITAB-UMSAV + ( IT_ITAB-DMBTR_H - IT_ITAB-DMBTR_S ).
MODIFY IT_ITAB INDEX SY-TABIX TRANSPORTING DMBTR_H DMBTR_S DH DS
FLAG BAL.
ENDAT.
CLEAR IT_ITAB.
ENDLOOP.
DELETE IT_ITAB[] WHERE FLAG <> 'X'.
SORT IT_ITAB BY LIFNR GSBER.
LOOP AT IT_ITAB.
MOVE-CORRESPONDING IT_ITAB TO IT_TEMP.
APPEND IT_TEMP.
ENDLOOP.
REFRESH IT_ITAB.
SORT IT_TEMP BY LIFNR GSBER.
LOOP AT IT_TEMP.
MOVE-CORRESPONDING IT_TEMP TO IT_ITAB.
APPEND IT_ITAB.
CLEAR IT_ITAB.
AT END OF LIFNR.
SUM.
IT_TEMP-FLAG = ''.
MODIFY IT_TEMP INDEX SY-TABIX TRANSPORTING DMBTR_H DMBTR_S FLAG.
MOVE-CORRESPONDING IT_ITEMP TO IT_ITAB.
IT_ITAB-LIFNR = ''.
IT_ITAB-NAME1 = ''.
IT_ITAB-BELNR = ''.
IT_ITAB-BUKRS = ''.
IT_ITAB-GJAHR = ''.
IT_ITAB-GSBER = ''.
IT_ITAB-UMSAV = '0000'.
IT_ITAB-DMBTR_H = IT_TEMP-DMBTR_H.
IT_ITAB-DMBTR_S = IT_TEMP-DMBTR_S.
IT_ITAB-BAL = IT_TEMP-DMBTR_H - IT_TEMP-DMBTR_S.
IT_ITAB-FLAG = 'Y'.
IT_ItAB-CTR = IT_TEMO-CTR.
APPEND IT_ITAB.
ENDAT.
IF IT_ITAB-FLAG = 'Y'.
it_itab-line_color = 'C600'.
MODIFY IT_ITAB.
ENDIF.
CLEAR IT_TEMP.
ENDLOOP.
LOOP AT IT_ITAB WHERE FLAG = 'Y'.
it_itab-line_color = 'C602'.
MODIFY IT_ITAB INDEX SY-TABIX.
CLEAR IT_ITAB.
ENDLOOP.
loop at it_itab WHERE FLAG = ''.
it_itab-line_color = 'C103'.
IT_ITAB-LINE_CTR = 'C103'.
MODIFY IT_ITAB INDEX SY-TABIX.
CLEAR IT_ITAB.
ENDLOOP.
PERFORM SUB_CALC_1.
endform. " SUB_CALC
*& Form SUB_FIELDCAT
text
--> p1 text
<-- p2 text
FORM SUB_FIELDCAT .
WA_FCAT-FIELDNAME = 'LIFNR'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Vendor No'. "'VENDOR NAME'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'NAME1'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Vendor Name'. "'VENDOR NAME'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'BELNR'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'SAP Document No'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'BLDAT'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Doc Date'. "'FISCAL YEAR'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR wa_fcat.
WA_FCAT-FIELDNAME = 'GSBER'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'BusA'. "'BUSINESS AREA'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'UMSAV'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Balance Carry Forward'. "'BAL CARRIED FORWARD'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'FLAG'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'FLAG'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'SHKZG'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'SHKZG'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'DMBTR_S'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Credit'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'DMBTR_H'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Debit'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'MONAT'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'PERIOD'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'DH'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'DH'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'DS'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'DS'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'BAL'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Accumlated Bal'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
WA_FCAT-FIELDNAME = 'SGTXT'.
WA_FCAT-TABNAME = 'IT_ITAB'.
WA_FCAT-SELTEXT_M = 'Text'. "'DOC NUMBER'.
APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.
ls_layout-info_fieldname = 'LINE_COLOR'.
ENDFORM. " SUB_FIELDCAT
*& Form SUB_DISPLAY
text
--> p1 text
<-- p2 text
FORM SUB_DISPLAY .
IF NOT IT_ITAB[] IS INITIAL.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = 'SY-REPID'
IT_FIELDCAT = IT_FCAT
I_SAVE = 'A'
is_layout = ls_layout
TABLES
T_OUTTAB = IT_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.
ENDIF.
ENDFORM. " SUB_DISPLAY
*& Form SUB_CALC_1
text
--> p1 text
<-- p2 text
FORM SUB_CALC_1 .
LOOP AT IT_ITAB WHERE FLAG = 'Y'.
it_itab-line_color = 'C603'.
MODIFY IT_ITAB INDEX SY-TABIX.
CLEAR IT_ITAB.
ENDLOOP.
ENDFORM. " SUB_CALC_1This is the Report which i am trying to do....please help me with this Report....
*& Report ZVENDOR_RECONCILLATION
REPORT ZVENDOR_RECONCILLATION.
*ALV
TYPE-POOLS: SLIS.
*TYPE-POOLS icon.
DATA: It_SORT TYPE SLIS_T_SORTINFO_ALV ."WITH HEADER LINE.
DATA: TOP TYPE slis_t_listheader,
END TYPE slis_t_listheader,
EVENTS TYPE slis_t_event.
DATA : NAME1 LIKE T001W-NAME1,
WERKS LIKE T001W-WERKS .
DATA : T_KEY TYPE SLIS_KEYINFO_ALV.
DATA : FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
LAYOUT TYPE SLIS_LAYOUT_ALV OCCURS 1 WITH HEADER LINE ,
LCAT TYPE SLIS_FIELDCAT_ALV.
TABLES : BSAK , BSIK , LFC1 , LFC3 , LFA1.
*INTERNAL TABLE
DATA: BEGIN OF sd_bsak,
bukrs TYPE bsak-bukrs,
lifnr TYPE bsak-lifnr,
umsks TYPE bsak-umsks,
umskz TYPE bsak-umskz,
augdt TYPE bsak-augdt,
augbl TYPE bsak-augbl,
zuonr TYPE bsak-zuonr,
gjahr TYPE bsak-gjahr,
belnr TYPE bsak-belnr,
buzei TYPE bsak-buzei,
budat TYPE bsak-budat,
bldat TYPE bsak-bldat,
xblnr TYPE bsak-xblnr,
blart TYPE bsak-blart,
monat TYPE bsak-monat,
bschl TYPE bsak-bschl,
zumsk TYPE bsak-zumsk,
shkzg TYPE bsak-shkzg,
gsber TYPE bsak-gsber,
dmbtr TYPE bsak-dmbtr,
wrbtr TYPE bsak-wrbtr,
sgtxt TYPE bsak-sgtxt,
saknr TYPE bsak-saknr,
hkont TYPE bsak-hkont,
END OF sd_bsak.
DATA: BEGIN OF sd_bsik,
bukrs TYPE bsik-bukrs,
lifnr TYPE bsik-lifnr,
umsks TYPE bsik-umsks,
umskz TYPE bsik-umskz,
augdt TYPE bsik-augdt,
augbl TYPE bsik-augbl,
zuonr TYPE bsik-zuonr,
gjahr TYPE bsik-gjahr,
belnr TYPE bsik-belnr,
buzei TYPE bsik-buzei,
budat TYPE bsik-budat,
bldat TYPE bsik-bldat,
xblnr TYPE bsik-xblnr,
blart TYPE bsik-blart,
monat TYPE bsik-monat,
bschl TYPE bsik-bschl,
zumsk TYPE bsik-zumsk,
shkzg TYPE bsik-shkzg,
gsber TYPE bsik-gsber,
dmbtr TYPE bsik-dmbtr,
wrbtr TYPE bsik-wrbtr,
sgtxt TYPE bsik-sgtxt,
saknr TYPE bsik-saknr,
hkont TYPE bsik-hkont,
zlsch TYPE bsik-zlsch,
END OF sd_bsik.
DATA: BEGIN OF it_lfa1,
lifnr TYPE lfa1-lifnr,
name1 TYPE lfa1-name1,
END OF it_lfa1.
DATA: BEGIN OF sd_lfc1,
lifnr TYPE lfc1-lifnr,
bukrs TYPE lfc1-bukrs,
gjahr TYPE lfc1-gjahr,
erdat TYPE lfc1-erdat,
usnam TYPE lfc1-usnam,
umsav TYPE lfc1-umsav,
END OF sd_lfc1.
DATA: BEGIN OF sd_lfc3,
lifnr TYPE lfc3-lifnr,
bukrs TYPE lfc3-bukrs,
gjahr TYPE lfc3-gjahr,
shbkz TYPE lfc3-shbkz,
saldv TYPE lfc3-saldv,
solll TYPE lfc3-solll,
habnl TYPE lfc3-habnl,
END OF sd_lfc3.
*FINAL INTERNAL TABLE DECLARATION
DATA: BEGIN OF IT_FINAL,
gsber TYPE bsak-gsber,
bukrs TYPE bsak-bukrs,
lifnr TYPE bsak-lifnr,
umsks TYPE bsak-umsks,
umskz TYPE bsak-umskz,
augdt TYPE bsak-augdt,
augbl TYPE bsak-augbl,
zuonr TYPE bsak-zuonr,
gjahr TYPE bsak-gjahr,
belnr TYPE bsak-belnr,
buzei TYPE bsak-buzei,
budat TYPE bsak-budat,
bldat TYPE bsak-bldat,
xblnr TYPE bsak-xblnr,
blart TYPE bsak-blart,
monat TYPE bsak-monat,
bschl TYPE bsak-bschl,
zumsk TYPE bsak-zumsk,
shkzg TYPE bsak-shkzg,
gsber TYPE bsak-gsber,
dmbtr TYPE bsak-dmbtr,
wrbtr TYPE bsak-wrbtr,
sgtxt TYPE bsak-sgtxt,
saknr TYPE bsak-saknr,
hkont TYPE bsak-hkont,
DMBTR_S TYPE BSAK-DMBTR,
DMBTR_H TYPE BSAK-DMBTR,
DS TYPE P DECIMALS 2,
DH TYPE P DECIMALS 2,
SUB TYPE P DECIMALS 2,
ADD TYPE P DECIMALS 2,
BAL TYPE P DECIMALS 2,
lifnr TYPE bsik-lifnr,
umsks TYPE bsik-umsks,
umskz TYPE bsik-umskz,
augdt TYPE bsik-augdt,
augbl TYPE bsik-augbl,
zuonr TYPE bsik-zuonr,
gjahr TYPE bsik-gjahr,
belnr TYPE bsik-belnr,
buzei TYPE bsik-buzei,
budat TYPE bsik-budat,
bldat TYPE bsik-bldat,
xblnr TYPE bsik-xblnr,
blart TYPE bsik-blart,
monat TYPE bsik-monat,
bschl TYPE bsik-bschl,
zumsk TYPE bsik-zumsk,
shkzg TYPE bsik-shkzg,
gsber TYPE bsik-gsber,
dmbtr TYPE bsik-dmbtr,
wrbtr TYPE bsik-wrbtr,
sgtxt TYPE bsik-sgtxt,
saknr TYPE bsik-saknr,
hkont TYPE bsik-hkont,
zlsch TYPE bsik-zlsch,
lifnr TYPE lfa1-lifnr,
name1 TYPE lfa1-name1,
lifnr TYPE lfc1-lifnr,
bukrs TYPE lfc1-bukrs,
gjahr TYPE lfc1-gjahr,
erdat TYPE lfc1-erdat,
usnam TYPE lfc1-usnam,
umsav TYPE lfc1-umsav,
lifnr TYPE lfc3-lifnr,
bukrs TYPE lfc3-bukrs,
gjahr TYPE lfc3-gjahr,
shbkz TYPE lfc3-shbkz,
saldv TYPE lfc3-saldv,
solll TYPE lfc3-solll,
habnl TYPE lfc3-habnl,
END OF IT_FINAL.
DATA: BEGIN OF SD_FINAL,
lifnr TYPE bsak-lifnr,
bukrs TYPE bsak-bukrs,
lifnr TYPE bsak-lifnr,
umsks TYPE bsak-umsks,
umskz TYPE bsak-umskz,
augdt TYPE bsak-augdt,
augbl TYPE bsak-augbl,
zuonr TYPE bsak-zuonr,
gjahr TYPE bsak-gjahr,
belnr TYPE bsak-belnr,
buzei TYPE bsak-buzei,
budat TYPE bsak-budat,
bldat TYPE bsak-bldat,
xblnr TYPE bsak-xblnr,
blart TYPE bsak-blart,
monat TYPE bsak-monat,
bschl TYPE bsak-bschl,
zumsk TYPE bsak-zumsk,
shkzg TYPE bsak-shkzg,
gsber TYPE bsak-gsber,
dmbtr TYPE bsak-dmbtr,
wrbtr TYPE bsak-wrbtr,
sgtxt TYPE bsak-sgtxt,
saknr TYPE bsak-saknr,
hkont TYPE bsak-hkont,
bukrs TYPE bsik-bukrs,
lifnr TYPE bsik-lifnr,
umsks TYPE bsik-umsks,
umskz TYPE bsik-umskz,
augdt TYPE bsik-augdt,
augbl TYPE bsik-augbl,
zuonr TYPE bsik-zuonr,
gjahr TYPE bsik-gjahr,
belnr TYPE bsik-belnr,
buzei TYPE bsik-buzei,
budat TYPE bsik-budat,
bldat TYPE bsik-bldat,
xblnr TYPE bsik-xblnr,
blart TYPE bsik-blart,
monat TYPE bsik-monat,
bschl TYPE bsik-bschl,
zumsk TYPE bsik-zumsk,
shkzg TYPE bsik-shkzg,
gsber TYPE bsik-gsber,
dmbtr TYPE bsik-dmbtr,
wrbtr TYPE bsik-wrbtr,
sgtxt TYPE bsik-sgtxt,
saknr TYPE bsik-saknr,
hkont TYPE bsik-hkont,
zlsch TYPE bsik-zlsch,
lifnr TYPE lfa1-lifnr,
name1 TYPE lfa1-name1,
lifnr TYPE lfc1-lifnr,
bukrs TYPE lfc1-bukrs,
gjahr TYPE lfc1-gjahr,
erdat TYPE lfc1-erdat,
usnam TYPE lfc1-usnam,
umsav TYPE lfc1-umsav,
lifnr TYPE lfc3-lifnr,
bukrs TYPE lfc3-bukrs,
gjahr TYPE lfc3-gjahr,
shbkz TYPE lfc3-shbkz,
saldv TYPE lfc3-saldv,
solll TYPE lfc3-solll,
habnl TYPE lfc3-habnl,
line_color(4) TYPE c,
END OF SD_FINAL.
DATA IT_STD_BSAK LIKE TABLE OF SD_BSAK WITH HEADER LINE.
DATA IT_STD_BSIK LIKE TABLE OF SD_BSIK WITH HEADER LINE.
DATA IT_STD_LFA1 LIKE TABLE OF IT_LFA1 WITH HEADER LINE.
DATA IT_STD_LFC1 LIKE TABLE OF SD_LFC1 WITH HEADER LINE.
DATA IT_STD_LFC3 LIKE TABLE OF SD_LFC3 WITH HEADER LINE.
DATA IT_STD_FINAL LIKE TABLE OF IT_FINAL WITH HEADER LINE.
DATA IT_FINAL_DISPLAY LIKE TABLE OF SD_FINAL WITH HEADER LINE.
*SELECTION-SCREEN
SELECTION-SCREEN BEGIN OF BLOCK HEADER WITH FRAME TITLE TEXT-001.
PARAMETERS: P_BUKRS LIKE BSAK-BUKRS OBLIGATORY,
P_GJAHR LIKE BSAK-GJAHR OBLIGATORY.
P_EBELN LIKE EKPO-EBELN .
*PARAMETER: PA_RPT AS CHECKBOX DEFAULT 'X'.
SELECT-OPTIONS: S_LIFNR FOR BSAK-LIFNR.
SELECT-OPTIONS: S_MONAT FOR BSAK-MONAT.
SELECTION-SCREEN END OF BLOCK HEADER.
START-OF-SELECTION.
SET PF-STATUS 'STATUS'.
PERFORM DATA_RETRIVAL.
PERFORM FIELD.
PERFORM SORT USING IT_SORT.
PERFORM EVENTS USING EVENTS.
PERFORM EVENTS_1 USING EVENTS.
PERFORM HEADER USING TOP.
PERFORM LAYOUT.
PERFORM DISPLAY.
END-OF-PAGE.
*& Form DATA_RETRIVAL
text
--> p1 text
<-- p2 text
FORM DATA_RETRIVAL .
SELECT BUKRS LIFNR UMSKS UMSKZ AUGDT AUGBL ZUONR GJAHR BELNR BUZEI BUDAT BLDAT XBLNR BLART
MONAT BSCHL ZUMSK SHKZG GSBER DMBTR WRBTR SGTXT SAKNR HKONT
FROM BSAK INTO TABLE IT_STD_BSAK
WHERE BUKRS = P_BUKRS
AND GJAHR = P_GJAHR AND ZUMSK = ''
AND LIFNR IN S_LIFNR
AND MONAT IN S_MONAT.
IF NOT IT_STD_BSAK[] IS INITIAL.
SELECT BUKRS LIFNR UMSKS UMSKZ AUGDT AUGBL ZUONR GJAHR BELNR BUZEI BUDAT BLDAT XBLNR
BLART MONAT BSCHL ZUMSK SHKZG GSBER DMBTR WRBTR SGTXT SAKNR HKONT ZLSCH
FROM BSIK INTO TABLE IT_STD_BSIK FOR ALL ENTRIES IN IT_STD_BSAK
WHERE BUKRS = IT_STD_BSAK-BUKRS AND LIFNR = IT_STD_BSAK-LIFNR AND GJAHR = IT_STD_BSAK-GJAHR AND ZUMSK = ''.
ENDIF.
IF NOT IT_STD_BSAK[] IS INITIAL.
SELECT LIFNR NAME1
FROM LFA1 INTO TABLE IT_STD_LFA1 FOR ALL ENTRIES IN IT_STD_BSAK
WHERE LIFNR = IT_STD_BSAK-LIFNR.
ENDIF.
IF NOT IT_STD_BSAK[] IS INITIAL.
SELECT LIFNR BUKRS GJAHR ERDAT USNAM UMSAV
FROM LFC1 INTO TABLE IT_STD_LFC1 FOR ALL ENTRIES IN IT_STD_BSAK
WHERE LIFNR = IT_STD_BSAK-LIFNR AND BUKRS = IT_STD_BSAK-BUKRS AND GJAHR = IT_STD_BSAK-GJAHR.
ENDIF.
IF NOT IT_STD_BSAK[] IS INITIAL.
SELECT LIFNR BUKRS GJAHR SHBKZ SALDV SOLLL HABNL
FROM LFC3 INTO TABLE IT_STD_LFC3 FOR ALL ENTRIES IN IT_STD_BSAK
WHERE LIFNR = IT_STD_BSAK-LIFNR AND BUKRS = IT_STD_BSAK-BUKRS AND GJAHR = IT_STD_BSAK-GJAHR.
ENDIF.
LOOP AT IT_STD_BSAK.
IT_STD_FINAL-BUKRS = IT_STD_BSAK-BUKRS.
IT_STD_FINAL-LIFNR = IT_STD_BSAK-LIFNR.
IT_STD_FINAL-UMSKS = IT_STD_BSAK-UMSKS.
IT_STD_FINAL-UMSKZ = IT_STD_BSAK-UMSKZ.
IT_STD_FINAL-AUGDT = IT_STD_BSAK-AUGDT.
IT_STD_FINAL-AUGBL = IT_STD_BSAK-AUGBL.
IT_STD_FINAL-ZUONR = IT_STD_BSAK-ZUONR.
IT_STD_FINAL-GJAHR = IT_STD_BSAK-GJAHR.
IT_STD_FINAL-BELNR = IT_STD_BSAK-BELNR.
IT_STD_FINAL-BUZEI = IT_STD_BSAK-BUZEI.
IT_STD_FINAL-BUDAT = IT_STD_BSAK-BUDAT.
IT_STD_FINAL-BLDAT = IT_STD_BSAK-BLDAT.
IT_STD_FINAL-XBLNR = IT_STD_BSAK-XBLNR.
IT_STD_FINAL-BLART = IT_STD_BSAK-BLART.
IT_STD_FINAL-MONAT = IT_STD_BSAK-MONAT.
IT_STD_FINAL-BSCHL = IT_STD_BSAK-BSCHL.
IT_STD_FINAL-ZUMSK = IT_STD_BSAK-ZUMSK.
IT_STD_FINAL-SHKZG = IT_STD_BSAK-SHKZG.
IT_STD_FINAL-GSBER = IT_STD_BSAK-GSBER.
IT_STD_FINAL-DMBTR = IT_STD_BSAK-DMBTR.
IT_STD_FINAL-WRBTR = IT_STD_BSAK-WRBTR.
IT_STD_FINAL-SGTXT = IT_STD_BSAK-SGTXT.
IT_STD_FINAL-SAKNR = IT_STD_BSAK-SAKNR.
IT_STD_FINAL-HKONT = IT_STD_BSAK-HKONT.
READ TABLE IT_STD_LFA1 WITH KEY LIFNR = IT_STD_FINAL-LIFNR.
IF SY-SUBRC = 0.
IT_STD_FINAL-NAME1 = IT_STD_LFA1-NAME1.
ENDIF.
READ TABLE IT_STD_LFC1 WITH KEY LIFNR = IT_STD_FINAL-LIFNR
BUKRS = IT_STD_FINAL-BUKRS
GJAHR = IT_STD_FINAL-GJAHR.
IF SY-SUBRC = 0.
IT_STD_FINAL-ERDAT = IT_STD_LFC1-ERDAT.
IT_STD_FINAL-USNAM = IT_STD_LFC1-USNAM.
IT_STD_FINAL-UMSAV = IT_STD_LFC1-UMSAV.
ENDIF.
*READ TABLE IT_STD_LFC3 WITH KEY LIFNR = IT_STD_FINAL-LIFNR
BUKRS = IT_STD_FINAL-BUKRS
GJAHR = IT_STD_FINAL-GJAHR.
IF SY-SUBRC = 0.
IT_STD_FINAL-SHBKZ = IT_STD_LFC3-SHBKZ.
IT_STD_FINAL-SALDV = IT_STD_LFC3-SALDV.
IT_STD_FINAL-SOLLL = IT_STD_LFC3-SOLLL.
IT_STD_FINAL-HABNL = IT_STD_LFC3-HABNL.
ENDIF.
APPEND IT_STD_FINAL.
CLEAR IT_STD_FINAL.
ENDLOOP.
LOOP AT IT_STD_BSIK.
IF SY-SUBRC = 0.
IT_STD_FINAL-BUKRS = IT_STD_BSIK-BUKRS.
IT_STD_FINAL-LIFNR = IT_STD_BSIK-LIFNR.
IT_STD_FINAL-UMSKS = IT_STD_BSIK-UMSKS.
IT_STD_FINAL-UMSKZ = IT_STD_BSIK-UMSKZ.
IT_STD_FINAL-AUGDT = IT_STD_BSIK-AUGDT.
IT_STD_FINAL-AUGBL = IT_STD_BSIK-AUGBL.
IT_STD_FINAL-ZUONR = IT_STD_BSIK-ZUONR.
IT_STD_FINAL-GJAHR = IT_STD_BSIK-GJAHR.
IT_STD_FINAL-BELNR = IT_STD_BSIK-BELNR.
IT_STD_FINAL-BUZEI = IT_STD_BSIK-BUZEI.
IT_STD_FINAL-BUDAT = IT_STD_BSIK-BUDAT.
IT_STD_FINAL-BLDAT = IT_STD_BSIK-BLDAT.
IT_STD_FINAL-XBLNR = IT_STD_BSIK-XBLNR.
IT_STD_FINAL-BLART = IT_STD_BSIK-BLART.
IT_STD_FINAL-MONAT = IT_STD_BSIK-MONAT.
IT_STD_FINAL-BSCHL = IT_STD_BSIK-BSCHL.
IT_STD_FINAL-ZUMSK = IT_STD_BSIK-ZUMSK.
IT_STD_FINAL-SHKZG = IT_STD_BSIK-SHKZG.
IT_STD_FINAL-GSBER = IT_STD_BSIK-GSBER.
IT_STD_FINAL-DMBTR = IT_STD_BSIK-DMBTR.
IT_STD_FINAL-WRBTR = IT_STD_BSIK-WRBTR.
IT_STD_FINAL-SGTXT = IT_STD_BSIK-SGTXT.
IT_STD_FINAL-SAKNR = IT_STD_BSIK-SAKNR.
IT_STD_FINAL-HKONT = IT_STD_BSIK-HKONT.
IT_STD_FINAL-ZLSCH = IT_STD_BSIK-ZLSCH.
ENDIF.
APPEND IT_STD_FINAL.
CLEAR IT_STD_FINAL.
ENDLOOP.
LOOP AT IT_STD_LFC3.
IF SY-SUBRC = 0.
IT_STD_FINAL-SHBKZ = IT_STD_LFC3-SHBKZ.
IT_STD_FINAL-SALDV = IT_STD_LFC3-SALDV.
IT_STD_FINAL-SOLLL = IT_STD_LFC3-SOLLL.
IT_STD_FINAL-HABNL = IT_STD_LFC3-HABNL.
ENDIF.
APPEND IT_STD_FINAL.
CLEAR IT_STD_FINAL.
ENDLOOP.
LOOP AT IT_STD_FINAL.
IF IT_STD_FINAL-SHKZG = 'S'.
IT_STD_FINAL-DMBTR_S = IT_STD_FINAL-DMBTR.
ELSE.
IF IT_STD_FINAL-SHKZG = 'H'.
IT_STD_FINAL-DMBTR_H = IT_STD_FINAL-DMBTR.
ENDIF.
ENDIF.
IT_STD_FINAL-DMBTR = ''.
MODIFY IT_STD_FINAL INDEX SY-TABIX TRANSPORTING DMBTR_H DMBTR_S DMBTR.
"VAR.
CLEAR IT_STD_FINAL.
ENDLOOP.
LOOP AT IT_STD_LFC3.
*AT NEW LIFNR.
IF SY-SUBRC = 0.
IT_STD_FINAL-LIFNR = IT_STD_LFC3-LIFNR.
IT_STD_FINAL-BUKRS = IT_STD_LFC3-BUKRS.
IT_STD_FINAL-GJAHR = IT_STD_LFC3-GJAHR.
IT_STD_FINAL-SHBKZ = IT_STD_LFC3-SHBKZ.
IT_STD_FINAL-UMSAV = IT_STD_LFC3-SALDV.
IT_STD_FINAL-DMBTR_S = IT_STD_LFC3-SOLLL.
IT_STD_FINAL-DMBTR_H = IT_STD_LFC3-HABNL.
ENDIF.
*ENDAT.
APPEND IT_STD_FINAL.
CLEAR IT_STD_FINAL.
ENDLOOP.
LOOP AT IT_STD_FINAL.
IT_STD_FINAL-DS = IT_STD_FINAL-DMBTR_S.
IT_STD_FINAL-DH = IT_STD_FINAL-DMBTR_H.
IT_STD_FINAL-SUB = ( IT_STD_FINAL-DS ) - ( IT_STD_FINAL-DH ).
IT_STD_FINAL-ADD = ( IT_STD_FINAL-UMSAV ) + ( IT_STD_FINAL-SUB ).
MODIFY IT_STD_FINAL.
ENDLOOP.
ENDFORM. " DATA_RETRIVAL
*& Form FIELD
text
--> p1 text
<-- p2 text
form FIELD .
LCAT-FIELDNAME = 'LIFNR'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Vendor No'.
*LCAT-REF_TABNAME = 'EKKO'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'NAME1'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Vendor Name'.
*LCAT-REF_TABNAME = 'EKKO'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'GJAHR'. "MATERIAL GROUP
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Fiscal Year'.
*LCAT-REF_TABNAME = 'LFA1'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'GSBER'. "MATERIAL GROUP
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'BussArea'.
*LCAT-REF_TABNAME = 'LFA1'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'SHBKZ'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'S G/L'.
LCAT-REF_TABNAME = 'LFC3'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'UMSAV'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Bal Carry Forward'.
*LCAT-REF_TABNAME = 'EKKO'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'DMBTR_S'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Debit Balanace'.
*LCAT-REF_TABNAME = 'EKKO'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'DMBTR_H'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Credit Balance'.
*LCAT-REF_TABNAME = 'EKKO'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LCAT-FIELDNAME = 'ADD'.
LCAT-TABNAME = 'IT_STD_FINAL'.
LCAT-SELTEXT_L = 'Accumulated Balance'.
*LCAT-REF_TABNAME = 'EKKO'.
LCAT-JUST = 'M'.
APPEND LCAT TO FIELDCAT.
CLEAR LCAT.
LOOP AT FIELDCAT INTO LCAT WHERE FIELDNAME = 'DMBTR_S'.
LCAT-DO_SUM = 'X'.
MODIFY FIELDCAT FROM LCAT." TRANSPORTING DO_SUM.
ENDLOOP.
LOOP AT FIELDCAT INTO LCAT WHERE FIELDNAME = 'DMBTR_H'.
LCAT-DO_SUM = 'X'.
MODIFY FIELDCAT FROM LCAT." TRANSPORTING DO_SUM.
ENDLOOP.
LOOP AT FIELDCAT INTO LCAT WHERE FIELDNAME = 'ADD'.
LCAT-DO_SUM = 'X'.
MODIFY FIELDCAT FROM LCAT." TRANSPORTING DO_SUM.
ENDLOOP.
endform. " FIELD
*& Form DISPLAY
text
--> p1 text
<-- p2 text
form DISPLAY .
CLEAR: IT_STD_BSAK,IT_STD_BSIK, IT_STD_LFA1 , IT_STD_LFC1, IT_STD_LFC3.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = SY-REPID
I_CALLBACK_PF_STATUS_SET = 'STATUS '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT = LAYOUT
IT_FIELDCAT = FIELDCAT[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT = IT_SORT
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = EVENTS
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = IT_CHARG
t_outtab = IT_STD_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. "DISPLAY
*& Form EVENTS
text
--> p1 text
<-- p2 text
form EVENTS USING P_EVENTS TYPE slis_t_event.
DATA: ls_event TYPE slis_alv_event.
ls_event-name = 'TOP_OF_PAGE'.
ls_event-form = 'TOP_OF_PAGE'.
APPEND ls_event TO P_EVENTS.
endform. " EVENTS
*& Form TOP_OF_PAGE
text
FORM TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = TOP.
ENDFORM. "TOP_OF_PAGE
**& Form SORT
text
-->P_IT_SORT text
form SORT using p_sort TYPE SLIS_T_SORTINFO_ALV.
DATA : LT_SORT TYPE slis_sortinfo_alv.
LT_SORT-fieldname = 'LIFNR'.
LT_SORT-tabname = 'IT_STD_FINAL'.
LT_SORT-up = 'X'.
LT_SORT-SUBTOT = 'X'.
APPEND LT_SORT TO P_SORT.
CLEAR LT_SORT.
LT_SORT-fieldname = 'GSBER'.
LT_SORT-tabname = 'IT_STD_FINAL'.
LT_SORT-up = 'X'.
LT_SORT-SUBTOT = 'X'.
APPEND LT_SORT TO P_SORT.
CLEAR LT_SORT.
LT_SORT-fieldname = 'UMSAV'.
LT_SORT-tabname = 'IT_LFC3'.
LT_SORT-up = 'X'.
LT_SORT-SUBTOT = 'X'.
APPEND LT_SORT TO P_SORT.
CLEAR LT_SORT.
endform. " SORT
*& Form LAYOUT
text
--> p1 text
<-- p2 text
form LAYOUT .
LAYOUT-ZEBRA = 'X'.
LAYOUT-INFO_FIELDNAME = 'LINE_COLOR'.
LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
APPEND LAYOUT." TO LAYOUT.
endform. " LAYOUT
*& Form EVENTS_1
text
-->P_EVENTS text
FORM EVENTS_1 USING P_EVENTS TYPE slis_t_event.
DATA: ls_event TYPE slis_alv_event.
WRITE: SY-UNAME.
ls_event-name = 'END_OF_PAGE'.
ls_event-form = 'END_OF_PAGE'.
APPEND ls_event TO P_EVENTS.
ENDFORM. " EVENTS_1
waiting for ur reply... -
How to put header and how to insert logo in this report
HI
I want a header and logo in this report.how to do this in ALV report.Also why we have to put the sy-repid.Plz tell me in this report where i have to do all this.Plz show me in detail.
REPORT ZREPORT_ALV .
TYPE-POOLS : slis.
tables:vbak,vbap.
*DATA: report_id LIKE sy-repid.
DATA: I_LAYOUT TYPE SLIS_LAYOUT_ALV.
data: ivariant(1) type c,
itvariant like disvariant,
w_variant like disvariant.
initialization.
*REPORT_ID = SY-REPID.
PERFORM F1000_LAYOUT_INIT. "using I_LAYOUT.
ivariant = 'A'.
itvariant = w_variant.
select-options:so_vbeln for vbap-vbeln.
data:itab like vbak occurs 0 with header line.
data:itab1 like vbap occurs 0 with header line.
start-of-selection.
select * from vbak into table itab where vbeln in so_vbeln.
if not itab[] is initial.
select * from vbap into table itab1
for all entries in itab
where vbeln = itab-vbeln.
endif.
data:ls_fieldcat TYPE slis_fieldcat_alv,
lt_fieldcat1 TYPE slis_t_fieldcat_alv.
****For alv display
IF NOT itab1[] IS INITIAL.
DEFINE ls_fieldcat.
add 1 to ls_fieldcat-col_pos.
ls_fieldcat-fieldname = &1.
ls_fieldcat-outputlen = &2.
ls_fieldcat-seltext_l = &3.
ls_fieldcat-emphasize = &4.
append ls_fieldcat to lt_fieldcat1.
clear ls_fieldcat.
END-OF-DEFINITION.
ls_fieldcat 'VBELN' '10' 'Sales Order Number'.
ls_fieldcat 'POSNR' '6' 'SO Item'.
ls_fieldcat 'MATNR' '13' 'Material No'.
m_fieldcat1 'NETWR' '13' 'Amount'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = 'wf_report'
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT = I_LAYOUT
IT_FIELDCAT = lt_fieldcat1
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT = ITVARIANT
IT_EVENTS =
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = itab1
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.
endif.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = ivariant
CHANGING
CS_VARIANT = itvariant
EXCEPTIONS
WRONG_INPUT = 1
NOT_FOUND = 2
PROGRAM_ERROR = 3
OTHERS = 4
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 F1000_LAYOUT_INIT. "USING I_LAYOUT TYPE SLIS_LAYOUT_ALV.
*CLEAR I_LAYOUT.
i_layout-colwidth_optimize = 'X'.
I_LAYOUT-key_hotspot = u2018Xu2019.
I_LAYOUT-hotspot_fieldname = MATNR.
ENDFORM.hi,,,,
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = sy-repid >>>>>>>>>>>>> your report name.
regarding logo and header,,,,
first store the logo in T-code OAOR, then call that in your report.......
data: headingĀ Ā Ā Ā Ā Ā Ā TYPE slis_t_listheader,
Ā Ā Ā Ā Ā wa_headerĀ Ā Ā Ā Ā TYPE slis_listheader,
Ā Ā Ā Ā eventsĀ Ā Ā Ā Ā Ā Ā Ā TYPE slis_t_event.
* To display TOP_OF_PAGE.
FORM top_of_page.
Ā DATA : text(40),txtdt(40).
Ā CLEAR l_string.
Ā l_string = 'JCB India Limited'(hd2).
Ā wa_header-typĀ = 'H'.
Ā wa_header-info = l_string.
Ā APPEND wa_header TO heading.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā " index 1.
Ā CLEAR l_string.
Ā WRITE :'Number of records:' TO text,dbcnt TO text+20 LEFT-JUSTIFIED.
Ā wa_header-typĀ = 'S'.
Ā wa_header-info = text.
Ā APPEND wa_header TO heading.
Ā CLEAR l_string.
Ā wa_header-typĀ = 'S'.
Ā WRITE : 'Report Run DateĀ :' TO txtdt,sy-datum TO txtdt+20 DD/MM/YY.
Ā WRITE sy-datum TO dat DD/MM/YY.
Ā wa_header-info = txtdt.
Ā APPEND wa_header TO heading.
Ā CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
Ā Ā Ā EXPORTING
Ā Ā Ā Ā Ā i_logoĀ Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā = 'ENJOYSAP_LOGO'
Ā Ā Ā Ā Ā it_list_commentary = heading.
Ā CLEAR heading.
ENDFORM.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā "top_of_page
to execute top-of-page you have to create events.
for ex......
FORM create_event USING p_events TYPE slis_t_event.
Ā DATA: ls_event TYPE slis_alv_event.
Ā CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
Ā Ā Ā EXPORTING
Ā Ā Ā Ā Ā i_list_type = 0
Ā Ā Ā IMPORTING
Ā Ā Ā Ā Ā et_eventsĀ Ā = p_events.
Ā READ TABLE p_events WITH KEY name = slis_ev_top_of_page
Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā INTO ls_event.
Ā IF sy-subrc = 0.
Ā Ā Ā MOVE formname_top_of_page TO ls_event-form.
Ā Ā Ā APPEND ls_event TO p_events.
Ā ENDIF.
ENDFORM.Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā " create_event -
How to do the reverse po in this report
Hi,
i have a one problem in this report . i don,t know how to display the
reverse po in this report. reverse po should have a po history cat. 'N' (field is bewtp)
i connect type 'Q' and the type 'E' but not been able to connect the 'N'. when i connect it will give me the wrong amount and some field should not been displayed. i will provide u the following code.
please help me.
Thanks
dinesh
*& Report Z_MM_PURCHASE_REGISTER
REPORT Z_MM_PURCHASE_REGISTER.
Short Description: Purchase Register
TABLES *
TABLES : ekko, taxcom, ekpo, ekbe,ekkn,konv,komv,t007s, j_1imovend, bseg .
TYPE-POOLS: slis.
TYPES: Begin with TY_ *
TYPES : BEGIN OF ty_ekko,
BSART LIKE EKKO-BSART,
KNTTP LIKE EKPO-KNTTP,
ebeln LIKE ekko-ebeln,
knumv LIKE ekko-knumv,
lifnr LIKE ekko-lifnr,
waers LIKE ekko-waers,
kalsm LIKE ekko-kalsm,
lands LIKE ekko-lands,
ekorg LIKE ekko-ekorg,
wkurs LIKE ekko-wkurs,
bedat LIKE ekko-bedat,
ebelp LIKE ekpo-ebelp, "po line item
mwskz LIKE ekpo-mwskz, "tax code
bukrs LIKE ekpo-bukrs,
matkl LIKE ekpo-matkl,
mtart LIKE ekpo-mtart,
netpr LIKE ekpo-netpr, "Net price in purchasing document
meins LIKE ekpo-meins, "unit
menge LIKE ekpo-menge, "quantity
txz01 LIKE ekpo-txz01, "material description
txjcd LIKE ekpo-txjcd, "tax jurisdiction code
matnr LIKE ekpo-matnr,
llief LIKE ekko-llief,
meins LIKE ekpo-meins,
bprme LIKE ekpo-bprme,
netpr LIKE ekpo-netpr,
peinh LIKE ekpo-peinh,
lifnr like lfa1-lifnr,
name1 like lfa1-lifnr,
pstlz like lfa1-pstlz,
stras like lfa1-stras,
text1 like t007s-text1,
END OF ty_ekko.
TYPES : BEGIN OF ty_ekbe,
ebeln LIKE ekbe-ebeln, "po number
ebelp LIKE ekbe-ebelp, "po line item
buzei LIKE ekbe-buzei,
belnr LIKE ekbe-belnr, "Number of material document
budat LIKE ekbe-budat, "Posting date in the document
xblnr LIKE ekbe-xblnr, "Reference document number
werks LIKE ekbe-werks, "plant
matnr LIKE ekbe-matnr, "material
menge LIKE ekbe-menge, "quantity
peinh LIKE ekpo-peinh,
dmbtr LIKE ekbe-dmbtr, "Amount in local currency
kalsm LIKE ekko-kalsm, "Procedure (pricing)
waers LIKE ekbe-waers, "currency
wrbtr LIKE ekbe-wrbtr, "Amount in document currency
bwtar LIKE ekbe-bwtar, "Valuation type
shkzg LIKE ekbe-shkzg,
maktx LIKE makt-maktx,
mwskz LIKE ekbe-mwskz,
bldat LIKE ekbe-bldat,
srvpos LIKE ekbe-srvpos,
packno LIKE ekbe-packno,
introw LIKE ekbe-introw,
lfbnr LIKE ekbe-lfbnr,
bwart TYPE ekbe-bwart,
budat1 TYPE ekbe-budat,
belnr1 TYPE ekbe-belnr,
END OF ty_ekbe.
TYPES : BEGIN OF ty_display,
BSART LIKE EKKO-BSART,
KNTTP LIKE EKPO-KNTTP,
lifnr(10) TYPE C, " LIKE ekko-lifnr,
ebeln LIKE ekko-ebeln,
bedat LIKE ekko-bedat,
budat LIKE ekbe-budat,
matnr LIKE ekbe-matnr,
maktx LIKE makt-maktx,
belnr LIKE ekbe-belnr,
bldat LIKE ekbe-bldat,
menge LIKE ekpo-menge,
peinh LIKE ekpo-peinh,
dmbtr LIKE ekbe-dmbtr,
shkzg LIKE ekbe-shkzg,
custduty LIKE konv-kwert,
bed LIKE konv-kwert,
cvd LIKE konv-kwert,
sertax LIKE konv-kwert,
sereducess LIKE konv-kwert,
surcharge LIKE konv-kwert,
educess LIKE konv-kwert,
insure LIKE konv-kwert,
freight LIKE konv-kwert,
octroi LIKE konv-kwert,
kursf LIKE rbkp-kursf,
grossamt LIKE konv-kwert,
vat4 LIKE konv-kwert,
vat8 LIKE konv-kwert,
vat125 LIKE konv-kwert,
INC LIKE KONV-KWERT, "
PF LIKE KONV-KWERT,
CF LIKE KONV-KWERT,
INS LIKE KONV-KWERT,
cst LIKE konv-kwert,
subdeb LIKE ekbe-dmbtr,
netamt LIKE ekbe-dmbtr,
cenvatcreditbed LIKE konv-kwert,
cenvatcreditecc LIKE konv-kwert,
vatcredit LIKE konv-kwert,
bgcharges LIKE konv-kwert,
srvpos LIKE ekbe-srvpos,
ktext1 LIKE esll-ktext1,
sertaxcredit LIKE konv-kwert,
sereducesscredit LIKE konv-kwert,
totaltaxbenefit LIKE konv-kwert,
inventoryvalue LIKE konv-kwert,
bwart TYPE ekbe-bwart,
belnr1 TYPE ekbe-belnr,
budat1 TYPE ekbe-budat,
lfbnr TYPE ekbe-lfbnr,
bprme LIKE ekpo-bprme,
meins LIKE ekpo-meins,
name1 like lfa1-name1,
pstlz like lfa1-pstlz,
stras like lfa1-stras,
mwskz like ekpo-mwskz,
text1 like t007s-text1,
kalsm like t007s-kalsm,
j_1icstno like j_1imovend-j_1icstno,
hkont(10) TYPE C, " like bseg-hkont,
saknr like ska1-saknr,
sakan like ska1-sakan,
ktoks like ska1-ktoks,
mcod1 like ska1-mcod1,
WAERS LIKE EKKO-WAERS,
bukrs like ekpo-bukrs,
total LIKE ekbe-dmbtr,
END OF ty_display.
TYPES : BEGIN OF ty_services,
ebeln LIKE ekpo-ebeln,
ebelp LIKE ekpo-ebelp,
lfbnr LIKE ekbe-lfbnr,
packno LIKE esll-packno,
sub_packno LIKE esll-sub_packno,
srvpos LIKE esll-srvpos,
ktext1 LIKE esll-ktext1,
netwr LIKE esll-netwr,
act_wert LIKE esll-act_wert,
menge LIKE esll-menge,
bldat LIKE ekbe-bldat,
END OF ty_services.
TYPES : BEGIN OF ty_konv,
ebeln LIKE ekpo-ebeln,
ebelp LIKE ekpo-ebelp,
knumv LIKE konv-knumv,
kposn LIKE konv-kposn,
kschl LIKE konv-kschl,
kwert LIKE konv-kwert,
kbetr LIKE konv-kbetr,
END OF ty_konv.
TYPES : BEGIN OF ty_lfbnr,
belnr TYPE ekbe-belnr,
lfbnr TYPE ekbe-lfbnr,
END OF ty_lfbnr.
TYPES : BEGIN OF ty_miro,
belnr1 TYPE ekbe-belnr,
belnr TYPE ekbe-belnr,
budat TYPE ekbe-budat,
END OF ty_miro.
types: begin of ty_lfa1,
lifnr like lfa1-lifnr,
name1 like lfa1-lifnr,
pstlz like lfa1-pstlz,
stras like lfa1-stras,
end of ty_lfa1.
types: begin of ty_t007s,
mwskz like t007s-mwskz,
text1 like t007s-text1,
spras like t007s-spras,
kalsm like t007s-kalsm,
end of ty_t007s.
types: begin of ty_j_1imovend,
lifnr like j_1imovend-lifnr,
j_1icstno like j_1imovend-j_1icstno,
end of ty_j_1imovend.
types: begin of ty_bseg,
lifnr like bseg-lifnr,
dmbtr like bseg-dmbtr,
shkzg like bseg-shkzg,
hkont like bseg-hkont,
BELNR LIKE BSEG-BELNR,
end of ty_bseg.
types: begin of ty_ska1,
saknr like ska1-saknr,
sakan like ska1-sakan,
ktoks like ska1-ktoks,
mcod1 like ska1-mcod1,
end of ty_ska1.
DATA : it_lfbnr TYPE STANDARD TABLE OF ty_lfbnr,
wa_lfbnr TYPE ty_lfbnr,
it_lfa1 type standard table of ty_lfa1,
wa_lfa1 TYPE ty_lfa1,
it_t007s type standard table of ty_t007s,
wa_t007s TYPE ty_t007s,
it_j_1imovend type standard table of ty_j_1imovend,
wa_j_1imovend TYPE ty_j_1imovend,
it_bseg type standard table of ty_bseg,
wa_bseg TYPE ty_bseg,
it_ska1 type standard table of ty_ska1,
wa_ska1 TYPE ty_ska1,
it_miro TYPE STANDARD TABLE OF ty_miro,
wa_miro TYPE ty_miro,
w_belnr TYPE ekbe-belnr,
w_lfbnr TYPE ekbe-lfbnr,
w_belnr1 TYPE ekbe-belnr,
w_budat TYPE ekbe-budat.
CONSTANTS: Begin with C_ *
DATA: Begin with W_ *
DATA : w_flag TYPE c.
INTERNAL TABLES: Begin with IT_ *
DATA : it_ekko TYPE STANDARD TABLE OF ty_ekko WITH NON-UNIQUE KEY ebeln
ebelp,
it_ekpo type standard table of ty_ekpo,
it_ekbe TYPE STANDARD TABLE OF ty_ekbe,
it_ekbe1 TYPE STANDARD TABLE OF ty_ekbe WITH NON-UNIQUE KEY ebeln
ebelp,
it_display TYPE STANDARD TABLE OF ty_display,
it_subdebit TYPE STANDARD TABLE OF ty_ekbe,
it_services TYPE STANDARD TABLE OF ty_services,
it_packno TYPE STANDARD TABLE OF ty_services,
it_konv TYPE STANDARD TABLE OF ty_konv.
DATA : it_fieldcat TYPE slis_t_fieldcat_alv,
it_layout TYPE slis_layout_alv,
it_komv TYPE STANDARD TABLE OF komv WITH NON-UNIQUE KEY knumv
kschl.
WORKAREAS: Begin with WA_ *
DATA : wa_ekbe TYPE ty_ekbe,
wa_ekbe1 TYPE ty_ekbe,
wa_ekko TYPE ty_ekko,
wa_komv TYPE komv,
wa_display TYPE ty_display,
WA_LFA1 TYPE TY_LFA1,
W_GROSS_AMT type KOMV-KWERT,
wa_subdebit TYPE ty_ekbe,
wa_packno TYPE ty_services,
wa_services TYPE ty_services,
wa_konv TYPE ty_konv,
wa_taxcom TYPE taxcom,
wa_ls_fieldcat TYPE slis_fieldcat_alv.
FIELD-SYMBOLS: Begin with FS_ *
FIELD-GROUPS: Begin with FG_ *
CONTROLS: *
SELECT-OPTIONS: Begin with SO_ *
SELECT-OPTIONS : so_lifnr FOR ekko-lifnr ,
so_mtart FOR ekpo-mtart,
so_ebeln FOR ekbe-ebeln,
so_matnr FOR ekbe-matnr,
so_date FOR sy-datum no-display,
do_date for ekko-bedat,
tax_code for ekpo-mwskz,
mr_date for ekbe-budat,
mat_gr for ekpo-matkl,
mat_tp for ekpo-mtart,
pr_plant for ekbe-werks,
pr_ekorg for ekko-ekorg.
PARAMETERS: Begin with PR_ *
*PARAMETER : pr_plant LIKE ekpo-werks . "OBLIGATORY.
pr_ekorg LIKE ekko-ekorg . "OBLIGATORY.
SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001 .
PARAMETER : pr_preg TYPE c radiobutton group g1 default 'X',
pr_ror TYPE c RADIOBUTTON GROUP g1 .
SELECTION-SCREEN : END OF BLOCK b1.
START-OF-SELECTION *
START-OF-SELECTION .
*--- Get the data reguired--
PERFORM f001-get_data.
*-------Calculate the tax required -
PERFORM f002-cal_taxes.
PERFORM miro_get_data.
END-OF-SELECTION *
END-OF-SELECTION.
*---Display the report--
PERFORM f003-display_register.
*& Form F001-GET_DATA
text
--> p1 text
<-- p2 text
FORM f001-get_data .
Clear and Refresh all internal table and work area.
REFRESH : it_ekko,
it_ekbe,
it_services,
it_packno,
it_konv,
it_lfa1,
it_komv.
CLEAR : wa_ekko,
wa_ekbe,
wa_services,
wa_packno,
wa_konv,
wa_lfa1,
wa_komv.
Get the history records for all the selected PO. from table EKBE of
type GR.
IF pr_preg = 'X'.
*Get Purchasing Document Number, Number of the document condition,
*Vendor's accountNumber, Currency Key, Procedure , Country for Tax
*ReturnPurchasing OrganizationExchange rate In an internal table it_ekko
*break-point.
SELECT pBSART qknttp pebeln pknumv plifnr pwaers pkalsm plands pekorg pwkurs
wkurs pbedat qebelp qbukrs qmatkl qmtart pllief qmeins qbprme
qtxjcd qmwskz pwkurs qnetpr qmenge QPEINH
INTO CORRESPONDING FIELDS OF TABLE it_ekko
FROM ekko AS p INNER JOIN ekpo AS q
ON pebeln = qebeln
WHERE p~ekorg in pr_ekorg
AND p~lifnr IN so_lifnr
AND q~mtart IN so_mtart
AND p~ebeln IN so_ebeln
and p~bedat in do_date
and q~mwskz in tax_code
and q~matkl in mat_gr
and q~mtart in mat_tp
and kalsm = 'SIL000'
AND EKORG = 'SDOP'.
GET ALL THE PO FOR WHICH MIRO HAS BEEN DONE
SELECT ebeln ebelp budat bldat werks
INTO CORRESPONDING FIELDS OF TABLE it_ekbe1
FROM ekbe
FOR ALL ENTRIES IN it_ekko
WHERE ebeln = it_ekko-ebeln
AND ebelp = it_ekko-ebelp
AND bewtp = 'Q'
AND werks in pr_plant
AND budat IN so_date
AND ( bwart = '101' OR bwart = '102' ) "OR bwart = '105' OR bwart = '106' OR bwart ='')
AND ebeln IN so_ebeln
and budat in mr_date
AND matnr IN so_matnr.
AND ( BUDAT >= SO_DATE-low and BUDAT <= SO_DATE-high ).
Check whether any records is present
IF sy-subrc = 0.
IF NOT it_ekbe1 IS INITIAL.
SELECT ebeln ebelp buzei belnr budat xblnr werks matnr menge
dmbtr waers wrbtr bwtar shkzg dmbtr bldat srvpos
packno introw lfbnr bwart
INTO CORRESPONDING FIELDS OF TABLE it_ekbe
FROM ekbe
FOR ALL ENTRIES IN it_ekbe1
WHERE ebeln = it_ekbe1-ebeln
AND ebelp = it_ekbe1-ebelp
and budat in mr_date
AND budat IN so_date
and ( BUDAT >= SO_DATE-low and BUDAT <= SO_DATE-high )
AND bewtp = 'Q'.
AND ( bwart = '101' OR bwart = '102' OR bwart = '103' OR bwart = '105' ). "OR bwart = '105' OR bwart = '106' OR bwart ='').
AND bwart = '103'.
and WERKS = PR_PLANT.
IF sy-subrc = 0.
ENDIF.
ELSE.
SELECT ebeln ebelp buzei belnr budat xblnr werks matnr menge
dmbtr waers wrbtr bwtar shkzg dmbtr bldat srvpos
packno introw lfbnr bwart
INTO CORRESPONDING FIELDS OF TABLE it_ekbe
FROM ekbe
FOR ALL ENTRIES IN it_ekbe1
WHERE ebeln = it_ekbe1-ebeln
AND ebelp = it_ekbe1-ebelp
and budat in mr_date
AND budat IN so_date
and ( BUDAT >= SO_DATE-low and BUDAT <= SO_DATE-high )
AND bewtp = 'Q'.
AND ( bwart = '101' OR bwart = '102' OR bwart = '103' OR bwart = '105' ) . "OR bwart = '105' OR bwart = '106' OR bwart ='').
AND bwart = '102'.
and WERKS = PR_PLANT.
IF sy-subrc = 0.
ENDIF.
ENDIF.
ENDIF.
new code added
*get the venor address
select alifnr bname1 bpstlz bstras b~lifnr
into corresponding fields of table it_LFA1
from ekko as a inner join lfa1 as b
on alifnr = blifnr
for all entries in it_EKKO
where B~lifnr = it_EKKO-lifnr.
***tax code description added*******************
select mwskz text1 spras kalsm
from t007s
into corresponding fields of table it_t007s for all entries in it_ekko
where mwskz = it_ekko-mwskz and spras = 'E' and kalsm = 'TAXSIL'.
*******vendor vat no. added*************
select lifnr j_1icstno
from j_1imovend
into corresponding fields of table it_j_1imovend for all entries in it_ekko
where lifnr = it_ekko-lifnr.
**********gl code added******************************************
*select lifnr shkzg dmbtr hkont
*from bseg
*into corresponding fields of table it_bseg for all entries in it_lfa1 " it_ekko
*where LIFNR = it_lfa1-LIFNR and shkzg = 'S'.
*************gl code description added*******************************************
*select saknr ktoks mcod1 sakan
*from ska1
*into corresponding fields of table it_ska1 for all entries in it_bseg
*where sakan = it_bseg-hkont and ktoks = 'MAT'.
Get the package number , service number , service text , net price ,
accual amount , qty. etc
IF NOT it_packno[] IS INITIAL.
SELECT ppackno psrvpos pktext1 pnetwr pact_wert pmenge
INTO CORRESPONDING FIELDS OF TABLE it_services
FROM esll AS p "inner join ESLL as Q
on PPLN_PACKNO = QPACKNO
and PINTROW = QINTROW
FOR ALL ENTRIES IN it_packno
WHERE p~packno = it_packno-sub_packno.
IF sy-subrc = 0.
ENDIF.
ENDIF.
Get Number of the document condition ,line item number, Condition
value for all selected PO.
IF NOT it_ekko[] IS INITIAL.
SELECT knumv kposn kschl kwert
INTO CORRESPONDING FIELDS OF TABLE it_konv
FROM konv
FOR ALL ENTRIES IN it_ekko
WHERE knumv = it_ekko-knumv.
IF sy-subrc = 0.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. " F001-GET_DATA
*& Form F002-CAL_TAXES
text
--> p1 text
<-- p2 text
FORM f002-cal_taxes .
Calculate taxes for all the PO.
LOOP AT it_ekbe INTO wa_ekbe.
CLEAR : wa_display,
wa_ekko.
READ TABLE it_ekko WITH TABLE KEY ebeln = wa_ekbe-ebeln
ebelp = wa_ekbe-ebelp
INTO wa_ekko.
IF sy-subrc = 0.
ENDIF.
CLEAR wa_taxcom.
Get the text for the Material.
SELECT SINGLE maktx
INTO wa_display-maktx
FROM makt
WHERE matnr = wa_ekbe-matnr
AND spras = sy-langu.
wa_taxcom-bukrs = wa_ekko-bukrs.
wa_taxcom-budat = wa_ekbe-bldat.
wa_taxcom-budat = wa_ekko-bedat." change by dinesh
wa_taxcom-waers = wa_ekbe-waers.
wa_taxcom-kposn = wa_ekbe-ebelp.
wa_taxcom-mwskz = wa_ekko-mwskz.
wa_taxcom-txjcd = wa_ekko-txjcd.
taxcom-shkzg = 'H'.
wa_taxcom-xmwst = 'X'.
IF ekko-bstyp EQ bstyp-best.
wa_taxcom-wrbtr = wa_ekko-netpr * wa_ekbe-menge * wa_ekko-wkurs.
WA_TAXCOM-WRBTR = wa_ekbe-dmbtr.
ELSE.
taxcom-wrbtr = ekpo-zwert.
ENDIF.
wa_taxcom-lifnr = wa_ekko-lifnr.
wa_taxcom-land1 = wa_ekko-lands. "WIA
wa_taxcom-ekorg = wa_ekko-ekorg.
wa_taxcom-hwaer = 'INR'. "t001-waers.
wa_taxcom-llief = wa_ekko-llief.
wa_taxcom-bldat = wa_ekbe-bldat.
wa_taxcom-matnr = wa_ekbe-matnr. "HTN-Abwicklung
wa_taxcom-werks = wa_ekbe-werks. "pr_plant.
taxcom-bwtar = ekpo-bwtar.
wa_taxcom-matkl = wa_ekko-matkl.
wa_taxcom-meins = wa_ekko-meins.
wa_taxcom-ebeln = wa_ekbe-ebeln.
wa_taxcom-ebelp = wa_ekbe-ebelp.
wa_taxcom-mglme = wa_ekbe-menge.
wa_taxcom-mtart = wa_ekko-mtart.
*Call function module CALCULATE_TAX_ITEM--
CALL FUNCTION 'CALCULATE_TAX_ITEM'
EXPORTING
i_taxcom = wa_taxcom
display_only = 'X'
dialog = diakz
IMPORTING
e_taxcom = wa_taxcom
nav_anteil = hwert
TABLES
t_xkomv = it_komv
EXCEPTIONS
OTHERS = 01.
IF sy-subrc = 0.
ENDIF.
wa_display-bsart = wa_ekko-bsart.
wa_display-knttp = wa_ekko-knttp.
wa_display-bprme = wa_ekko-bprme.
wa_display-meins = wa_ekko-meins.
wa_display-lifnr = wa_ekko-lifnr.
wa_display-ebeln = wa_ekbe-ebeln.
wa_display-bedat = wa_ekko-bedat.
wa_display-bwart = wa_ekbe-bwart.
wa_display-budat = wa_ekbe-budat.
wa_display-matnr = wa_ekbe-matnr.
wa_display-belnr = wa_ekbe-belnr.
wa_display-menge = wa_ekbe-menge.
wa_display-PEINH = wa_ekko-PEINH.
wa_display-dmbtr = ( wa_ekko-netpr * wa_ekbe-menge * wa_ekko-wkurs ) / wa_ekko-PEINH.
WA_DISPLAY-DMBTR = WA_EKBE-DMBTR.
wa_display-srvpos = wa_ekbe-srvpos.
wa_display-mwskz = wa_EKKO-mwskz.
wa_display-WAERS = wa_EKKO-WAERS.
read table it_lfa1 into wa_lfa1 with key lifnr = wa_ekko-lifnr.
wa_display-name1 = wa_lfa1-name1.
wa_display-pstlz = wa_lfa1-pstlz.
wa_display-stras = wa_lfa1-stras.
read table it_t007s into wa_t007s with key mwskz = wa_ekko-mwskz.
wa_display-text1 = wa_t007s-text1.
read table it_j_1imovend into wa_j_1imovend with key lifnr = wa_ekko-lifnr.
wa_display-j_1icstno = wa_j_1imovend-j_1icstno.
read table it_bseg into wa_bseg with key LIFNR = wa_lfa1-lifnr. " wa_ekKO-LIFNR .
wa_display-HKONT = wa_bseg-HKONT.
*read table it_ska1 into wa_ska1 with key sakan = wa_bseg-hkont.
*wa_display-mcod1 = wa_ska1-mcod1.
READ TABLE it_komv WITH KEY kschl = 'JCDB'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0.
wa_display-custduty = wa_komv-kwert .
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'JCDB'.
IF wa_ekko-menge <> 0.
wa_display-custduty = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ENDIF.
Get the BED OR EXCISE DUTY
CLEAR : wa_komv , wa_konv.
READ TABLE it_komv WITH KEY kschl = 'JMOP'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0 .
wa_display-BED = wa_komv-kwert .
ELSE.
READ TABLE it_komv WITH KEY kschl = 'JMOQ'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0.
wa_display-BED = wa_komv-kwert .
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'JMOP'.
IF sy-subrc = 0.
IF wa_ekko-menge <> 0.
wa_display-BED = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY
knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'JMOQ'.
IF wa_ekko-menge <> 0.
wa_display-BED = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
******END OF EXCISE DUTY AND THE BED******************************************************
Get the EDUCATION CESS
CLEAR : wa_komv , wa_konv.
READ TABLE it_komv WITH KEY kschl = 'JEC1'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0 .
wa_display-educess = wa_komv-kwert .
ELSE.
READ TABLE it_komv WITH KEY kschl = 'JESQ'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0.
wa_display-educess = wa_komv-kwert .
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'JEC1'.
IF sy-subrc = 0.
IF wa_ekko-menge <> 0.
wa_display-educess = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY
knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'JESQ'.
IF wa_ekko-menge <> 0.
wa_display-educess = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
*END OF EDUCATION CESS
Get the SERVICE TAX
clear : WA_KOMV , WA_KONV.
read table IT_KOMV with key KSCHL = 'JSRT'
KPOSN = WA_EKKO-EBELP
into WA_KOMV.
if SY-SUBRC = 0.
WA_DISPLAY-SERTAX = WA_KOMV-KWERT .
else.
read table IT_KONV into WA_KONV with key KNUMV = WA_EKKO-KNUMV
KPOSN = WA_EKKO-EBELP
KSCHL = 'JSRT'.
WA_DISPLAY-SERTAX = WA_KONV-KWERT * wa_ekko-WKURS.
endif.
END OF SERVICE TAX****************************************
Get the EDUCATION CESS ON SERVICE TAX************************
clear : WA_KOMV , WA_KONV.
read table IT_KOMV with key KSCHL = 'JEC5'
KPOSN = WA_EKKO-EBELP
into WA_KOMV.
if SY-SUBRC = 0.
WA_DISPLAY-SEREDUCESS = WA_KOMV-KWERT .
else.
read table IT_KONV into WA_KONV with key KNUMV = WA_EKKO-KNUMV
KPOSN = WA_EKKO-EBELP
KSCHL = 'JEC5'.
WA_DISPLAY-SEREDUCESS = WA_KONV-KWERT * wa_ekko-WKURS.
endif.
******END OF SERVICE TAX ON EDUCATION CESS************************************************
Get the CVD
CLEAR : wa_komv , wa_konv.
READ TABLE it_komv WITH KEY kschl = 'JCV1'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0.
wa_display-cvd = wa_komv-kwert .
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'JCV1'.
IF wa_ekko-menge <> 0.
wa_display-cvd = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ENDIF.
Get the total INSURANCE
CLEAR : wa_komv , wa_konv.
READ TABLE it_komv WITH KEY kschl = 'ZIN1'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0 .
wa_display-insure = wa_komv-kwert .
ELSE.
READ TABLE it_komv WITH KEY kschl = 'ZIN2'
kposn = wa_ekko-ebelp
INTO wa_komv.
IF sy-subrc = 0.
wa_display-insure = wa_komv-kwert .
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY knumv = wa_ekko-knumv
kposn = wa_ekko-ebelp
kschl = 'ZIN1'.
IF sy-subrc = 0.
IF wa_ekko-menge <> 0.
wa_display-insure = ( wa_ekbe-menge / wa_ekko-menge
) * wa_konv-kwert * wa_ekko-wkurs.
ENDIF.
ELSE.
READ TABLE it_konv INTO wa_konv WITH KEY
Hi Ingo,
Thanks for the reply. But let me rephrase my question.Ā In the Bex we get a extra row called overall result in the result set which gives the correctĀ count/total/average based on exception aggregation.Ā The question is how we show the overall result row in the crystal or rather how can we map it into crystal.Ā So i thought as of now we should create a formula to compute the overall result and display it.
Hope I am clear this time in asking the right question.
Many many thanks in advance for your reply.
Kind regards,
Shiva. -
Problem while importing a Crystal Report in SAP Business One
Hi Experts,
Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā I am facing a problem while importing a Crystal Report in SAP Business One, it displaying an errorĀ "No matching records foundĀ 'Queries' (OUQR) (ODBC -2028)Ā [Message 131-183]" , and there is no use of this table OUQRĀ in the Query.
Kindly letĀ me know the solution.
Regards
Rahul SinghHi Rhaul,
i don't exactly know why this is a problem, but if your not on latest (881 p10) then upgrade and try again.
Or as a workaround,
try saveing from CR to SAP with the CR add-on. That usualy works better then the import.
Regards,
D -
Please help me out with this report
hi to all experts,
my requirement is to display only those purchase order that were created on Saturdays and sundays. i have toiled hard and could develop the code but still im not be able to get the requirement.IT is showing all purchase order for the given date range. what should be modified in my code.
*& Report Z_DAYS_SUNDAY_SAT *
*& This report will display purchase order created on saturday and sunday *
REPORT Z_DAYS_SUNDAY_SAT .
tables: ekko,dtresr.
types: begin of ty_pur,
ebeln type ekko-ebeln,"purchase document no
bukrs type ekko-bukrs,"company code
bstyp type ekko-bstyp,"document category
bsart type ekko-bsart,"document type
aedat type ekko-aedat,"date on which record was created
end of ty_pur,
begin of ty_days,
days type ekko-aedat,
end of ty_days.
data: it_ekko type table of ty_pur,
wa_ekko like line of it_ekko,
it_days type table of ty_days,
wa_days like line of it_days.
data : dbtwn type i,
g_day type dtresr-weekday.
parameters : p1 type dats,
p2 type dats.
ranges : r_day for ekko-aedat.
r_day-low = p1.
r_day-high = p2.
r_day-sign = 'I'.
r_day-option = 'BT'.
append r_day.
if p2 gt p1.
dbtwn = p2 - p1.
else.
message e000(zhnc) with 'plz enter date in proper order'.
endif.
do dbtwn times.
CALL FUNCTION 'DATE_TO_DAY'
EXPORTING
date = p1
IMPORTING
WEEKDAY = g_day.
if g_day = 'Sat.' or g_day = 'Sunday'.
wa_days = G_DAY.
APPEND wa_days TO it_days.
p1 = p1 + 1.
Endif.
enddo.
select ebeln
bukrs
bstyp
bsart
aedat from ekko into table it_ekko where aedat in r_day.
loop at it_ekko into wa_ekko.
READ TABLE it_days INTO wa_days WITH KEY wa_days-days.
write : / wa_ekko-ebeln,wa_ekko-bukrs,wa_ekko-bstyp,wa_ekko-bsart, wa_days-days.
endloop.Hi
try this code I've made changes...
*& Report Z_DAYS_SUNDAY_SAT *
*& This report will display purchase order created on saturday and sunday *
REPORT Z_DAYS_SUNDAY_SAT .
TABLES: ekko,dtresr.
TYPES: BEGIN OF ty_pur,
ebeln TYPE ekko-ebeln,"purchase document no
bukrs TYPE ekko-bukrs,"company code
bstyp TYPE ekko-bstyp,"document category
bsart TYPE ekko-bsart,"document type
aedat TYPE ekko-aedat,"date on which record was created
END OF ty_pur,
BEGIN OF ty_days,
days TYPE ekko-aedat,
END OF ty_days.
DATA: it_ekko TYPE TABLE OF ty_pur,
wa_ekko LIKE LINE OF it_ekko,
it_days TYPE TABLE OF ty_days,
wa_days LIKE LINE OF it_days.
DATA : dbtwn TYPE i,
g_day TYPE dtresr-weekday.
PARAMETERS : p1 TYPE dats,
p2 TYPE dats.
RANGES : r_day FOR ekko-aedat.
r_day-low = p1.
r_day-high = p2.
r_day-sign = 'I'.
r_day-option = 'BT'.
APPEND r_day.
IF p2 GT p1.
Ā dbtwn = p2 - p1.
ELSE.
Ā MESSAGE e000(zhnc) WITH 'plz enter date in proper order'.
ENDIF.
*DO dbtwn TIMES.
*Ā CALL FUNCTION 'DATE_TO_DAY'
*Ā Ā Ā EXPORTING
*Ā Ā Ā Ā Ā dateĀ Ā Ā = p1
*Ā Ā Ā IMPORTING
*Ā Ā Ā Ā Ā weekday = g_day.
*Ā IF g_day = 'Sat.' OR g_day = 'Sunday'.
*Ā Ā wa_days = g_day.
*Ā Ā Ā APPEND wa_days TO it_days.
*Ā ENDIF.
*Ā p1 = p1 + 1.
*ENDDO.
SELECT ebeln bukrs bstyp bsart aedat FROM ekko INTO TABLE it_ekko WHERE aedat IN
r_day.
LOOP AT it_ekko INTO wa_ekko.
Ā CALL FUNCTION 'DATE_TO_DAY'
Ā Ā Ā EXPORTING
Ā Ā Ā Ā Ā dateĀ Ā Ā = wa_ekko-aedat
Ā Ā Ā IMPORTING
Ā Ā Ā Ā Ā weekday = g_day.
Ā IF g_day = 'Sat.' OR g_day = 'Sunday'.
Ā Ā Ā Ā Ā Ā Ā WRITE : / wa_ekko-ebeln, wa_ekko-bukrs, wa_ekko-bstyp, wa_ekko-bsart, g_day.
Ā ENDIF.
ENDLOOP. -
Cannot import some pictures: reported as corrupted
I receive family pictures from my brother. He uses Photoshop. Some JPEG pictures are reported to be "corrupted" and won't import to iPhoto 08, most will. If I put them through my Photoshop Elements and make them PNG, twice the size, but then they will import.
Why can't iPhoto 'read' the pictures, yet Preview and Photoshop Elements 4 can? I'd sure like to use iPhoto, heck... it's kind of nifty. But at this rate, it's getting a bit annoying with having to rebuild the database thumbnails (black thumbnails) all of the time.
Primarily, the issue is not being able to import some JPEGs, however.ringhome
Just try opening the files in Preview and then saving them as jpeg - then try import. This issue can arise because PS sometimes adds metadata that iPhoto can' deal with.
The Black thumbnails can be caused by importing greyscale images - iPhoto supports RGB only. If that's not the issue and the problem is persistent then check your HD for minor errors using Disk Utility.
Regards
TD -
How do i get this report program
Ā Ā Ā Ā Ā Contract Compliance Report : This report looks at the actual customer purchases (QTY) by period vs. targeted quantities.
Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā The report created will list all the contracts quantity vs. shipped quantity in the period specified for a given customer or material or sales organization or contract number along with details such as material numbers, contract start date, contract end date, etc.
Ā Ā Ā Ā Ā Contract Expiration Report : Contracts need to be monitored and quotations sent out for renewal as they approach their expiry date. A report is required to show the contracts expiring.
Ā Ā Ā Ā Ā Ā Ā Ā Ā Ā This report will list all the contracts expiring in the period specified for a given customer or material or sales organization or contract number along with details such as equipment numbers, material numbers, contract start date, contract end date, etc.hi
i have this code for CONTRACT EXPIRATION REPORT.
may this be useful.
TABLES: vbak,veda,vbkd.
TYPE-POOLS: slis,
ibco2.
TYPES : BEGIN OF t_ty_str_contract_dtls,
vbeln TYPE vbeln,
posnr TYPE posnr,
zzp_mfrnr TYPE mfrnr,
zprogram TYPE zsls_dte_program,
cuobj TYPE cuobj,
classnum TYPE char18,
END OF t_ty_str_contract_dtls.
DATA : g_tab_cnt_details TYPE zsls_tab_cntr_expire,
g_wa_cnt_details TYPE LINE OF zsls_tab_cntr_expire,
g_tab_fieldcat TYPE slis_t_fieldcat_alv,
g_fieldcat TYPE slis_fieldcat_alv,
g_pos TYPE i,
g_exit TYPE c,
p_fname TYPE string,
repid TYPE sy-repid,
BEGIN OF g_str_data,
kunnr(12) TYPE c,
name1(30) TYPE c,
vkorg(15) TYPE c,
vkbur(15) TYPE c,
vkgrp(15) TYPE c,
bezei(25) TYPE c,
vbeln(15) TYPE c,
bstkd_m(35) TYPE c,
ktext(40) TYPE c,
vbegdat(15) TYPE c,
venddat(17) TYPE c,
auart(15) TYPE c,
zzp_mfrnr(12) TYPE c,
mnf_des(30) TYPE c,
zprogram(30) TYPE c,
END OF g_str_data,
BEGIN OF g_str_cus_nam,
kunnr TYPE kunnr,
name1 TYPE name1,
END OF g_str_cus_nam,
BEGIN OF g_str_sgrp_nam,
vkgrp TYPE vkgrp,
bezei TYPE bezei,
END OF g_str_sgrp_nam,
BEGIN OF g_str_manf_nam,
lifnr TYPE lifnr,
name1 TYPE name1,
END OF g_str_manf_nam.
DATA : g_tab_data LIKE STANDARD TABLE OF g_str_data,
g_tab_cus_nam LIKE STANDARD TABLE OF g_str_cus_nam,
g_tab_sgrp_nam LIKE STANDARD TABLE OF g_str_sgrp_nam,
g_tab_contract TYPE STANDARD TABLE OF t_ty_str_contract_dtls,
g_wa_contract TYPE t_ty_str_contract_dtls,
g_tab_manf_nam LIKE STANDARD TABLE OF g_str_manf_nam,
g_rc LIKE sy-subrc. "RETURN CODE.
CONSTANTS: con_klart LIKE klah-klart VALUE '300',
con_program LIKE zsls_str_contract_chg-zprogram VALUE 'PROGRAM'.
SELECTION-SCREEN BEGIN OF BLOCK b0 WITH FRAME.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_sorg FOR vbak-vkorg OBLIGATORY DEFAULT '0030',
s_soff FOR vbak-vkbur,
s_sgrp FOR vbak-vkgrp,
s_dtyp FOR vbak-auart OBLIGATORY,
s_cnum FOR vbak-vbeln,
s_cust FOR vbak-kunnr,
s_pnum FOR vbkd-bstkd_m NO-EXTENSION NO INTERVALS.
PARAMETERS : p_mfnum LIKE mara-mfrnr.
SELECT-OPTIONS : s_endt FOR veda-venddat OBLIGATORY.
PARAMETERS : p_prg LIKE zsls_str_char_para-zprogram.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-005.
PARAMETER :p_name LIKE rlgrap-filename. " OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN END OF BLOCK b0.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_name.
MOVE sy-repid TO repid.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = repid
dynpro_number = sy-dynnr
field_name = 'P_NAME'
IMPORTING
file_name = p_name.
START-OF-SELECTION.
PERFORM get_data.
IF g_exit NE 'X'.
PERFORM get_prg_mfr_dtls.
IF g_tab_cnt_details IS INITIAL.
MESSAGE i000 WITH text-004.
g_exit = 'X'.
EXIT.
ENDIF.
PERFORM move_data.
ENDIF.
END-OF-SELECTION.
IF g_exit NE 'X'.
MOVE p_name TO p_fname.
PERFORM post_data_report.
PERFORM display_data.
ENDIF.
*& Form get_data
FORM get_data .
SELECT a~vkorg
a~vkbur
a~vkgrp
a~auart
a~kunnr
a~vbeln
a~ktext
c~vbegdat
c~venddat
d~bstkd_m
INTO CORRESPONDING FIELDS OF TABLE g_tab_cnt_details
FROM vbak AS a
INNER JOIN veda AS c
ON a~vbeln EQ c~vbeln AND
c~vposn EQ '000000'
INNER JOIN vbkd AS d
ON a~vbeln EQ d~vbeln
WHERE a~vkorg IN s_sorg AND
a~vkbur IN s_soff AND
a~vkgrp IN s_sgrp AND
a~auart IN s_dtyp AND
a~vbtyp EQ 'G' AND
a~vbeln IN s_cnum AND
a~kunnr IN s_cust AND
c~venddat IN s_endt AND
d~bstkd_m IN s_pnum.
IF sy-subrc NE 0 OR g_tab_cnt_details IS INITIAL.
MESSAGE i000 WITH text-004.
g_exit = 'X'.
EXIT.
ENDIF.
ENDFORM. " get_data
*& Form display_data
FORM display_data .
IF g_tab_cnt_details IS NOT INITIAL.
DELETE ADJACENT DUPLICATES FROM g_tab_cnt_details COMPARING ALL FIELDS.
PERFORM build_field_cat.
PERFORM call_alv.
ENDIF.
ENDFORM. " display_data
*& Form build_field_cat
FORM build_field_cat .
REFRESH g_tab_fieldcat.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'KUNNR' '15' text-010 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'NAME1' '30' text-024 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'VKORG' '10' text-011 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'VKBUR' '15' text-012 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'VKGRP' '15' text-015 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'BEZEI' '25' text-025 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'VBELN' '15' text-013 ' ' 'X' 'X'.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'BSTKD_M' '35' text-014 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'KTEXT' '40' text-023 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'VBEGDAT' '20' text-016 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'VENDDAT' '20' text-017 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'AUART' '18' text-018 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'ZZP_MFRNR' '20' text-028 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'MNF_DES' '30' text-030 ' ' ' ' ' '.
PERFORM fill_field_cat USING g_pos 'G_TAB_CNT_DETAILS' 'ZPROGRAM' '30' text-029 ' ' ' ' ' '.
ENDFORM. " build_field_cat
*& Form fill_field_cat
* text
FORM fill_field_cat USING u_pos TYPE any
value(u_001) TYPE any
value(u_002) TYPE any
value(u_003) TYPE any
u_text TYPE any
value(u_004) TYPE any
value(u_005) TYPE any
value(u_006) TYPE any.
u_pos = u_pos + 1.
g_fieldcat-col_pos = u_pos .
g_fieldcat-tabname = u_001.
g_fieldcat-fieldname = u_002.
g_fieldcat-outputlen = u_003.
g_fieldcat-reptext_ddic = u_text.
g_fieldcat-just = u_004.
g_fieldcat-hotspot = u_005.
g_fieldcat-emphasize = u_006.
APPEND g_fieldcat TO g_tab_fieldcat.
ENDFORM. " fill_field_cat
*& Form call_alv
FORM call_alv.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_callback_user_command = 'USER_COMMAND'
it_fieldcat = g_tab_fieldcat
TABLES
t_outtab = g_tab_cnt_details
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. " call_alv
*& Form post_data_report
FORM post_data_report .
IF p_fname IS NOT INITIAL.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filename = p_fname
filetype = 'DAT'
TABLES
data_tab = g_tab_data
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDIF.
ENDFORM. " post_data_report
**& Form MOVE_DATA
FORM move_data .
IF g_tab_cnt_details IS NOT INITIAL.
MOVE: text-010 TO g_str_data-kunnr,
text-024 TO g_str_data-name1,
text-011 TO g_str_data-vkorg,
text-012 TO g_str_data-vkbur,
text-015 TO g_str_data-vkgrp,
text-025 TO g_str_data-bezei,
text-013 TO g_str_data-vbeln,
text-014 TO g_str_data-bstkd_m,
text-023 TO g_str_data-ktext,
text-016 TO g_str_data-vbegdat,
text-017 TO g_str_data-venddat,
text-018 TO g_str_data-auart,
text-028 TO g_str_data-zzp_mfrnr,
text-030 TO g_str_data-mnf_des,
text-029 TO g_str_data-zprogram.
APPEND g_str_data TO g_tab_data.
LOOP AT g_tab_cnt_details INTO g_wa_cnt_details.
MOVE: g_wa_cnt_details-kunnr TO g_str_data-kunnr,
g_wa_cnt_details-name1 TO g_str_data-name1,
g_wa_cnt_details-vkorg TO g_str_data-vkorg,
g_wa_cnt_details-vkbur TO g_str_data-vkbur,
g_wa_cnt_details-vkgrp TO g_str_data-vkgrp,
g_wa_cnt_details-bezei TO g_str_data-bezei,
g_wa_cnt_details-vbeln TO g_str_data-vbeln,
g_wa_cnt_details-bstkd_m TO g_str_data-bstkd_m,
g_wa_cnt_details-ktext TO g_str_data-ktext,
g_wa_cnt_details-vbegdat TO g_str_data-vbegdat,
g_wa_cnt_details-venddat TO g_str_data-venddat,
g_wa_cnt_details-auart TO g_str_data-auart,
g_wa_cnt_details-zzp_mfrnr TO g_str_data-zzp_mfrnr,
g_wa_cnt_details-mnf_des TO g_str_data-mnf_des,
g_wa_cnt_details-zprogram TO g_str_data-zprogram.
APPEND g_str_data TO g_tab_data.
CLEAR :g_str_data,g_wa_cnt_details.
ENDLOOP.
ENDIF.
ENDFORM. " MOVE_DATA
**& Form user_command
FORM user_command USING ucomm LIKE sy-ucomm selfield TYPE slis_selfield."#EC CALLED
READ TABLE g_tab_cnt_details INTO g_wa_cnt_details INDEX selfield-tabindex.
CHECK sy-subrc = 0.
CASE ucomm.
WHEN '&IC1'.
TRANSLATE selfield-sel_tab_field TO UPPER CASE.
CASE selfield-sel_tab_field.
WHEN 'G_TAB_CNT_DETAILS-VBELN'.
IF NOT g_wa_cnt_details-vbeln IS INITIAL.
SET PARAMETER ID 'KTN' FIELD g_wa_cnt_details-vbeln.
CALL TRANSACTION 'VA43' AND SKIP FIRST SCREEN .
ENDIF.
WHEN OTHERS.
MESSAGE w000(zsls_general) WITH text-027 .
EXIT.
ENDCASE.
ENDCASE.
ENDFORM. "user_command
*& Form get_descrip_for_sgrpcust
FORM get_descrip_for_sgrpcust .
IF g_tab_cnt_details[] IS NOT INITIAL.
SELECT kunnr name1
INTO CORRESPONDING FIELDS OF TABLE g_tab_cus_nam
FROM kna1
FOR ALL ENTRIES IN g_tab_cnt_details
WHERE kunnr = g_tab_cnt_details-kunnr.
DELETE ADJACENT DUPLICATES FROM g_tab_cus_nam COMPARING ALL FIELDS.
SELECT vkgrp bezei
INTO CORRESPONDING FIELDS OF TABLE g_tab_sgrp_nam
FROM tvgrt
FOR ALL ENTRIES IN g_tab_cnt_details
WHERE vkgrp = g_tab_cnt_details-vkgrp.
DELETE ADJACENT DUPLICATES FROM g_tab_sgrp_nam COMPARING ALL FIELDS.
ENDIF.
ENDFORM. " get_descrip_for_sgrpcust
**& Form get_class_details
FORM get_class_details .
DATA : l_sy_tabix TYPE sy-tabix.
SELECT vbap~vbeln
vbap~posnr
vbap~matnr
vbap~zzp_mfrnr
vbap~cuobj
INTO CORRESPONDING FIELDS OF TABLE g_tab_contract
FROM vbap
FOR ALL ENTRIES IN g_tab_cnt_details
WHERE vbap~vbeln = g_tab_cnt_details-vbeln.
IF g_tab_contract IS NOT INITIAL.
SORT g_tab_contract BY vbeln zzp_mfrnr.
DELETE ADJACENT DUPLICATES FROM g_tab_contract COMPARING vbeln zzp_mfrnr.
LOOP AT g_tab_contract INTO g_wa_contract.
l_sy_tabix = sy-tabix.
PERFORM get_config USING g_wa_contract-cuobj
CHANGING g_wa_contract-zprogram .
MODIFY g_tab_contract FROM g_wa_contract INDEX l_sy_tabix.
CLEAR : g_wa_contract.
ENDLOOP.
*---Moving the manufacturer details and program details
LOOP AT g_tab_cnt_details INTO g_wa_cnt_details.
l_sy_tabix = sy-tabix.
READ TABLE g_tab_contract INTO g_wa_contract WITH KEY vbeln = g_wa_cnt_details-vbeln.
IF sy-subrc = 0.
g_wa_cnt_details-zzp_mfrnr = g_wa_contract-zzp_mfrnr.
g_wa_cnt_details-zprogram = g_wa_contract-zprogram.
ENDIF.
MODIFY g_tab_cnt_details FROM g_wa_cnt_details INDEX l_sy_tabix.
ENDLOOP.
IF p_prg IS NOT INITIAL.
DELETE g_tab_cnt_details WHERE zprogram <> p_prg.
ENDIF.
IF p_mfnum IS NOT INITIAL.
DELETE g_tab_cnt_details WHERE zzp_mfrnr <> p_mfnum.
ENDIF.
ENDIF.
PERFORM move_manf_desc.
ENDFORM. " get_class_details
**& Form get_config
FORM get_config USING g_wa_contract-cuobj
CHANGING g_wa_contract-zprogram .
DATA : l_name(200),
l_tab_cfg TYPE ibco2_instance_tab2,
l_str_cfg TYPE ibco2_instance_rec2,
l_tab_values TYPE STANDARD TABLE OF ibco2_value_rec WITH HEADER LINE,
l_tab_get_values LIKE comw OCCURS 0 WITH HEADER LINE,
l_tab_features LIKE STANDARD TABLE OF klmerka,
l_str_chr_val LIKE clx2v,
l_tab_chr_val LIKE STANDARD TABLE OF clx2v,
l_atwtb TYPE atwtb.
CLEAR : l_tab_values,
l_name,
l_tab_get_values,
l_str_cfg.
REFRESH : l_tab_features,
l_tab_values,
l_tab_get_values,
l_tab_cfg.
CALL FUNCTION 'CUCB_GET_CONFIGURATION'
EXPORTING
instance = g_wa_contract-cuobj
IMPORTING
configuration = l_tab_cfg
EXCEPTIONS
invalid_instance = 1
instance_is_a_classification = 2
OTHERS = 3.
READ TABLE l_tab_cfg INTO l_str_cfg INDEX 1.
PERFORM get_class_num USING l_str_cfg-type_of-object_type
l_str_cfg-type_of-object_key.
CHECK g_rc EQ 0.
CALL FUNCTION 'CLME_FEATURE_ATTR_OF_CLASS'
EXPORTING
class = g_wa_contract-classnum
classtype = con_klart
TABLES
tfeatures = l_tab_features
tvalues = l_tab_chr_val.
READ TABLE l_tab_cfg INTO l_str_cfg INDEX 1.
IF sy-subrc = 0.
l_tab_values[] = l_str_cfg-values[].
SORT l_tab_values BY atinn.
LOOP AT l_tab_values.
l_tab_get_values-atinn = l_tab_values-atinn.
l_tab_get_values-atwrt = l_tab_values-atwrt.
READ TABLE l_tab_chr_val INTO l_str_chr_val
WITH KEY atinn = l_tab_values-atinn
atwrt = l_tab_values-atwrt.
IF sy-subrc = 0.
l_atwtb = l_str_chr_val-atwtb.
ELSE.
l_atwtb = l_tab_values-atwrt.
ENDIF.
MOVE l_tab_values-atinn TO l_name.
PERFORM conversion_exit_char CHANGING l_name.
CASE l_name.
WHEN con_program.
MOVE l_atwtb TO g_wa_contract-zprogram.
ENDCASE.
ENDLOOP.
ENDIF.
ENDFORM. " get_config
**& Form get_class_num
** text
** --> p1 text
** <-- p2 text
FORM get_class_num USING l_str_cfg-type_of-object_type
l_str_cfg-type_of-object_key.
*--Clear all variables & tables
DATA : l_alloclist TYPE bapi1003_alloc_list OCCURS 0 WITH HEADER LINE,
l_return TYPE bapiret2 OCCURS 0 WITH HEADER LINE,
clobjectkeyin LIKE bapi1003_key-object_guid,
d_obtab LIKE tcla-obtab.
CLEAR : l_alloclist,
l_return,
clobjectkeyin,
d_obtab,
g_rc .
REFRESH :l_alloclist,
l_return.
*get the db table for class type 300 to be used in different places.
*get the object key number for the material number
d_obtab = l_str_cfg-type_of-object_type.
SELECT SINGLE cuobj FROM inob INTO clobjectkeyin
WHERE klart = con_klart AND
objek = l_str_cfg-type_of-object_key AND
obtab = d_obtab.
IF sy-subrc EQ 0.
*get the class name and type for the material no.
CALL FUNCTION 'BAPI_OBJCL_GETCLASSES_KEY'
EXPORTING
clobjectkeyin = clobjectkeyin
keydate = sy-datum
language = sy-langu
TABLES
alloclist = l_alloclist
return = l_return.
READ TABLE l_alloclist INDEX 1.
MOVE l_alloclist-classnum TO g_wa_contract-classnum.
ELSE.
g_rc = 4.
ENDIF.
ENDFORM. " get_class_num
**& Form conversion_exit_char
FORM conversion_exit_char CHANGING c_name.
CALL FUNCTION 'CONVERSION_EXIT_ATINN_OUTPUT'
EXPORTING
input = c_name
IMPORTING
output = c_name.
ENDFORM. " conversion_exit_char
*& Form get_prg_mfr_dtls
* text
* --> p1 text
* <-- p2 text
FORM get_prg_mfr_dtls .
*---Getting the Description for Customer and Sales group
PERFORM get_descrip_for_sgrpcust.
PERFORM get_class_details.
ENDFORM. " get_prg_mfr_dtls
*& Form move_manf_desc
* text
* --> p1 text
* <-- p2 text
FORM move_manf_desc .
DATA l_sy_tabix TYPE sy-tabix.
SELECT lifnr name1
INTO CORRESPONDING FIELDS OF TABLE g_tab_manf_nam
FROM lfa1
FOR ALL ENTRIES IN g_tab_cnt_details
WHERE lifnr = g_tab_cnt_details-zzp_mfrnr.
DELETE ADJACENT DUPLICATES FROM g_tab_manf_nam COMPARING ALL FIELDS.
LOOP AT g_tab_cnt_details INTO g_wa_cnt_details.
l_sy_tabix = sy-tabix.
READ TABLE g_tab_cus_nam INTO g_str_cus_nam WITH KEY kunnr = g_wa_cnt_details-kunnr.
IF sy-subrc = 0.
MOVE g_str_cus_nam-name1 TO g_wa_cnt_details-name1.
ENDIF.
READ TABLE g_tab_sgrp_nam INTO g_str_sgrp_nam WITH KEY vkgrp = g_wa_cnt_details-vkgrp.
IF sy-subrc = 0.
MOVE g_str_sgrp_nam-bezei TO g_wa_cnt_details-bezei.
ENDIF.
READ TABLE g_tab_manf_nam INTO g_str_manf_nam WITH KEY lifnr = g_wa_cnt_details-zzp_mfrnr.
IF sy-subrc = 0.
MOVE g_str_manf_nam-name1 TO g_wa_cnt_details-mnf_des.
ENDIF.
MODIFY g_tab_cnt_details FROM g_wa_cnt_details INDEX l_sy_tabix.
CLEAR: g_wa_cnt_details.
ENDLOOP.
ENDFORM. " move_manf_desc
thx
pavan
*pls mark for helpful ans -
Function of this report RDDEXECL
Hi,
I would like to know the function of this report RDDEXECL. Kindly give a detailed explanation about this report?In addition I woould like also to know when to use this report?
Regards,Hi,
RDDEXECL Execution of programs for post - import processing
Feel free to revert back.
-=-Ragu -
Give Me Some Tips For doing this report.
hi frd. help me in this report.
parameter : plant,material no,company code,storage location.
display: material no, material desc, UOM, ROL, warehouse, open po, open po qty, open pr no, open pr qty.
Kindly Give me tips for doing this report.
thank u
Pari Vendhan.RHi,
Its will not fullfill ur requirement but upto some extent...just have a look.
TYPE-POOLS : slis.
TABLES : mkpf,
mseg,
t001w,
t001l.
TYPES : BEGIN OF ty_t001w,
werks TYPE t001w-werks,
name1 TYPE t001w-name1,
END OF ty_t001w,
BEGIN OF ty_makt,
matnr TYPE makt-matnr,
maktx TYPE makt-maktx,
END OF ty_makt,
BEGIN OF ty_t001l,
lgort TYPE t001l-lgort,
lgobe TYPE t001l-lgobe,
END OF ty_t001l.
DATA : BEGIN OF it_mat OCCURS 0,
mbln LIKE mseg-mblnr, " Number of Material Document
zeile LIKE mseg-zeile, " Item in Material Document
mjahr LIKE mseg-mjahr, " Material Document Year
bwart LIKE mseg-bwart, " Movement Type
matnr LIKE mseg-matnr, " Material Number
erfmg LIKE mseg-erfmg, "Quantity in unit of entry
erfme LIKE mseg-erfme, "Unit of entry
werks LIKE mseg-werks, "Plant
lgort LIKE mseg-lgort, "Storage location
umwrk LIKE mseg-umwrk, "Receiving plant/issuing plant
umlgo LIKE mseg-umlgo, "Receiving/issuing storage location
bldat LIKE mkpf-bldat, "Document Date in Document
budat LIKE mkpf-budat, "Posting Date in the Document
maktx LIKE makt-maktx, "Material description
name1 LIKE t001w-name1, "Name
name2 LIKE t001w-name1, "Name
lgobe LIKE t001l-lgobe, "Description of storage location
lgobe1 LIKE t001l-lgobe, "Description of storage location
END OF it_mat.
DATA : it_t001w TYPE TABLE OF ty_t001w
WITH HEADER LINE,
it_makt TYPE TABLE OF ty_makt
WITH HEADER LINE,
it_t001l TYPE TABLE OF ty_t001l
WITH HEADER LINE.
DATA : ls_layout TYPE slis_layout_alv,
it_fcat TYPE slis_t_fieldcat_alv ,
wa_fcat TYPE slis_fieldcat_alv,
"lh TYPE slis_t_listheader,
" ls TYPE slis_listheader,
i_events TYPE slis_t_event WITH HEADER LINE ,
"ls_event TYPE slis_alv_event ,
w_var TYPE i.
DATA : l_date(10).
DATA : l_date1(20),
ztabix LIKE sy-tabix.
SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_werks FOR mseg-werks,
s_lgort FOR mseg-lgort,
s_umwrk FOR mseg-umwrk,
s_umlgo FOR mseg-umlgo,
s_bwart FOR mseg-bwart,
s_budat FOR mkpf-budat,
s_mjahr FOR mkpf-mjahr NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK a1.
AT SELECTION-SCREEN.
SELECT SINGLE * FROM t001w INTO t001w
WHERE werks IN s_werks.
IF sy-subrc <> 0.
MESSAGE e000(8i) WITH 'Enter a Valid Supplying Plant'.
ENDIF.
SELECT SINGLE * FROM t001w INTO t001w
WHERE werks IN s_umwrk.
IF sy-subrc <> 0.
MESSAGE e000(8i) WITH 'Enter a Valid Receiving Plant'.
ENDIF.
SELECT SINGLE * FROM t001l INTO t001l
WHERE lgort IN s_lgort.
IF sy-subrc <> 0.
MESSAGE e000(8i) WITH 'Enter a Valid Supplying St.Loc'.
ENDIF.
SELECT SINGLE * FROM t001l INTO t001l
WHERE lgort IN s_umlgo.
IF sy-subrc <> 0.
MESSAGE e000(8i) WITH 'Enter a Valid Receiving St.Loc'.
ENDIF.
START-OF-SELECTION.
PERFORM field_cat.
PERFORM get_data.
*END-OF-SELECTION.
IF it_mat[] IS INITIAL.
MESSAGE i000(8i) WITH 'No data Found'(m01).
* EXIT.
ELSE.
PERFORM process_data.
PERFORM display_data.
ENDIF.
*& Form field_cat
* text
* --> p1 text
* <-- p2 text
FORM field_cat .
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'MBLN'.
wa_fcat-key = 'X'.
wa_fcat-hotspot = 'X'.
wa_fcat-ref_fieldname = 'MBLNR'.
wa_fcat-ref_tabname = 'MSEG'.
wa_fcat-seltext_m = 'Material Doc'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'ZEILE'.
wa_fcat-ref_fieldname = 'ZEILE'.
wa_fcat-ref_tabname = 'MSEG'.
wa_fcat-seltext_m = 'Item No'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'MJAHR'.
wa_fcat-ref_fieldname = 'MJAHR'.
wa_fcat-ref_tabname = 'MSEG'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'BWART'.
wa_fcat-ref_fieldname = 'BWART'.
wa_fcat-ref_tabname = 'MSEG'.
wa_fcat-seltext_m = 'Mvmt Type'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'BLDAT'.
wa_fcat-ref_fieldname = 'BLDAT'.
wa_fcat-ref_tabname = 'MKPF'.
wa_fcat-seltext_m = 'Document Date'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'BUDAT'.
wa_fcat-ref_fieldname = 'BUDAT'.
wa_fcat-ref_tabname = 'MKPF'.
wa_fcat-seltext_m = 'Posting Date'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'MATNR'.
wa_fcat-ref_fieldname = 'MATNR'.
wa_fcat-ref_tabname = 'MSEG'.
wa_fcat-seltext_m = 'Material No'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'MAKTX'.
wa_fcat-ref_fieldname = 'MAKTX'.
wa_fcat-ref_tabname = 'MAKT'.
wa_fcat-seltext_m = 'Material Description'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'ERFMG'.
wa_fcat-ref_fieldname = 'ERFMG'.
wa_fcat-ref_tabname = 'MSEG'.
wa_fcat-seltext_m = 'Quantity'.
wa_fcat-do_sum = 'X'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'ERFME'.
wa_fcat-ref_fieldname = 'ERFME'.
wa_fcat-ref_tabname = 'MSEG'.
wa_fcat-seltext_m = 'Uom'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'WERKS'.
wa_fcat-seltext_m = 'Supplying Plant'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'NAME1'.
wa_fcat-seltext_m = 'S.Plnt Desc.'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'LGORT'.
wa_fcat-seltext_m = 'Supplying St.Loc'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'LGOBE'.
wa_fcat-seltext_m = 'Su.St.Loc Desc.'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'UMWRK'.
wa_fcat-seltext_m = 'Receiving Plant'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'NAME2'.
wa_fcat-seltext_m = 'R.Plnt Desc.'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'UMLGO'.
wa_fcat-seltext_m = 'Receiving St.Loc'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
wa_fcat-col_pos = w_var.
wa_fcat-tabname = 'IT_MAT'.
wa_fcat-fieldname = 'LGOBE1'.
wa_fcat-seltext_m = 'Re.St.Loc Desc.'.
APPEND wa_fcat TO it_fcat.
CLEAR wa_fcat.
ADD 1 TO w_var.
ENDFORM. " field_cat
*& Form get_data
* text
* --> p1 text
* <-- p2 text
FORM get_data .
SELECT a~mblnr a~zeile a~mjahr a~bwart a~matnr
a~erfmg a~erfme a~werks a~lgort a~umwrk a~umlgo
b~budat b~bldat
INTO CORRESPONDING FIELDS OF TABLE it_mat
FROM mseg AS a INNER JOIN mkpf AS b
ON a~mblnr = b~mblnr
AND a~mjahr = b~mjahr
CLIENT SPECIFIED
WHERE a~mandt EQ sy-mandt
AND a~werks IN s_werks
AND a~lgort IN s_lgort
AND a~umwrk IN s_umwrk
AND a~umlgo IN s_umlgo
AND a~bwart IN s_bwart
AND b~budat IN s_budat
AND b~mjahr IN s_mjahr.
IF sy-subrc EQ 0.
SELECT matnr maktx
INTO TABLE it_makt FROM makt
CLIENT SPECIFIED
FOR ALL ENTRIES IN it_mat
WHERE matnr = it_mat-matnr AND mandt EQ sy-mandt.
ENDIF.
SELECT werks name1
INTO TABLE it_t001w FROM t001w
CLIENT SPECIFIED
WHERE mandt EQ sy-mandt.
IF sy-subrc <> 0.
MESSAGE e000(zmss).
ENDIF.
SELECT lgobe INTO TABLE it_t001l FROM t001l
CLIENT SPECIFIED
WHERE mandt EQ sy-mandt.
IF sy-subrc <> 0.
MESSAGE e000(zmss).
ENDIF.
ENDFORM. " get_data
*& Form process_data
* text
* --> p1 text
* <-- p2 text
FORM process_data .
LOOP AT it_mat.
ztabix = sy-tabix.
READ TABLE it_makt WITH KEY matnr = it_mat-matnr.
IF sy-subrc = 0.
it_mat-maktx = it_makt-maktx.
ENDIF.
IF it_mat-bwart+2(1) = '2'.
it_mat-erfmg = - ( it_mat-erfmg ).
ENDIF.
READ TABLE it_t001w WITH KEY werks = it_mat-werks.
IF sy-subrc = 0.
it_mat-name1 = it_t001w-name1.
ENDIF.
READ TABLE it_t001w WITH KEY werks = it_mat-umwrk.
IF sy-subrc = 0.
it_mat-name2 = it_t001w-name1.
ENDIF.
READ TABLE it_t001l WITH KEY lgort = it_mat-lgort.
IF sy-subrc = 0.
it_mat-lgobe = it_t001l-lgobe.
ENDIF.
READ TABLE it_t001l WITH KEY lgort = it_mat-umlgo.
IF sy-subrc = 0.
it_mat-lgobe1 = it_t001l-lgobe.
ENDIF.
MODIFY it_mat INDEX ztabix .
ENDLOOP.
ENDFORM. " process_data
*& Form display_data
* text
* --> p1 text
* <-- p2 text
FORM display_data .
REFRESH i_events.
i_events-form = 'TOP'.
i_events-name = 'TOP_OF_PAGE'.
APPEND i_events.
CLEAR i_events.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
i_callback_program = SY-CPROG
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
i_callback_top_of_page = 'TOP'
* i_callback_html_top_of_page = 'TOP'
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
i_background_id = 'ALV_BACKGROUND'
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IS_LAYOUT = LS_LAYOUT
it_fieldcat = it_fcat[]
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
it_events = i_events[]
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_HTML_HEIGHT_TOP = 0
* I_HTML_HEIGHT_END = 0
* IT_ALV_GRAPHICS =
* IT_HYPERLINK =
* IT_ADD_FIELDCAT =
* IT_EXCEPT_QINFO =
* IR_SALV_FULLSCREEN_ADAPTER =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = it_mat
* 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. " display_data
*& Form top
* text
FORM top.
DATA : idate(10),
idate1 TYPE sy-datum.
DATA : ls_line TYPE slis_listheader,
i_listheader TYPE slis_t_listheader .
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = sy-repid.
APPEND ls_line TO i_listheader.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-info = 'MATERIAL DOCUMENT LIST'.
APPEND ls_line TO i_listheader.
CLEAR ls_line.
idate1 = sy-datum.
WRITE idate1 TO idate USING EDIT MASK '__/__/____'.
ls_line-typ = 'S'.
ls_line-info = idate.
APPEND ls_line TO i_listheader.
CLEAR ls_line.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = i_listheader
i_logo = 'LOGO'.
* I_END_OF_LIST_GRID =
ENDFORM. "TOP -
This report is required for claiming duty drawback from govenment
Please note the business process:
1. Material is imported and import duty is paid for the same.
2. If the sameĀ material is exported to any country, company can claim
drawback for the import duty paid
The logic for the report can be :
1.System will find all the export materials documents(Movement tyep 601)
between the date range given on selection screen and choose all export
data as per the layout.
2.System find all receipts documents for the same materials and previos
to the export document date and enter all data as per the layout.
can anyone of you can provide the logic for this report, consider only two movement types[export side] 601 & 602 and[import side] 101 & 102 .Drawback of duty will be applicable to those components that are imported for the purpose of making export products if I remember correctly how it was done in one of my projects. Your produciton orders typically track a product that is made and once a production unit is produced, component backflush happens. I think if you consider just the component backflush movements, that should be sufficient. However you will need some logic to track down the import component that is used in an export finished product. If you are importing a component for making a domestic product, I don't think you can claim drawback of duty.
These will be questions that your functional counterparts should be able to answer your questions regarding which movements are relevant and even within a relevant movement, how to further filter out those that are for domestic consumption. The logic we used was to go after the export deliveries (that means we exported some finished product), get that finished product's components from the BOM and look at the components that were imported during certain time frame and use that quantity with duty rates etc and calculate the duty drawback. It was a mini application within SAP that is done by creating a lot of Z tables, transactions and reports.
I hope this helps,
Srinivas -
Please send some Important Quetions from REPORTS
i have a interview in TCS
Please send some Important Quetions from REPORTS,SMARTFORMS,ALE/IDOC'sHi,
Here are the links
http://www.sap-img.com/abap/important-abap-faq.htm
For BDC:
http://myweb.dal.ca/hchinni/sap/bdc_home.htm
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/bdc&
http://www.sap-img.com/abap/learning-bdc-programming.htm
http://www.sapdevelopment.co.uk/bdc/bdchome.htm
http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm
http://help.sap.com/saphelp_47x200/helpdata/en/69/c250684ba111d189750000e8322d00/frameset.htm
http://www.sapbrain.com/TUTORIALS/TECHNICAL/BDC_tutorial.html
Check these link:
http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm
http://www.sap-img.com/abap/question-about-bdc-program.htm
http://www.itcserver.com/blog/2006/06/30/batch-input-vs-call-transaction/
http://www.planetsap.com/bdc_main_page.htm
call Transaction or session method ?
http://www.sapbrain.com/FAQs/TECHNICAL/SAP_ABAP_DATADICTIONARY_FAQ.html
http://www.****************/InterviewQ/interviewQ.htm
http://help.sap.com/saphelp_46c/helpdata/en/35/2cd77bd7705394e10000009b387c12/frameset.htm
Reports
http://www.sapgenie.com/abap/reports.htm
http://www.allsaplinks.com/material.html
http://www.sapdevelopment.co.uk/reporting/reportinghome.htm
http://www.sapfans.com/forums/viewtopic.php?t=58286
http://www.sapfans.com/forums/viewtopic.php?t=76490
http://www.sapfans.com/forums/viewtopic.php?t=20591
http://www.sapfans.com/forums/viewtopic.php?t=66305 - this one discusses which way should you use - ABAP Objects calls or simple function modules.
ALE/ IDOC
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
Check these step-by-step links
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/ccab6730-0501-0010-ee84-de050a6cc287
https://sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/8fd773b3-0301-0010-eabe-82149bcc292e
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/3c5d9ae3-0501-0010-0090-bdfb2d458985
for Smartforms material
http://www.sap-basis-abap.com/sapsf001.htm
http://www.sap-press.com/downloads/h955_preview.pdf
http://www.ossincorp.com/Black_Box/Black_Box_2.htm
http://www.sap-img.com/smartforms/sap-smart-forms.htm
http://www.sap-img.com/smartforms/smartform-tutorial.htm
http://www.sapgenie.com/abap/smartforms.htm
How to trace smartform
http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm
http://www.help.sap.com/bp_presmartformsv1500/DOCU/OVIEW_EN.PDF
http://www.sap-img.com/smartforms/smart-006.htm
http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
Re: Need FAQ's
check most imp link
http://www.sapbrain.com/ARTICLES/TECHNICAL/SMARTFORMS/smartforms.html
step by step good ex link is....
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
SAPScripts
http://esnips.com/doc/1ff9f8e8-0a4c-42a7-8819-6e3ff9e7ab44/sapscripts.pdf
http://esnips.com/doc/1e487f0c-8009-4ae1-9f9c-c07bd953dbfa/script-command.pdf
http://esnips.com/doc/64d4eccb-e09b-48e1-9be9-e2818d73f074/faqss.pdf
http://esnips.com/doc/cb7e39b4-3161-437f-bfc6-21e6a50e1b39/sscript.pdf
http://esnips.com/doc/fced4d36-ba52-4df9-ab35-b3d194830bbf/symbols-in-scripts.pdf
http://esnips.com/doc/b57e8989-ccf0-40d0-8992-8183be831030/sapscript-how-to-calculate-totals-and-subtotals.htm
SAP SCRIPT FIELDS
http://help.sap.com/saphelp_erp2005vp/helpdata/en/d1/8033ea454211d189710000e8322d00/content.htm
scripts easy material
http://www.allsaplinks.com/sap_script_made_easy.html
Debugging Document.
http://www.cba.nau.edu/haney-j/CIS497/Assignments/Debugging.doc
http://help.sap.com/saphelp_47x200/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
http://www.cba.nau.edu/haney-j/CIS497/Assignments/Debugging.doc
http://help.sap.com/saphelp_erp2005/helpdata/en/b3/d322540c3beb4ba53795784eebb680/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/84/1f624f4505144199e3d570cf7a9225/frameset.htm
http://help.sap.com/saphelp_bw30b/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/b3/d322540c3beb4ba53795784eebb680/frameset.htm
BAPI
http://help.sap.com/saphelp_46c/helpdata/en/9b/417f07ee2211d1ad14080009b0fb56/frameset.htm
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
Checkout !!
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://techrepublic.com.com/5100-6329-1051160.html#
http://www.sap-img.com/bapi.htm
http://www.sap-img.com/abap/bapi-conventions.htm
http://www.sappoint.com/abap/bapiintro.pdf
http://www.sapgenie.com/abap/bapi/example.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCFESDE8/BCFESDE8.pdf
List of all BAPIs
http://www.planetsap.com/LIST_ALL_BAPIs.htm
http://www.sappoint.com/abap/bapiintro.pdf
http://www.sappoint.com/abap/bapiprg.pdf
http://www.sappoint.com/abap/bapiactx.pdf
http://www.sappoint.com/abap/bapilst.pdf
http://www.sappoint.com/abap/bapiexer.pdf
http://service.sap.com/ale
http://service.sap.com/bapi
http://www.geocities.com/mpioud/Abap_programs.html
http://www.sapdevelopment.co.uk/reporting/reportinghome.htm
Simple ALV report
http://www.sapgenie.com/abap/controls/alvgrid.htm
http://wiki.ittoolbox.com/index.php/Code:Ultimate_ALV_table_toolbox
ALV
1. Please give me general info on ALV.
http://www.sapfans.com/forums/viewtopic.php?t=58286
http://www.sapfans.com/forums/viewtopic.php?t=76490
http://www.sapfans.com/forums/viewtopic.php?t=20591
http://www.sapfans.com/forums/viewtopic.php?t=66305 - this one discusses which way should you use - ABAP Objects calls or simple function modules.
2. How do I program double click in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=11601
http://www.sapfans.com/forums/viewtopic.php?t=23010
3. How do I add subtotals (I have problem to add them)...
http://www.sapfans.com/forums/viewtopic.php?t=20386
http://www.sapfans.com/forums/viewtopic.php?t=85191
http://www.sapfans.com/forums/viewtopic.php?t=88401
http://www.sapfans.com/forums/viewtopic.php?t=17335
4. How to add list heading like top-of-page in ABAP lists?
http://www.sapfans.com/forums/viewtopic.php?t=58775
http://www.sapfans.com/forums/viewtopic.php?t=60550
http://www.sapfans.com/forums/viewtopic.php?t=16629
5. How to print page number / total number of pages X/XX in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=29597 (no direct solution)
6. ALV printing problems. The favourite is: The first page shows the number of records selected but I don't need this.
http://www.sapfans.com/forums/viewtopic.php?t=64320
http://www.sapfans.com/forums/viewtopic.php?t=44477
7. How can I set the cell color in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=52107
8. How do I print a logo/graphics in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=81149
http://www.sapfans.com/forums/viewtopic.php?t=35498
http://www.sapfans.com/forums/viewtopic.php?t=5013
9. How do I create and use input-enabled fields in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=84933
http://www.sapfans.com/forums/viewtopic.php?t=69878
10. How can I use ALV for reports that are going to be run in background?
http://www.sapfans.com/forums/viewtopic.php?t=83243
http://www.sapfans.com/forums/viewtopic.php?t=19224
11. How can I display an icon in ALV? (Common requirement is traffic light icon).
http://www.sapfans.com/forums/viewtopic.php?t=79424
http://www.sapfans.com/forums/viewtopic.php?t=24512
12. How can I display a checkbox in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=88376
http://www.sapfans.com/forums/viewtopic.php?t=40968
http://www.sapfans.com/forums/viewtopic.php?t=6919
Go thru these programs they may help u to try on some hands on
ALV Demo program
BCALV_DEMO_HTML
BCALV_FULLSCREEN_DEMO ALV Demo: Fullscreen Mode
BCALV_FULLSCREEN_DEMO_CLASSIC ALV demo: Fullscreen mode
BCALV_GRID_DEMO Simple ALV Control Call Demo Program
BCALV_TREE_DEMO Demo for ALV tree control
BCALV_TREE_SIMPLE_DEMO
BC_ALV_DEMO_HTML_D0100
Remote Function Call:
RFC is an SAP interface protocol. Based on CPI-C, it considerably simplifies the programming of communication processes between systems.
RFCs enable you to call and execute predefined functions in a remote system - or even in the same system.
RFCs manage the communication process, parameter transfer and error handling.
http://help.sap.com/saphelp_47x200/helpdata/en/22/042860488911d189490000e829fbbd/frameset.htm.
ALE/ IDOC
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
Refer this
http://www.sapbrain.com/FAQs/TECHNICAL/SAP_ABAP_DATADICTIONARY_FAQ.html
http://www.****************/InterviewQ/interviewQ.htm
http://help.sap.com/saphelp_46c/helpdata/en/35/2cd77bd7705394e10000009b387c12/frameset.htm
http://www.techinterviews.com/?p=198
http://www.techinterviews.com/?p=326
http://www.sap-img.com/abap/answers-to-some-abap-interview-questions.htm
http://www.sap-img.com/abap/more-than-100-abap-interview-faqs.htm
http://www.geekinterview.com/Interview-Questions/SAP-R-3/ABAP
http://sap.ittoolbox.com/documents/popular-q-and-a/abap-sample-interview-questions-3240
http://www.sap-img.com/abap/abap-interview-question.htm
http://www.allinterview.com/Interview-Questions/ABAP.html
Reward points for useful Answers
Regards
Sudheer -
Need to develop this report plezzzz help
the requirement says
When a user submits an ID they have to choose who sold the product from the sold by field.This has to be chosen correctly otherwise there will be issues in sales and commission process.I need to develop a report to detect immediately when an Id is created which seems to be suspect.A suspect ID is one in which a salesperson was chosen on a customer who is not assigned to that sales person territory
for example: if danny is in Kathy territory is assigned to a customer in Texas which is Larry territory.
any suggestions will be helpful for me...
Edited by: user13001889 on Jun 6, 2011 4:43 PM
Edited by: user13001889 on Jun 6, 2011 4:44 PMYou ask for help, yet all you give is conceptual data. How do you expect help on writing the report?
Q) What defines "territory"? Is it a flag? Zip code? City?
Here is an answer based on a lot of assumptions:
I would have to assume that territory is defined by something like city, state, or zip code. If so, you could start with this:
When a customer submits an ID, along with who he/she selects as a salesperson -- I assume this is a drop down box to eliminate multiple entries of the same person due to variations in spelling -- thep person's address, city, state and zip are included as well. Let's assume that territory is defined by zip code. With the salesperson's name and the zip of the customer captured, you have the basis for comparison.
Based on the table of all your salespeople and their territory (zip code in my assumption), you can create a report that contains a concatenated field of salesperson||zip code. This will produce a report with all possible combinations of salesperson and territory. This report will be your sub-query.
Now you have your main query based on the customer activity table and you create a concatenated field of salesperson (chosen-by-customer)||zip code (of the customer). You will put a filter on this concatenated column and have it based on the results of another request (your sub-query) with the operand "not equal to/not in."
If any record in the main query does not match an entry from the sub-query, that record will display. It will be a report that contains customers who chose a sales person who doesn't have that territory.
That's how you build your report. -
# This file is in the UTF-8 encoding
[Strings]
# LOCALIZATION NOTE (isRTL):
# Leave this entry empty unless your language requires right-to-left layout,
# for example like Arabic, Hebrew, Persian. If your language needs RTL, please
# use the untranslated English word "yes" as value
isRTL=
CrashReporterTitle=Crash Reporter
# LOCALIZATION NOTE (CrashReporterVendorTitle): %s is replaced with the vendor name. (i.e. "Mozilla")
CrashReporterVendorTitle=%s Crash Reporter
# LOCALIZATION NOTE (CrashReporterErrorText): %s is replaced with another string containing detailed information.
CrashReporterErrorText=The application had a problem and crashed.\n\nUnfortunately the crash reporter is unable to submit a report for this crash.\n\nDetails: %s
# LOCALIZATION NOTE (CrashReporterProductErrorText2): The first %s is replaced with the product name (i.e. "Firefox"), the second is replaced with another string containing detailed information. These two substitutions can not be reordered!
CrashReporterProductErrorText2=%s had a problem and crashed.\n\nUnfortunately the crash reporter is unable to submit a crash report.\n\nDetails: %s
CrashReporterSorry=We're Sorry
# LOCALIZATION NOTE (CrashReporterDescriptionText2): The %s is replaced with the product name.
CrashReporterDescriptionText2=%s had a problem and crashed.\n\nTo help us diagnose and fix the problem, you can send us a crash report.
CrashReporterDefault=This application is run after a crash to report the problem to the application vendor. It should not be run directly.
Details=Details…
ViewReportTitle=Report Contents
CommentGrayText=Add a comment (comments are publicly visible)
ExtraReportInfo=This report also contains technical information about the state of the application when it crashed.
# LOCALIZATION NOTE (CheckSendReport): The %s is replaced with the vendor name.
CheckSendReport=Tell %s about this crash so they can fix it
CheckIncludeURL=Include the address of the page I was on
CheckSendEmail=Email me when more information is available
EmailGrayText=Enter your email address here
ReportPreSubmit2=Your crash report will be submitted before you quit or restart.
ReportDuringSubmit2=Submitting your report…
ReportSubmitSuccess=Report submitted successfully!
ReportSubmitFailed=There was a problem submitting your report.
ReportResubmit=Resending reports that previously failed to send…
# LOCALIZATION NOTE (Quit2): The %s is replaced with the product name.
Quit2=Quit %s
# LOCALIZATION NOTE (Restart): The %s is replaced with the product name.
Restart=Restart %s
Ok=OK
Close=Close
# LOCALIZATION NOTE (CrashID): The %s is replaced with the Crash ID from the server, which is a string like abc12345-6789-0abc-def1-23456abcdef1
CrashID=Crash ID: %s
# LOCALIZATION NOTE (CrashDetailsURL): The %s is replaced with a URL that the user can visit to view the crash details.
CrashDetailsURL=You can view details of this crash at %s
ErrorBadArguments=The application passed an invalid argument.
ErrorExtraFileExists=The application didn't leave an application data file.
ErrorExtraFileRead=Couldn't read the application data file.
ErrorExtraFileMove=Couldn't move application data file.
ErrorDumpFileExists=The application did not leave a crash dump file.
ErrorDumpFileMove=Couldn't move crash dump.
ErrorNoProductName=The application did not identify itself.
ErrorNoServerURL=The application did not specify a crash reporting server.
ErrorNoSettingsPath=Couldn't find the crash reporter's settings.
ErrorCreateDumpDir=Couldn't create pending dump directory.
# LOCALIZATION NOTE (ErrorEndOfLife): The %s is replaced with the product name.
ErrorEndOfLife=The version of %s you are using is no longer supported. Crash reports are no longer being accepted for this version. Please consider upgrading to a supported version.I think you may have pasted the wrong thing into the Description.
To try and resubmit a pending report (for example if you lost your internet connection):
#Go to about:crashes in the location bar
#Click the latest report link to resubmit it
If there isn't a pending crash report listed, I'm afraid you may be out of luck for that crash report. -
U0095 Vendor performance report this report gives performance of supplier to se
Vendor performance report this report gives performance of supplier to send an order to customer
Kiran,
The functionality you are asking sounds like standard functionality. Doesn't make sense to custom develop the same.
Make sure you search and confirm that standard reports are NOT available for the same.
Regards,
Ravi
Note : please mark the helpful answers
Maybe you are looking for
-
CD Eject Doesn't work with latest upgarde to OS 10.4.9
Is anyone else having this problem? I have two hard drives on my Mac, and for the longest time was not able to eject a CD using the eject button on the keyboard, or from the menu. Today I booted from the OS on the other hard drive (10.3.7, I think) a
-
Using "comment" as xml tag in XSLT
Comment is apparently reserved word in XSLT. Is there a way to put in a tag set in the destination xml document using XSL, something like this: <comment><FreeFormText>This is a test</FreeFormText></comment>. When I try to do this all I get in the des
-
Airport Express + Multiple Computers
I just have a really simple question I can't seem to find the answer to on apple.com. If I have a Time Capsule with an Airport Express connected to it connected to a stereo through an optical cable, can two computers connect to the airport express th
-
HT4796 Migration Assistant on my Windows XP PC!
New Macbook Pro, needing to migrate all my files from my old Windows XP PC laptop. Migration Assistant on my PC has finally loaded after copious updates, but won't run as the PC believes that Outlook Express is still running, when it's not! Restartin
-
Data Rules, error and shadow tables - what is best?
Hi there I'm new to OWB and have to create cleansing mappings whihc will take data from a staging table and put it to a cleansed table. We wish rows which fail the cleansing process to automatically be logged to an error table which is a identical to