Hi pls respond my code its urgent
hi,
my prblm is in this program i used bapi function module for upload excel data.
bapi_incominginvoice_park.
in my output park number showing increasing for each item.
so i need parknumber it should be same for all items.
i am sending my code pls check this.
*& Report ZBAPI_MIRO
&& Developed By : ESWAR
*& Created Date : 29.10.2007
*& Requested By : GANESH(MM)
*& SAP Area : MM
*& Output : Excel format,Using BDC for Tcode MIRO
REPORT ZBAPI_MIRO.
DATA: BEGIN OF INTERN OCCURS 0.
INCLUDE STRUCTURE ALSMEX_TABLINE.
DATA: END OF INTERN.
DATA : IT_INTERN LIKE INTERN OCCURS 0 WITH HEADER LINE.
No of columns
DATA: BEGIN OF DATA_TAB OCCURS 0,
VALUE_0001(10), "DOC.TYPE
VALUE_0002(10), "DOC DATE
VALUE_0003(10), " PSTNG.DATE
VALUE_0003(10), " GROSS_AMNT
VALUE_0004(10), " REF_DOC_NO
VALUE_0005(10), "BLINE_DATE
VALUE_0006(10), "HEADER_TXT
VALUE_0007(10), "INVOICE_DOC_ITEM
VALUE_0008(10), "PO_NUMBER
VALUE_0009(10), " PO_ITEM
VALUE_0010(10), "TAX_CODE
VALUE_0011(11), "ITEM_AMOUNT
VALUE_0012(10), "SHEET_NO
VALUE_0013(10), "ITEM_TEXT
VALUE_0014(10), "SHEET_ITEM
END OF DATA_TAB.
DATA : BEGIN OF IT_DATA OCCURS 0,
invoice_ind like BAPI_INCINV_CREATE_HEADER-invoice_ind,
doc_type like BAPI_INCINV_CREATE_HEADER-doc_type,
doc_date like BAPI_INCINV_CREATE_HEADER-doc_date,
pstng_date like BAPI_INCINV_CREATE_HEADER-pstng_date,
comp_code like BAPI_INCINV_CREATE_HEADER-comp_code,
currency like BAPI_INCINV_CREATE_HEADER-currency,
gross_amount like BAPI_INCINV_CREATE_HEADER-gross_amount,
calc_tax_ind like BAPI_INCINV_CREATE_HEADER-calc_tax_ind,
REF_DOC_NO LIKE BAPI_INCINV_CREATE_HEADER-REF_DOC_NO,
bline_date like BAPI_INCINV_CREATE_HEADER-bline_date,
header_txt like BAPI_INCINV_CREATE_HEADER-header_txt,
invoice_doc_item like BAPI_INCINV_CREATE_ITEM-invoice_doc_item,
po_number like BAPI_INCINV_CREATE_ITEM-po_number,
po_item like BAPI_INCINV_CREATE_ITEM-po_item,
tax_code like BAPI_INCINV_CREATE_ITEM-tax_code,
item_amount like BAPI_INCINV_CREATE_ITEM-ITEM_AMOUNT,
sheet_no like BAPI_INCINV_CREATE_ITEM-sheet_no,
item_text like BAPI_INCINV_CREATE_ITEM-item_text,
sheet_item like BAPI_INCINV_CREATE_ITEM-sheet_item,
END OF IT_DATA.
DATA : BEGIN OF IT_CHAR OCCURS 0,
IND(6) TYPE N, ""Index for comparison
CHARN LIKE RCTMS-MNAME, "CHAR NAME
CHARV LIKE RCTMS-MWERT, "CHAR VALUE
END OF IT_CHAR.
DATA: BEGIN OF it_msg OCCURS 0,
po_number LIKE BAPI_INCINV_CREATE_ITEM-po_number,
po_item like BAPI_INCINV_CREATE_ITEM-po_item,
message(20),
message1(90),
mblnr TYPE mkpf-mblnr,
END OF it_msg.
DATA : W_DATA LIKE LINE OF IT_DATA.
DATA : W_CHAR LIKE LINE OF IT_CHAR.
DATA: T_EXCELFILE TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
FIELD-SYMBOLS : <L_FS> .
DATA : W_INTERN LIKE LINE OF INTERN,
W_INTERN1 LIKE LINE OF IT_INTERN,
W_DATA_TAB LIKE LINE OF DATA_TAB.
DATA: TIND(4) TYPE N.
DATA: ZWFELD(19),ZWFELD1(19).
FIELD-SYMBOLS: <FS1>,<FS2>.
DATA : G_MODE(1),G_UPDATE(1).
DATA : G_FLG(1).
DATA : TOT_REC(6) TYPE N,
DUP_REC(6) TYPE N,
UPL_REC(6) TYPE N.
DATA: WA_DATA LIKE LINE OF IT_DATA,
WA_DATA1 LIKE WA_DATA.
DATA:WA_HEADER LIKE BAPI_INCINV_CREATE_HEADER,
WA_INVOICEDOCNUMBER TYPE BAPI_INCINV_FLD-INV_DOC_NO,
IT_ITEM LIKE BAPI_INCINV_CREATE_ITEM OCCURS 0 WITH HEADER LINE,
IT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.
DATA:BEGIN OF IT_MBLNR OCCURS 0,
MBLNR LIKE MKPF-MBLNR,
MJAHR LIKE MKPF-MJAHR,
END OF IT_MBLNR.
*& Selection screen
SELECTION-SCREEN BEGIN OF BLOCK BLK WITH FRAME TITLE TEXT-001.
PARAMETERS: P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN END OF BLOCK BLK.
*& AT SELECTION-SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
PERFORM GET_FILE.
*& Start of selection
START-OF-SELECTION.
PERFORM GET_BDC_DATA.
PERFORM PROCESS_BDC_DATA.
PERFORM BDC_UPLOAD.
PERFORM display_log.
*& Form GET_FILE
FORM GET_FILE .
*F4-HELP FILE
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_FILE.
ENDFORM. " GET_FILE
FORM GET_BDC_DATA .
DATA : WRK_FLG(1).
DATA : GIDX LIKE SY-TABIX.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME = P_FILE
I_BEGIN_COL = '1'
I_BEGIN_ROW = '1'
I_END_COL = '250'
I_END_ROW = '50000'
TABLES
INTERN = INTERN
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
WRITE:/ 'Upload Error ', SY-SUBRC.
ELSE.
SORT INTERN BY ROW COL.
LOOP AT INTERN.
TIND = INTERN-COL.
CONCATENATE 'DATA_TAB-VALUE_' TIND INTO ZWFELD.
ASSIGN (ZWFELD) TO <FS1>.
<FS1> = INTERN-VALUE.
AT END OF ROW.
APPEND DATA_TAB.
CLEAR:IT_CHAR,DATA_TAB.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " GET_BDC_DATA
*& Form PROCESS_BDC_DATA
FORM PROCESS_BDC_DATA .
DATA : WRK_IND(6) TYPE N.
DATA : WRK_ROW TYPE I,
GIDX LIKE SY-TABIX.
IF NOT DATA_TAB[] IS INITIAL.
LOOP AT DATA_TAB INTO W_DATA_TAB.
WRK_ROW = SY-TABIX.
IT_DATA-DOC_TYPE = W_DATA_TAB-VALUE_0001.
IT_DATA-DOC_DATE = W_DATA_TAB-VALUE_0002.
IT_DATA-PSTNG_DATE = W_DATA_TAB-VALUE_0003.
it_data-ref_doc_no = w_data_tab-value_0004.
IT_DATA-GROSS_AMOUNT = W_DATA_TAB-VALUE_0004.
IT_DATA-BLINE_DATE = W_DATA_TAB-VALUE_0005.
IT_DATA-HEADER_TXT = W_DATA_TAB-VALUE_0006.
IT_DATA-INVOICE_DOC_ITEM = W_DATA_TAB-VALUE_0007.
IT_DATA-PO_NUMBER = W_DATA_TAB-VALUE_0008.
IT_DATA-PO_ITEM = W_DATA_TAB-VALUE_0009.
IT_DATA-TAX_CODE = W_DATA_TAB-VALUE_0010.
IT_DATA-ITEM_AMOUNT = W_DATA_TAB-VALUE_0011.
IT_DATA-SHEET_NO = W_DATA_TAB-VALUE_0012.
IT_DATA-ITEM_TEXT = W_DATA_TAB-VALUE_0013.
IT_DATA-SHEET_ITEM = W_DATA_TAB-VALUE_0014.
APPEND IT_DATA.
ENDLOOP.
ENDIF.
ENDFORM.
FORM BDC_UPLOAD.
DATA:LW_DATE(10).
DELETE ADJACENT DUPLICATES FROM it_data.
LOOP AT IT_DATA INTO WA_DATA1.
WA_DATA = WA_DATA1.
While program finds the header record, post the previous entries
if WA_data-DOC_TYPE NE ' '
AND wa_data-doc_date NE ' '
AND wa_data-pstng_date NE ' '
AND WA_data-REF_DOC_NO NE ' '
AND WA_data-BLINE_DATE NE ' '
AND WA_data-HEADER_TXT NE ' ' .
WA_HEADER-INVOICE_IND = 'X'.
WA_HEADER-COMP_CODE = 'TSKY'.
WA_HEADER-CURRENCY = 'INR'.
WA_HEADER-CALC_TAX_IND = 'X'.
IF sy-tabix NE 1.
update
PERFORM f0301_exe_bapi TABLES it_item USING wa_header.
REFRESH it_item.
CLEAR: it_item, wa_header.
ENDIF.
*CONCATENATE WA_DATA-PSTNG_DATE+4(4)
WA_DATA-PSTNG_DATE+2(2)
WA_DATA-PSTNG_DATE+0(2) INTO LW_DATE.
WA_HEADER-DOC_DATE = LW_DATE.
WA_HEADER-PSTNG_DATE = LW_DATE.
wa_header-doc_type = wa_data-doc_type.
wa_header-doc_date = WA_DATA-DOC_DATE.
wa_header-pstng_date = WA_DATA-PSTNG_DATE.
WA_HEADER-REF_DOC_NO = WA_DATA-REF_DOC_NO.
WA_HEADER-BLINE_DATE = WA_DATA-BLINE_DATE.
WA_HEADER-HEADER_TXT = WA_DATA-HEADER_TXT.
ENDIF.
IT_item-INVOICE_DOC_ITEM = WA_DATA-INVOICE_DOC_ITEM.
IT_item-PO_NUMBER = WA_DATA-PO_NUMBER.
IT_item-PO_ITEM = WA_DATA-PO_ITEM.
IT_item-TAX_CODE = WA_DATA-TAX_CODE.
IT_item-ITEM_AMOUNT = WA_DATA-ITEM_AMOUNT.
IT_item-SHEET_NO = WA_DATA-SHEET_NO.
IT_item-ITEM_TEXT = WA_DATA-ITEM_TEXT.
IT_item-SHEET_ITEM = WA_DATA-SHEET_ITEM.
APPEND it_item.
CLEAR it_item.
ENDLOOP.
PERFORM f0301_exe_bapi TABLES it_item USING wa_header.
ENDFORM. " f0200_UPDATE
FORM f0301_exe_bapi TABLES p_it_item STRUCTURE it_item
USING p_wa_header.
CALL FUNCTION 'BAPI_INCOMINGINVOICE_PARK'
EXPORTING
headerdata = wa_header
ADDRESSDATA =
IMPORTING
INVOICEDOCNUMBER = WA_INVOICEDOCNUMBER
FISCALYEAR = lc_gjahr
tables
itemdata = it_item
ACCOUNTINGDATA =
GLACCOUNTDATA =
MATERIALDATA =
TAXDATA =
WITHTAXDATA =
VENDORITEMSPLITDATA =
return = it_return.
READ TABLE it_return INDEX 1.
READ TABLE it_item INDEX 1.
IF it_return-type EQ 'E'.
MOVE it_item-po_number TO it_msg-po_number.
move it_item-po_item to it_msg-po_itm.
MOVE 'Discrepancy in PO' TO it_msg-message.
MOVE it_return-message to it_msg-message1.
APPEND it_msg.
CLEAR it_msg.
clear it_return.
ELSE.
MOVE it_item-po_number TO it_msg-po_number.
move it_item-po_item to it_msg-po_item.
MOVE 'Successfully parked' TO it_msg-message.
MOVE WA_INVOICEDOCNUMBER TO it_msg-mblnr.
APPEND it_msg.
CLEAR: it_msg, WA_INVOICEDOCNUMBER.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
ENDIF.
ENDFORM. "f0301_exe_bapi
FORM display_log .
Display the log
WRITE : '10 Po_number', 25 'Message', 55 'Error message' ,135 'ParkedDocumentNumber'.
ULINE.
LOOP AT it_msg.
WRITE : /10 it_msg-po_number,
25 it_msg-message,
55 it_msg-message1,
135 it_msg-mblnr.
ULINE.
ENDLOOP.
ENDFORM. " display_log
hi,
my prblm is in this program i used bapi function module for upload excel data.
bapi_incominginvoice_park.
in my output park number showing increasing for each item.
so i need parknumber it should be same for all items.
i am sending my code pls check this.
*& Report ZBAPI_MIRO
&& Developed By : ESWAR
*& Created Date : 29.10.2007
*& Requested By : GANESH(MM)
*& SAP Area : MM
*& Output : Excel format,Using BDC for Tcode MIRO
REPORT ZBAPI_MIRO.
DATA: BEGIN OF INTERN OCCURS 0.
INCLUDE STRUCTURE ALSMEX_TABLINE.
DATA: END OF INTERN.
DATA : IT_INTERN LIKE INTERN OCCURS 0 WITH HEADER LINE.
No of columns
DATA: BEGIN OF DATA_TAB OCCURS 0,
VALUE_0001(10), "DOC.TYPE
VALUE_0002(10), "DOC DATE
VALUE_0003(10), " PSTNG.DATE
VALUE_0003(10), " GROSS_AMNT
VALUE_0004(10), " REF_DOC_NO
VALUE_0005(10), "BLINE_DATE
VALUE_0006(10), "HEADER_TXT
VALUE_0007(10), "INVOICE_DOC_ITEM
VALUE_0008(10), "PO_NUMBER
VALUE_0009(10), " PO_ITEM
VALUE_0010(10), "TAX_CODE
VALUE_0011(11), "ITEM_AMOUNT
VALUE_0012(10), "SHEET_NO
VALUE_0013(10), "ITEM_TEXT
VALUE_0014(10), "SHEET_ITEM
END OF DATA_TAB.
DATA : BEGIN OF IT_DATA OCCURS 0,
invoice_ind like BAPI_INCINV_CREATE_HEADER-invoice_ind,
doc_type like BAPI_INCINV_CREATE_HEADER-doc_type,
doc_date like BAPI_INCINV_CREATE_HEADER-doc_date,
pstng_date like BAPI_INCINV_CREATE_HEADER-pstng_date,
comp_code like BAPI_INCINV_CREATE_HEADER-comp_code,
currency like BAPI_INCINV_CREATE_HEADER-currency,
gross_amount like BAPI_INCINV_CREATE_HEADER-gross_amount,
calc_tax_ind like BAPI_INCINV_CREATE_HEADER-calc_tax_ind,
REF_DOC_NO LIKE BAPI_INCINV_CREATE_HEADER-REF_DOC_NO,
bline_date like BAPI_INCINV_CREATE_HEADER-bline_date,
header_txt like BAPI_INCINV_CREATE_HEADER-header_txt,
invoice_doc_item like BAPI_INCINV_CREATE_ITEM-invoice_doc_item,
po_number like BAPI_INCINV_CREATE_ITEM-po_number,
po_item like BAPI_INCINV_CREATE_ITEM-po_item,
tax_code like BAPI_INCINV_CREATE_ITEM-tax_code,
item_amount like BAPI_INCINV_CREATE_ITEM-ITEM_AMOUNT,
sheet_no like BAPI_INCINV_CREATE_ITEM-sheet_no,
item_text like BAPI_INCINV_CREATE_ITEM-item_text,
sheet_item like BAPI_INCINV_CREATE_ITEM-sheet_item,
END OF IT_DATA.
DATA : BEGIN OF IT_CHAR OCCURS 0,
IND(6) TYPE N, ""Index for comparison
CHARN LIKE RCTMS-MNAME, "CHAR NAME
CHARV LIKE RCTMS-MWERT, "CHAR VALUE
END OF IT_CHAR.
DATA: BEGIN OF it_msg OCCURS 0,
po_number LIKE BAPI_INCINV_CREATE_ITEM-po_number,
po_item like BAPI_INCINV_CREATE_ITEM-po_item,
message(20),
message1(90),
mblnr TYPE mkpf-mblnr,
END OF it_msg.
DATA : W_DATA LIKE LINE OF IT_DATA.
DATA : W_CHAR LIKE LINE OF IT_CHAR.
DATA: T_EXCELFILE TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
FIELD-SYMBOLS : <L_FS> .
DATA : W_INTERN LIKE LINE OF INTERN,
W_INTERN1 LIKE LINE OF IT_INTERN,
W_DATA_TAB LIKE LINE OF DATA_TAB.
DATA: TIND(4) TYPE N.
DATA: ZWFELD(19),ZWFELD1(19).
FIELD-SYMBOLS: <FS1>,<FS2>.
DATA : G_MODE(1),G_UPDATE(1).
DATA : G_FLG(1).
DATA : TOT_REC(6) TYPE N,
DUP_REC(6) TYPE N,
UPL_REC(6) TYPE N.
DATA: WA_DATA LIKE LINE OF IT_DATA,
WA_DATA1 LIKE WA_DATA.
DATA:WA_HEADER LIKE BAPI_INCINV_CREATE_HEADER,
WA_INVOICEDOCNUMBER TYPE BAPI_INCINV_FLD-INV_DOC_NO,
IT_ITEM LIKE BAPI_INCINV_CREATE_ITEM OCCURS 0 WITH HEADER LINE,
IT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.
DATA:BEGIN OF IT_MBLNR OCCURS 0,
MBLNR LIKE MKPF-MBLNR,
MJAHR LIKE MKPF-MJAHR,
END OF IT_MBLNR.
*& Selection screen
SELECTION-SCREEN BEGIN OF BLOCK BLK WITH FRAME TITLE TEXT-001.
PARAMETERS: P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN END OF BLOCK BLK.
*& AT SELECTION-SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
PERFORM GET_FILE.
*& Start of selection
START-OF-SELECTION.
PERFORM GET_BDC_DATA.
PERFORM PROCESS_BDC_DATA.
PERFORM BDC_UPLOAD.
PERFORM display_log.
*& Form GET_FILE
FORM GET_FILE .
*F4-HELP FILE
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_FILE.
ENDFORM. " GET_FILE
FORM GET_BDC_DATA .
DATA : WRK_FLG(1).
DATA : GIDX LIKE SY-TABIX.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME = P_FILE
I_BEGIN_COL = '1'
I_BEGIN_ROW = '1'
I_END_COL = '250'
I_END_ROW = '50000'
TABLES
INTERN = INTERN
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
WRITE:/ 'Upload Error ', SY-SUBRC.
ELSE.
SORT INTERN BY ROW COL.
LOOP AT INTERN.
TIND = INTERN-COL.
CONCATENATE 'DATA_TAB-VALUE_' TIND INTO ZWFELD.
ASSIGN (ZWFELD) TO <FS1>.
<FS1> = INTERN-VALUE.
AT END OF ROW.
APPEND DATA_TAB.
CLEAR:IT_CHAR,DATA_TAB.
ENDAT.
ENDLOOP.
ENDIF.
ENDFORM. " GET_BDC_DATA
*& Form PROCESS_BDC_DATA
FORM PROCESS_BDC_DATA .
DATA : WRK_IND(6) TYPE N.
DATA : WRK_ROW TYPE I,
GIDX LIKE SY-TABIX.
IF NOT DATA_TAB[] IS INITIAL.
LOOP AT DATA_TAB INTO W_DATA_TAB.
WRK_ROW = SY-TABIX.
IT_DATA-DOC_TYPE = W_DATA_TAB-VALUE_0001.
IT_DATA-DOC_DATE = W_DATA_TAB-VALUE_0002.
IT_DATA-PSTNG_DATE = W_DATA_TAB-VALUE_0003.
it_data-ref_doc_no = w_data_tab-value_0004.
IT_DATA-GROSS_AMOUNT = W_DATA_TAB-VALUE_0004.
IT_DATA-BLINE_DATE = W_DATA_TAB-VALUE_0005.
IT_DATA-HEADER_TXT = W_DATA_TAB-VALUE_0006.
IT_DATA-INVOICE_DOC_ITEM = W_DATA_TAB-VALUE_0007.
IT_DATA-PO_NUMBER = W_DATA_TAB-VALUE_0008.
IT_DATA-PO_ITEM = W_DATA_TAB-VALUE_0009.
IT_DATA-TAX_CODE = W_DATA_TAB-VALUE_0010.
IT_DATA-ITEM_AMOUNT = W_DATA_TAB-VALUE_0011.
IT_DATA-SHEET_NO = W_DATA_TAB-VALUE_0012.
IT_DATA-ITEM_TEXT = W_DATA_TAB-VALUE_0013.
IT_DATA-SHEET_ITEM = W_DATA_TAB-VALUE_0014.
APPEND IT_DATA.
ENDLOOP.
ENDIF.
ENDFORM.
FORM BDC_UPLOAD.
DATA:LW_DATE(10).
DELETE ADJACENT DUPLICATES FROM it_data.
LOOP AT IT_DATA INTO WA_DATA1.
WA_DATA = WA_DATA1.
While program finds the header record, post the previous entries
if WA_data-DOC_TYPE NE ' '
AND wa_data-doc_date NE ' '
AND wa_data-pstng_date NE ' '
AND WA_data-REF_DOC_NO NE ' '
AND WA_data-BLINE_DATE NE ' '
AND WA_data-HEADER_TXT NE ' ' .
WA_HEADER-INVOICE_IND = 'X'.
WA_HEADER-COMP_CODE = 'TSKY'.
WA_HEADER-CURRENCY = 'INR'.
WA_HEADER-CALC_TAX_IND = 'X'.
IF sy-tabix NE 1.
update
PERFORM f0301_exe_bapi TABLES it_item USING wa_header.
REFRESH it_item.
CLEAR: it_item, wa_header.
ENDIF.
*CONCATENATE WA_DATA-PSTNG_DATE+4(4)
WA_DATA-PSTNG_DATE+2(2)
WA_DATA-PSTNG_DATE+0(2) INTO LW_DATE.
WA_HEADER-DOC_DATE = LW_DATE.
WA_HEADER-PSTNG_DATE = LW_DATE.
wa_header-doc_type = wa_data-doc_type.
wa_header-doc_date = WA_DATA-DOC_DATE.
wa_header-pstng_date = WA_DATA-PSTNG_DATE.
WA_HEADER-REF_DOC_NO = WA_DATA-REF_DOC_NO.
WA_HEADER-BLINE_DATE = WA_DATA-BLINE_DATE.
WA_HEADER-HEADER_TXT = WA_DATA-HEADER_TXT.
ENDIF.
IT_item-INVOICE_DOC_ITEM = WA_DATA-INVOICE_DOC_ITEM.
IT_item-PO_NUMBER = WA_DATA-PO_NUMBER.
IT_item-PO_ITEM = WA_DATA-PO_ITEM.
IT_item-TAX_CODE = WA_DATA-TAX_CODE.
IT_item-ITEM_AMOUNT = WA_DATA-ITEM_AMOUNT.
IT_item-SHEET_NO = WA_DATA-SHEET_NO.
IT_item-ITEM_TEXT = WA_DATA-ITEM_TEXT.
IT_item-SHEET_ITEM = WA_DATA-SHEET_ITEM.
APPEND it_item.
CLEAR it_item.
ENDLOOP.
PERFORM f0301_exe_bapi TABLES it_item USING wa_header.
ENDFORM. " f0200_UPDATE
FORM f0301_exe_bapi TABLES p_it_item STRUCTURE it_item
USING p_wa_header.
CALL FUNCTION 'BAPI_INCOMINGINVOICE_PARK'
EXPORTING
headerdata = wa_header
ADDRESSDATA =
IMPORTING
INVOICEDOCNUMBER = WA_INVOICEDOCNUMBER
FISCALYEAR = lc_gjahr
tables
itemdata = it_item
ACCOUNTINGDATA =
GLACCOUNTDATA =
MATERIALDATA =
TAXDATA =
WITHTAXDATA =
VENDORITEMSPLITDATA =
return = it_return.
READ TABLE it_return INDEX 1.
READ TABLE it_item INDEX 1.
IF it_return-type EQ 'E'.
MOVE it_item-po_number TO it_msg-po_number.
move it_item-po_item to it_msg-po_itm.
MOVE 'Discrepancy in PO' TO it_msg-message.
MOVE it_return-message to it_msg-message1.
APPEND it_msg.
CLEAR it_msg.
clear it_return.
ELSE.
MOVE it_item-po_number TO it_msg-po_number.
move it_item-po_item to it_msg-po_item.
MOVE 'Successfully parked' TO it_msg-message.
MOVE WA_INVOICEDOCNUMBER TO it_msg-mblnr.
APPEND it_msg.
CLEAR: it_msg, WA_INVOICEDOCNUMBER.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
ENDIF.
ENDFORM. "f0301_exe_bapi
FORM display_log .
Display the log
WRITE : '10 Po_number', 25 'Message', 55 'Error message' ,135 'ParkedDocumentNumber'.
ULINE.
LOOP AT it_msg.
WRITE : /10 it_msg-po_number,
25 it_msg-message,
55 it_msg-message1,
135 it_msg-mblnr.
ULINE.
ENDLOOP.
ENDFORM. " display_log
Similar Messages
-
Program Name: ZMM_MIRO Date : 05/01/07 *
Version : Final *
Author : Rashmi Patil Last Update: 08/01/07 *
Description : Program to print invoice document. *
Includes : None *
Logical Databases : None *
External Calls : *
Function Modules : POPUP_TO_INFORM *
Transactions : ZMIRO *
Scheduling Issues : None, run manually *
*Request Owner Date Description *
DEVK906817 Rashmi 16/03/2007 Addition of Service tax, vat & tds details
*DEVK907005 Rashmi 10/04/2007 Addition of ecess,netpr in doc currency *
*DEVK907017 Rashmi 12/04/2007 Correction in netpr *
DEVK907045 Rashmi 17/04/2007 Correction in o/p for multiple TDS entries
*DEVK907292 Rashmi 21/05/2007 Correction in object key and fiscal year *
*DEVK907460 Dharani 06/06/2007 PIR-60118_Addition planned delivery cost *
in MIRO print *
REPORT zmm_miro LINE-SIZE 132
LINE-COUNT 60
MESSAGE-ID 00
NO STANDARD PAGE HEADING.
TABLES: ekbe.
DATA : ebeln LIKE ekbe-ebeln,
ebeln1(90),
ebeln_1(10),
ebeln_2(10),
ebeln_3(10),
gjahr LIKE ekbe-gjahr,
mjahr LIKE mkpf-mjahr,
addrnr LIKE lfa1-adrnr,
mblnr LIKE mseg-mblnr,
belnr1 LIKE bkpf-belnr,
belnr2 LIKE bkpf-belnr,
objkey1(14),
objkey2(14),
total(10) TYPE p DECIMALS 2,
v_lines TYPE i,
count TYPE i,
start_at_line TYPE i,
end_at_line TYPE i,
counter TYPE i,
x TYPE f,
tot_number_of_lines TYPE i,
tot_number_of_pages TYPE i,
page_number VALUE 1 TYPE i,
ernam LIKE ekbe-ernam,
total1(10) TYPE p DECIMALS 2. "DEVK907005
DATA : BEGIN OF it_ekbe OCCURS 0,
ebeln LIKE ekbe-ebeln,
END OF it_ekbe.
DATA : BEGIN OF it_mkpf OCCURS 0,
ebeln LIKE ekbe-ebeln,
mblnr LIKE mkpf-mblnr,
budat LIKE mkpf-budat,
belnr LIKE bkpf-belnr, "DEVK907031
END OF it_mkpf.
DATA : BEGIN OF it_bseg OCCURS 0,
belnr LIKE bseg-belnr,
umskz LIKE bseg-umskz,
hkont LIKE bseg-hkont,
shkzg LIKE bseg-shkzg,
dmbtr LIKE bseg-dmbtr,
koart LIKE bseg-koart,
mwskz LIKE bseg-mwskz,
txt20 LIKE skat-txt20,
ktosl LIKE bseg-ktosl, "DEVK906817
fwbas LIKE bseg-fwbas, "DEVK906817
wrbtr LIKE bseg-wrbtr,
END OF it_bseg.
DATA : BEGIN OF it_final OCCURS 0,
belnr LIKE ekbe-belnr,
budat3 LIKE ekbe-budat,
lifnr LIKE ekko-lifnr,
name1 LIKE lfa1-name1,
street LIKE adrc-street,
str_suppl3 LIKE adrc-str_suppl3,
location LIKE adrc-location,
city1 LIKE adrc-city1,
city2 LIKE adrc-city2,
j_1ipanno LIKE j_1imovend-j_1ipanno,
j_1isern LIKE j_1imovend-j_1isern,
j_1ilstno LIKE j_1imovend-j_1ilstno,
belnr1 LIKE bkpf-belnr,
budat1 LIKE bkpf-budat,
belnr2 LIKE bkpf-belnr,
budat2 LIKE bkpf-budat,
xblnr LIKE bkpf-xblnr, "DEVK906817
mblnr LIKE mkpf-mblnr,
budat4 LIKE mkpf-budat,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
mwskz LIKE bseg-mwskz,
umskz LIKE bseg-umskz,
aufnr LIKE rbco-aufnr,
kostl LIKE rbco-kostl,
amount1(20),
amount2(20),
ktosl LIKE bseg-ktosl, "DEVK906817
fwbas LIKE bseg-fwbas, "DEVK906817
dc LIKE bkpf-waers,
lc LIKE bkpf-hwaer,
END OF it_final.
***Begin of DEVK906817
DATA : BEGIN OF it_stax OCCURS 0,
mwskz LIKE bseg-mwskz,
text1 LIKE t007s-text1,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(20), "DEVK907005
amount(10) TYPE p DECIMALS 2, "DEVK907005
dc_indicator(10),
END OF it_stax.
DATA : BEGIN OF it_tds OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(20), "DEVK907005
amount(10) TYPE p DECIMALS 2, "DEVK907005
dc_indicator(10),
END OF it_tds.
DATA : BEGIN OF it_vat OCCURS 0,
mwskz LIKE bseg-mwskz,
text1 LIKE t007s-text1,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(20), "DEVK907005
amount(10) TYPE p DECIMALS 2, "DEVK907005
dc_indicator(10),
END OF it_vat.
DATA : tds_base(20) VALUE 0.
***End of DEVK906817
***Begin of DEVK907005
DATA : BEGIN OF it_ecess OCCURS 0,
mwskz LIKE bseg-mwskz,
text1 LIKE t007s-text1,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_ecess.
***End of DEVK907005
***BEGIN OF DEVK907045
DATA : BEGIN OF it_tds1 OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas,
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_tds1.
DATA : BEGIN OF it_tds2 OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas,
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_tds2.
DATA : BEGIN OF it_tds3 OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas,
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_tds3.
***END OF DEVK907045
data: year like bkpf-gjahr, "DEVK907292
bkpf_year like bkpf-gjahr . "DEVK907292
SELECTION-SCREEN
SELECTION-SCREEN:BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
*PARAMETERS: p_belnr LIKE ekbe-belnr OBLIGATORY.
SELECT-OPTIONS: p_belnr FOR EKBE-BELNR .
SELECTION-SCREEN: END OF BLOCK b1.
START-OF-SELECTION.
IF p_belnr NE ''.
SELECT SINGLE ebeln gjahr budat ernam FROM ekbe INTO (ebeln,gjahr,it_final-budat3,ernam)
WHERE belnr IN p_belnr.
Start of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
if sy-subrc ne 0.
select single ebeln gjahr from rseg into (ebeln,gjahr)
where belnr IN p_belnr.
if sy-subrc = 0.
select single budat usnam lifnr from rbkp into (it_final-budat3,ernam,it_final-lifnr)
where belnr IN p_belnr.
endif.
endif.
End of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
ENDIF.
*---IF ENTERED RECORD IS INVALID
Start of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
IF sy-subrc <> 0.
End of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
if p_belnr eq ''.
CALL FUNCTION 'POPUP_TO_INFORM'
EXPORTING
titel = sy-repid
txt1 = text-002
txt2 = text-003.
EXIT.
ELSE.
*---TO FETCH VENDOR NUMBER
if it_final-lifnr = ''.
SELECT SINGLE lifnr FROM ekko INTO it_final-lifnr
WHERE ebeln = ebeln .
endif.
*---TO FETCH VENDOR ADDRESS
SELECT SINGLE adrnr FROM lfa1 INTO addrnr WHERE lifnr = it_final-lifnr.
SELECT SINGLE name1 street str_suppl3 location city1 city2 FROM adrc
INTO CORRESPONDING FIELDS OF it_final
WHERE addrnumber = addrnr.
SELECT SINGLE j_1ipanno j_1isern j_1ilstno FROM j_1imovend INTO CORRESPONDING FIELDS OF it_final
WHERE lifnr = it_final-lifnr.
*---TO FETCH MATERIAL DOCUMENT NUMBER
SELECT SINGLE mblnr FROM mseg INTO mblnr WHERE ebeln = ebeln.
SELECT SINGLE mblnr budat mjahr FROM mkpf INTO (it_final-mblnr, it_final-budat4, mjahr)
WHERE mblnr = mblnr.
***BEGIN OF DEVK907292
CONCATENATE: p_belnr gjahr INTO objkey1,
it_final-mblnr mjahr INTO objkey2.
select single gjahr from rbkp into year
where belnr = p_belnr and budat = it_final-budat3.
concatenate p_belnr year into objkey1.
***END OF DEVK907292
***Begin of DEVK906817
SELECT SINGLE belnr budat FROM bkpf INTO (it_final-belnr1,it_final-budat1)
WHERE awkey = objkey1.
SELECT SINGLE belnr budat xblnr waers hwaer FROM bkpf INTO (it_final-belnr1,it_final-budat1,it_final-xblnr,it_final-dc,it_final-lc)
WHERE awkey = objkey1. "DEVK907292
SELECT SINGLE belnr budat xblnr waers hwaer gjahr FROM bkpf INTO (it_final-belnr1,it_final-budat1,it_final-xblnr,it_final-dc,it_final-lc,bkpf_year)
WHERE awkey = objkey1. "DEVK907292
***End of DEVK906817
SELECT SINGLE belnr budat FROM bkpf INTO (it_final-belnr2,it_final-budat2)
WHERE awkey = objkey2.
*---TO FETCH DATA FROM TABLE BSEG
Begin of DEVK906817
SELECT belnr umskz hkont dmbtr koart shkzg mwskz FROM bseg INTO CORRESPONDING FIELDS OF TABLE it_bseg
WHERE belnr = it_final-belnr1.
SELECT belnr umskz hkont dmbtr wrbtr koart shkzg mwskz ktosl fwbas FROM bseg INTO CORRESPONDING FIELDS OF TABLE it_bseg
WHERE belnr = it_final-belnr1
AND gjahr = bkpf_year. "DEVK907292
***End of DEVK906817
LOOP AT it_bseg.
SELECT SINGLE txt20 FROM skat INTO it_bseg-txt20
WHERE saknr = it_bseg-hkont AND ktopl = 'TSKY'.
IF it_bseg-koart = 'K'.
MOVE it_final-name1 TO it_bseg-txt20.
MOVE : it_bseg-dmbtr TO total, "DEVK907017
it_bseg-wrbtr TO total1. "DEVK907017
ENDIF.
MODIFY it_bseg.
ENDLOOP.
SORT it_bseg BY shkzg.
total = 0. "DEVK907017
total1 = 0. "DEVK907017
LOOP AT it_bseg.
AT FIRST.
SELECT SINGLE kostl aufnr FROM rbco INTO CORRESPONDING FIELDS OF it_final
WHERE belnr = p_belnr.
CONDENSE it_final-aufnr.
ENDAT.
MOVE : p_belnr TO it_final-belnr,
it_bseg-hkont TO it_final-hkont,
it_bseg-txt20 TO it_final-txt20,
it_bseg-mwskz TO it_final-mwskz,
it_bseg-umskz TO it_final-umskz,
it_bseg-ktosl TO it_final-ktosl, "DEVK906817
it_bseg-fwbas TO it_final-fwbas. "DEVK906817
IF it_bseg-shkzg = 'H'.
MOVE '' TO it_final-amount2.
MOVE it_bseg-dmbtr TO it_final-amount1.
tds_base = tds_base + it_final-amount1. "DEVK906817
Begin of DEVK907017
IF it_bseg-mwskz = ''.
SUBTRACT it_bseg-dmbtr FROM total.
SUBTRACT it_bseg-wrbtr FROM total1. "DEVK907005
ELSE.
ADD it_bseg-dmbtr TO total.
ADD it_bseg-wrbtr TO total1. "DEVK907005
ENDIF.
End of DEVK907017
ELSE.
MOVE '' TO it_final-amount1.
MOVE it_bseg-dmbtr TO it_final-amount2.
ENDIF.
APPEND it_final.
it_final-kostl = ''.
it_final-aufnr = ''.
ENDLOOP.
Begin of DEVK906817
*--- To get service tax details .
LOOP AT it_final WHERE ktosl = 'ESE' "DEVK907005
LOOP AT it_final WHERE ktosl = 'ESE' OR ktosl = 'YSE'. "DEVK907005
MOVE-CORRESPONDING it_final TO it_stax.
SELECT SINGLE text1 FROM t007s INTO it_stax-text1
WHERE mwskz = it_stax-mwskz
AND spras = 'E'
AND kalsm = 'ZTAXIN'.
it_stax-amount = it_final-amount1 + it_final-amount2.
IF it_final-amount1 = ''.
MOVE 'DEBIT' TO it_stax-dc_indicator.
ELSE .
MOVE 'CREDIT' TO it_stax-dc_indicator.
ENDIF.
ENDLOOP.
Begin of DEVK907005
*--- To get ecess details .
LOOP AT it_final WHERE ktosl = 'ZSE' OR ktosl = 'YEC'. "DEVK907005
MOVE-CORRESPONDING it_final TO it_ecess.
SELECT SINGLE text1 FROM t007s INTO it_ecess-text1
WHERE mwskz = it_ecess-mwskz
AND spras = 'E'
AND kalsm = 'ZTAXIN'.
it_ecess-amount = it_final-amount1 + it_final-amount2.
IF it_final-amount1 = ''.
MOVE 'DEBIT' TO it_ecess-dc_indicator.
ELSE .
MOVE 'CREDIT' TO it_ecess-dc_indicator.
ENDIF.
ENDLOOP.
End of DEVK907005
*--- To get TDS details .
LOOP AT it_final WHERE mwskz = ''.
MOVE-CORRESPONDING it_final TO it_tds.
it_tds-amount = it_final-amount1 + it_final-amount2.
MOVE tds_base TO it_tds-fwbas.
MOVE 'CREDIT' TO it_tds-dc_indicator.
***BEGIN OF DEVK907045
ENDLOOP.
APPEND it_tds.
ENDLOOP.
LOOP AT it_tds.
IF sy-tabix = 1.
MOVE it_tds TO it_tds1.
ENDIF.
IF sy-tabix = 2.
MOVE it_tds TO it_tds2.
ENDIF.
IF sy-tabix = 3.
MOVE it_tds TO it_tds3.
ENDIF.
ENDLOOP.
***END OF DEVK907045
*--- To get VAT/Sales tax details .
LOOP AT it_final WHERE ktosl = 'JP5' OR ktosl = 'NVV'.
MOVE-CORRESPONDING it_final TO it_vat.
SELECT SINGLE text1 FROM t007s INTO it_vat-text1
WHERE mwskz = it_vat-mwskz
AND spras = 'E'
AND kalsm = 'ZTAXIN'.
it_vat-amount = it_final-amount1 + it_final-amount2.
IF it_final-amount1 = ''.
MOVE 'DEBIT' TO it_vat-dc_indicator.
ELSE .
MOVE 'CREDIT' TO it_vat-dc_indicator.
ENDIF.
ENDLOOP.
End of DEVK906817
*---TO FETCH PURCHASE OREDER AND MATERIAL DOCUMENT NUMBERS
SELECT ebeln FROM ekbe INTO TABLE it_ekbe
WHERE belnr IN p_belnr.
LOOP AT it_ekbe.
SELECT SINGLE mblnr FROM mseg INTO mblnr WHERE ebeln = it_ekbe-ebeln.
***BEGIN OF DEVK907031
SELECT SINGLE mblnr budat FROM mkpf INTO CORRESPONDING FIELDS OF it_mkpf
WHERE mblnr = mblnr.
SELECT SINGLE mblnr budat mjahr FROM mkpf INTO CORRESPONDING FIELDS OF it_mkpf
WHERE mblnr = mblnr.
CONCATENATE: it_mkpf-mblnr mjahr INTO objkey2.
SELECT SINGLE belnr FROM bkpf INTO it_mkpf-belnr
WHERE awkey = objkey2.
***END OF DEVK907031
MOVE it_ekbe-ebeln TO it_mkpf-ebeln.
APPEND it_mkpf.
CLEAR it_mkpf.
ENDLOOP.
ENDIF.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
form = 'ZMIRO'
language = 'E'.
CLEAR it_final.
DESCRIBE TABLE it_final LINES tot_number_of_lines.
x = tot_number_of_lines / 20.
tot_number_of_pages = CEIL( x ).
WHILE page_number LE tot_number_of_pages.
*--- START OF PAGE
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'ZMIRO'
language = 'E'
startpage = 'FIRST'
program = 'ZMM_MIRO'
EXCEPTIONS
form = 1
format = 2
unended = 3
unopened = 4
unused = 5
spool_error = 6
codepage = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'FIRST'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'HEADER'
window = 'MAIN'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
*---CHOOSE APPROPRIATE SEGMENT OF IT_FINAL TO BE DISPLAYED IN THE PAGE
start_at_line = ( 20 * ( page_number - 1 ) ) + 1.
end_at_line = 20 * page_number.
IF end_at_line GT tot_number_of_lines.
end_at_line = tot_number_of_lines.
ENDIF.
DESCRIBE TABLE it_final LINES v_lines.
LOOP AT it_final FROM start_at_line TO end_at_line.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'LINE_ITEMS'
window = 'MAIN'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW3'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
hi ,
pls help me, this is my print program . my requirement is print multiple invoice documents,.
earlier it was print single t invoice docment.so in selection screen they used parameter for invoice.
now my requirement is make it parameter as select-option.
pls i have to submit today only pls help me.
check my print program below.
ENDLOOP.
CALL FUNCTION 'END_FORM'
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
*---TO DISPLAY NEXT PAGE.
page_number = page_number + 1.
start_at_line = ( 20 * ( page_number - 1 ) ) + 1.
end_at_line = 20 * page_number.
IF end_at_line GT tot_number_of_lines.
end_at_line = tot_number_of_lines.
ENDIF.
ENDWHILE.
*--- START OF LAST PAGE
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'ZMIRO'
language = 'E'
startpage = 'PAGE1'
program = 'ZMM_MIRO'
EXCEPTIONS
form = 1
format = 2
unended = 3
unopened = 4
unused = 5
spool_error = 6
codepage = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW6'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
LOOP AT it_mkpf.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW4'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDLOOP.
***Begin of DEVK906817
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW7'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
***End of DEVK906817
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW5'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'END_FORM'
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'CLOSE_FORM'.hi ,
my requirement is print multiple invoice documents.earlier it was printed only sinle invoice document.
now i made invoice as a select-option instead of parameter .
but remaining code how &where should i write,
pls provide code for this program.
Program Name: ZMM_MIRO Date : 05/01/07 *
Version : Final *
Author : Rashmi Patil Last Update: 08/01/07 *
Description : Program to print invoice document. *
Includes : None *
Logical Databases : None *
External Calls : *
Function Modules : POPUP_TO_INFORM *
Transactions : ZMIRO *
Scheduling Issues : None, run manually *
*Request Owner Date Description *
DEVK906817 Rashmi 16/03/2007 Addition of Service tax, vat & tds details
*DEVK907005 Rashmi 10/04/2007 Addition of ecess,netpr in doc currency *
*DEVK907017 Rashmi 12/04/2007 Correction in netpr *
DEVK907045 Rashmi 17/04/2007 Correction in o/p for multiple TDS entries
*DEVK907292 Rashmi 21/05/2007 Correction in object key and fiscal year *
*DEVK907460 Dharani 06/06/2007 PIR-60118_Addition planned delivery cost *
in MIRO print *
REPORT zmm_miro LINE-SIZE 132
LINE-COUNT 60
MESSAGE-ID 00
NO STANDARD PAGE HEADING.
TABLES: ekbe.
DATA : ebeln LIKE ekbe-ebeln,
ebeln1(90),
ebeln_1(10),
ebeln_2(10),
ebeln_3(10),
gjahr LIKE ekbe-gjahr,
mjahr LIKE mkpf-mjahr,
addrnr LIKE lfa1-adrnr,
mblnr LIKE mseg-mblnr,
belnr1 LIKE bkpf-belnr,
belnr2 LIKE bkpf-belnr,
objkey1(14),
objkey2(14),
total(10) TYPE p DECIMALS 2,
v_lines TYPE i,
count TYPE i,
start_at_line TYPE i,
end_at_line TYPE i,
counter TYPE i,
x TYPE f,
tot_number_of_lines TYPE i,
tot_number_of_pages TYPE i,
page_number VALUE 1 TYPE i,
ernam LIKE ekbe-ernam,
total1(10) TYPE p DECIMALS 2. "DEVK907005
DATA : BEGIN OF it_ekbe OCCURS 0,
ebeln LIKE ekbe-ebeln,
END OF it_ekbe.
DATA : BEGIN OF it_mkpf OCCURS 0,
ebeln LIKE ekbe-ebeln,
mblnr LIKE mkpf-mblnr,
budat LIKE mkpf-budat,
belnr LIKE bkpf-belnr, "DEVK907031
END OF it_mkpf.
DATA : BEGIN OF it_bseg OCCURS 0,
belnr LIKE bseg-belnr,
umskz LIKE bseg-umskz,
hkont LIKE bseg-hkont,
shkzg LIKE bseg-shkzg,
dmbtr LIKE bseg-dmbtr,
koart LIKE bseg-koart,
mwskz LIKE bseg-mwskz,
txt20 LIKE skat-txt20,
ktosl LIKE bseg-ktosl, "DEVK906817
fwbas LIKE bseg-fwbas, "DEVK906817
wrbtr LIKE bseg-wrbtr,
END OF it_bseg.
DATA : BEGIN OF it_final OCCURS 0,
belnr LIKE ekbe-belnr,
budat3 LIKE ekbe-budat,
lifnr LIKE ekko-lifnr,
name1 LIKE lfa1-name1,
street LIKE adrc-street,
str_suppl3 LIKE adrc-str_suppl3,
location LIKE adrc-location,
city1 LIKE adrc-city1,
city2 LIKE adrc-city2,
j_1ipanno LIKE j_1imovend-j_1ipanno,
j_1isern LIKE j_1imovend-j_1isern,
j_1ilstno LIKE j_1imovend-j_1ilstno,
belnr1 LIKE bkpf-belnr,
budat1 LIKE bkpf-budat,
belnr2 LIKE bkpf-belnr,
budat2 LIKE bkpf-budat,
xblnr LIKE bkpf-xblnr, "DEVK906817
mblnr LIKE mkpf-mblnr,
budat4 LIKE mkpf-budat,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
mwskz LIKE bseg-mwskz,
umskz LIKE bseg-umskz,
aufnr LIKE rbco-aufnr,
kostl LIKE rbco-kostl,
amount1(20),
amount2(20),
ktosl LIKE bseg-ktosl, "DEVK906817
fwbas LIKE bseg-fwbas, "DEVK906817
dc LIKE bkpf-waers,
lc LIKE bkpf-hwaer,
END OF it_final.
***Begin of DEVK906817
DATA : BEGIN OF it_stax OCCURS 0,
mwskz LIKE bseg-mwskz,
text1 LIKE t007s-text1,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(20), "DEVK907005
amount(10) TYPE p DECIMALS 2, "DEVK907005
dc_indicator(10),
END OF it_stax.
DATA : BEGIN OF it_tds OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(20), "DEVK907005
amount(10) TYPE p DECIMALS 2, "DEVK907005
dc_indicator(10),
END OF it_tds.
DATA : BEGIN OF it_vat OCCURS 0,
mwskz LIKE bseg-mwskz,
text1 LIKE t007s-text1,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(20), "DEVK907005
amount(10) TYPE p DECIMALS 2, "DEVK907005
dc_indicator(10),
END OF it_vat.
DATA : tds_base(20) VALUE 0.
***End of DEVK906817
***Begin of DEVK907005
DATA : BEGIN OF it_ecess OCCURS 0,
mwskz LIKE bseg-mwskz,
text1 LIKE t007s-text1,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas, "Base amount
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_ecess.
***End of DEVK907005
***BEGIN OF DEVK907045
DATA : BEGIN OF it_tds1 OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas,
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_tds1.
DATA : BEGIN OF it_tds2 OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas,
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_tds2.
DATA : BEGIN OF it_tds3 OCCURS 0,
hkont LIKE bseg-hkont,
txt20 LIKE skat-txt20,
fwbas LIKE bseg-fwbas,
amount(10) TYPE p DECIMALS 2,
dc_indicator(10),
END OF it_tds3.
***END OF DEVK907045
data: year like bkpf-gjahr, "DEVK907292
bkpf_year like bkpf-gjahr . "DEVK907292
SELECTION-SCREEN
SELECTION-SCREEN:BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
*PARAMETERS: p_belnr LIKE ekbe-belnr OBLIGATORY.
SELECT-OPTIONS: p_belnr FOR EKBE-BELNR .
SELECTION-SCREEN: END OF BLOCK b1.
START-OF-SELECTION.
IF p_belnr NE ''.
SELECT SINGLE ebeln gjahr budat ernam FROM ekbe INTO (ebeln,gjahr,it_final-budat3,ernam)
WHERE belnr IN p_belnr.
Start of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
if sy-subrc ne 0.
select single ebeln gjahr from rseg into (ebeln,gjahr)
where belnr IN p_belnr.
if sy-subrc = 0.
select single budat usnam lifnr from rbkp into (it_final-budat3,ernam,it_final-lifnr)
where belnr IN p_belnr.
endif.
endif.
End of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
ENDIF.
*---IF ENTERED RECORD IS INVALID
Start of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
IF sy-subrc 0.
End of changes by 147547 on 06/06/2007 DEVK907460 PIR-60118_Addition planned delivery cost in MIRO print
if p_belnr eq ''.
CALL FUNCTION 'POPUP_TO_INFORM'
EXPORTING
titel = sy-repid
txt1 = text-002
txt2 = text-003.
EXIT.
ELSE.
*---TO FETCH VENDOR NUMBER
if it_final-lifnr = ''.
SELECT SINGLE lifnr FROM ekko INTO it_final-lifnr
WHERE ebeln = ebeln .
endif.
*---TO FETCH VENDOR ADDRESS
SELECT SINGLE adrnr FROM lfa1 INTO addrnr WHERE lifnr = it_final-lifnr.
SELECT SINGLE name1 street str_suppl3 location city1 city2 FROM adrc
INTO CORRESPONDING FIELDS OF it_final
WHERE addrnumber = addrnr.
SELECT SINGLE j_1ipanno j_1isern j_1ilstno FROM j_1imovend INTO CORRESPONDING FIELDS OF it_final
WHERE lifnr = it_final-lifnr.
*---TO FETCH MATERIAL DOCUMENT NUMBER
SELECT SINGLE mblnr FROM mseg INTO mblnr WHERE ebeln = ebeln.
SELECT SINGLE mblnr budat mjahr FROM mkpf INTO (it_final-mblnr, it_final-budat4, mjahr)
WHERE mblnr = mblnr.
***BEGIN OF DEVK907292
CONCATENATE: p_belnr gjahr INTO objkey1,
it_final-mblnr mjahr INTO objkey2.
select single gjahr from rbkp into year
where belnr = p_belnr and budat = it_final-budat3.
concatenate p_belnr year into objkey1.
***END OF DEVK907292
***Begin of DEVK906817
SELECT SINGLE belnr budat FROM bkpf INTO (it_final-belnr1,it_final-budat1)
WHERE awkey = objkey1.
SELECT SINGLE belnr budat xblnr waers hwaer FROM bkpf INTO (it_final-belnr1,it_final-budat1,it_final-xblnr,it_final-dc,it_final-lc)
WHERE awkey = objkey1. "DEVK907292
SELECT SINGLE belnr budat xblnr waers hwaer gjahr FROM bkpf INTO (it_final-belnr1,it_final-budat1,it_final-xblnr,it_final-dc,it_final-lc,bkpf_year)
WHERE awkey = objkey1. "DEVK907292
***End of DEVK906817
SELECT SINGLE belnr budat FROM bkpf INTO (it_final-belnr2,it_final-budat2)
WHERE awkey = objkey2.
*---TO FETCH DATA FROM TABLE BSEG
Begin of DEVK906817
SELECT belnr umskz hkont dmbtr koart shkzg mwskz FROM bseg INTO CORRESPONDING FIELDS OF TABLE it_bseg
WHERE belnr = it_final-belnr1.
SELECT belnr umskz hkont dmbtr wrbtr koart shkzg mwskz ktosl fwbas FROM bseg INTO CORRESPONDING FIELDS OF TABLE it_bseg
WHERE belnr = it_final-belnr1
AND gjahr = bkpf_year. "DEVK907292
***End of DEVK906817
LOOP AT it_bseg.
SELECT SINGLE txt20 FROM skat INTO it_bseg-txt20
WHERE saknr = it_bseg-hkont AND ktopl = 'TSKY'.
IF it_bseg-koart = 'K'.
MOVE it_final-name1 TO it_bseg-txt20.
MOVE : it_bseg-dmbtr TO total, "DEVK907017
it_bseg-wrbtr TO total1. "DEVK907017
ENDIF.
MODIFY it_bseg.
ENDLOOP.
SORT it_bseg BY shkzg.
total = 0. "DEVK907017
total1 = 0. "DEVK907017
LOOP AT it_bseg.
AT FIRST.
SELECT SINGLE kostl aufnr FROM rbco INTO CORRESPONDING FIELDS OF it_final
WHERE belnr = p_belnr.
CONDENSE it_final-aufnr.
ENDAT.
MOVE : p_belnr TO it_final-belnr,
it_bseg-hkont TO it_final-hkont,
it_bseg-txt20 TO it_final-txt20,
it_bseg-mwskz TO it_final-mwskz,
it_bseg-umskz TO it_final-umskz,
it_bseg-ktosl TO it_final-ktosl, "DEVK906817
it_bseg-fwbas TO it_final-fwbas. "DEVK906817
IF it_bseg-shkzg = 'H'.
MOVE '' TO it_final-amount2.
MOVE it_bseg-dmbtr TO it_final-amount1.
tds_base = tds_base + it_final-amount1. "DEVK906817
Begin of DEVK907017
IF it_bseg-mwskz = ''.
SUBTRACT it_bseg-dmbtr FROM total.
SUBTRACT it_bseg-wrbtr FROM total1. "DEVK907005
ELSE.
ADD it_bseg-dmbtr TO total.
ADD it_bseg-wrbtr TO total1. "DEVK907005
ENDIF.
End of DEVK907017
ELSE.
MOVE '' TO it_final-amount1.
MOVE it_bseg-dmbtr TO it_final-amount2.
ENDIF.
APPEND it_final.
it_final-kostl = ''.
it_final-aufnr = ''.
ENDLOOP.
Begin of DEVK906817
To get service tax details .
LOOP AT it_final WHERE ktosl = 'ESE' "DEVK907005
LOOP AT it_final WHERE ktosl = 'ESE' OR ktosl = 'YSE'. "DEVK907005
MOVE-CORRESPONDING it_final TO it_stax.
SELECT SINGLE text1 FROM t007s INTO it_stax-text1
WHERE mwskz = it_stax-mwskz
AND spras = 'E'
AND kalsm = 'ZTAXIN'.
it_stax-amount = it_final-amount1 + it_final-amount2.
IF it_final-amount1 = ''.
MOVE 'DEBIT' TO it_stax-dc_indicator.
ELSE .
MOVE 'CREDIT' TO it_stax-dc_indicator.
ENDIF.
ENDLOOP.
Begin of DEVK907005
To get ecess details .
LOOP AT it_final WHERE ktosl = 'ZSE' OR ktosl = 'YEC'. "DEVK907005
MOVE-CORRESPONDING it_final TO it_ecess.
SELECT SINGLE text1 FROM t007s INTO it_ecess-text1
WHERE mwskz = it_ecess-mwskz
AND spras = 'E'
AND kalsm = 'ZTAXIN'.
it_ecess-amount = it_final-amount1 + it_final-amount2.
IF it_final-amount1 = ''.
MOVE 'DEBIT' TO it_ecess-dc_indicator.
ELSE .
MOVE 'CREDIT' TO it_ecess-dc_indicator.
ENDIF.
ENDLOOP.
End of DEVK907005
To get TDS details .
LOOP AT it_final WHERE mwskz = ''.
MOVE-CORRESPONDING it_final TO it_tds.
it_tds-amount = it_final-amount1 + it_final-amount2.
MOVE tds_base TO it_tds-fwbas.
MOVE 'CREDIT' TO it_tds-dc_indicator.
***BEGIN OF DEVK907045
ENDLOOP.
APPEND it_tds.
ENDLOOP.
LOOP AT it_tds.
IF sy-tabix = 1.
MOVE it_tds TO it_tds1.
ENDIF.
IF sy-tabix = 2.
MOVE it_tds TO it_tds2.
ENDIF.
IF sy-tabix = 3.
MOVE it_tds TO it_tds3.
ENDIF.
ENDLOOP.
***END OF DEVK907045
To get VAT/Sales tax details .
LOOP AT it_final WHERE ktosl = 'JP5' OR ktosl = 'NVV'.
MOVE-CORRESPONDING it_final TO it_vat.
SELECT SINGLE text1 FROM t007s INTO it_vat-text1
WHERE mwskz = it_vat-mwskz
AND spras = 'E'
AND kalsm = 'ZTAXIN'.
it_vat-amount = it_final-amount1 + it_final-amount2.
IF it_final-amount1 = ''.
MOVE 'DEBIT' TO it_vat-dc_indicator.
ELSE .
MOVE 'CREDIT' TO it_vat-dc_indicator.
ENDIF.
ENDLOOP.
End of DEVK906817
*---TO FETCH PURCHASE OREDER AND MATERIAL DOCUMENT NUMBERS
SELECT ebeln FROM ekbe INTO TABLE it_ekbe
WHERE belnr IN p_belnr.
LOOP AT it_ekbe.
SELECT SINGLE mblnr FROM mseg INTO mblnr WHERE ebeln = it_ekbe-ebeln.
***BEGIN OF DEVK907031
SELECT SINGLE mblnr budat FROM mkpf INTO CORRESPONDING FIELDS OF it_mkpf
WHERE mblnr = mblnr.
SELECT SINGLE mblnr budat mjahr FROM mkpf INTO CORRESPONDING FIELDS OF it_mkpf
WHERE mblnr = mblnr.
CONCATENATE: it_mkpf-mblnr mjahr INTO objkey2.
SELECT SINGLE belnr FROM bkpf INTO it_mkpf-belnr
WHERE awkey = objkey2.
***END OF DEVK907031
MOVE it_ekbe-ebeln TO it_mkpf-ebeln.
APPEND it_mkpf.
CLEAR it_mkpf.
ENDLOOP.
ENDIF.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
form = 'ZMIRO'
language = 'E'.
CLEAR it_final.
DESCRIBE TABLE it_final LINES tot_number_of_lines.
x = tot_number_of_lines / 20.
tot_number_of_pages = CEIL( x ).
WHILE page_number LE tot_number_of_pages.
START OF PAGE
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'ZMIRO'
language = 'E'
startpage = 'FIRST'
program = 'ZMM_MIRO'
EXCEPTIONS
form = 1
format = 2
unended = 3
unopened = 4
unused = 5
spool_error = 6
codepage = 7
OTHERS = 8.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'FIRST'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'HEADER'
window = 'MAIN'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
*---CHOOSE APPROPRIATE SEGMENT OF IT_FINAL TO BE DISPLAYED IN THE PAGE
start_at_line = ( 20 * ( page_number - 1 ) ) + 1.
end_at_line = 20 * page_number.
IF end_at_line GT tot_number_of_lines.
end_at_line = tot_number_of_lines.
ENDIF.
DESCRIBE TABLE it_final LINES v_lines.
LOOP AT it_final FROM start_at_line TO end_at_line.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'LINE_ITEMS'
window = 'MAIN'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW3'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
hi ,
pls help me, this is my print program . my requirement is print multiple invoice documents,.
earlier it was print single t invoice docment.so in selection screen they used parameter for invoice.
now my requirement is make it parameter as select-option.
pls i have to submit today only pls help me.
check my print program below.
ENDLOOP.
CALL FUNCTION 'END_FORM'
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
*---TO DISPLAY NEXT PAGE.
page_number = page_number + 1.
start_at_line = ( 20 * ( page_number - 1 ) ) + 1.
end_at_line = 20 * page_number.
IF end_at_line GT tot_number_of_lines.
end_at_line = tot_number_of_lines.
ENDIF.
ENDWHILE.
START OF LAST PAGE
CALL FUNCTION 'START_FORM'
EXPORTING
form = 'ZMIRO'
language = 'E'
startpage = 'PAGE1'
program = 'ZMM_MIRO'
EXCEPTIONS
form = 1
format = 2
unended = 3
unopened = 4
unused = 5
spool_error = 6
codepage = 7
OTHERS = 8.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW6'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
LOOP AT it_mkpf.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW4'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDLOOP.
***Begin of DEVK906817
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW7'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
***End of DEVK906817
CALL FUNCTION 'WRITE_FORM'
EXPORTING
window = 'WINDOW5'
EXCEPTIONS
element = 1
function = 2
type = 3
unopened = 4
unstarted = 5
window = 6
bad_pageformat_for_print = 7
spool_error = 8
codepage = 9
OTHERS = 10.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'END_FORM'
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'CLOSE_FORM'. -
Regaring code ,its urgent
hi,
i had amde dis code for displaying the changes made on material in purticular month,70% report is working fine but problem is dat when i want to see the deatils of changes made to it ,it is not displaying all records,i.e. if dere are 5 changes made to a purticular materail den it is displaying only 3 ,but i want to show all of dem .
plzzz help me out as it is very urgent to me and help will be definately rewrded.
dis is my report code.plzz try to help me:-
REPORT ZNEW01 no standard page heading LINE-SIZE 310.
TABLES: CDHDR,CDPOS.
DATA: BEGIN OF ITAB OCCURS 0,
OBJECTCLAS LIKE CDHDR-OBJECTCLAS,
OBJECTID LIKE CDHDR-OBJECTID,
USERNAME LIKE CDHDR-USERNAME,
UDATE LIKE CDHDR-UDATE,
UTIME LIKE CDHDR-UTIME,
TCODE LIKE CDHDR-TCODE,
CHANGE_IND LIKE CDHDR-CHANGE_IND,
END OF ITAB.
DATA: BEGIN OF ITAB1 OCCURS 0,
OBJECTCLAS LIKE CDPOS-OBJECTCLAS,
OBJECTID LIKE CDPOS-OBJECTID,
FNAME LIKE CDPOS-FNAME,
CHNGIND LIKE CDPOS-CHNGIND,
VALUE_OLD LIKE CDPOS-VALUE_OLD,
VALUE_NEW LIKE CDPOS-VALUE_NEW,
END OF ITAB1.
SELECT-OPTIONS: M_DATE FOR CDHDR-UDATE,
U_ID FOR CDHDR-CHANGE_IND.
SELECT BOBJECTCLAS BOBJECTID BUSERNAME BUDATE BUTIME BTCODE B~CHANGE_IND INTO
TABLE ITAB
FROM CDHDR AS B WHERE B~OBJECTCLAS = 'MATERIAL' AND UDATE IN M_DATE AND CHANGE_IND IN U_ID.
Check not itab[] is initial.
SELECT OBJECTCLAS OBJECTID FNAME CHNGIND VALUE_OLD VALUE_NEW INTO TABLE
ITAB1 FROM CDPOS
FOR ALL ENTRIES IN ITAB WHERE OBJECTID = itab-objectid and objectclas = ITAB-OBJECTCLAS .
ULINE.
LOOP AT ITAB.
WRITE:/ ITAB-OBJECTID,22 ITAB-USERNAME,ITAB-UDATE,ITAB-UTIME,ITAB-TCODE.
LOOP AT ITAB1 WHERE OBJECTCLAS = ITAB-OBJECTCLAS AND OBJECTID = ITAB-OBJECTID.
WRITE: 60 ITAB1-FNAME,ITAB1-CHNGIND,ITAB1-VALUE_OLD(40),ITAB1-VALUE_NEW(40).
ENDLOOP.
ENDLOOP.Hi,
As you are using FOR ALL ENTRIES to fetch itab1, it will remove the duplicate entries.
SELECT OBJECTCLAS OBJECTID FNAME CHNGIND VALUE_OLD VALUE_NEW INTO TABLE
ITAB1 FROM CDPOS
FOR ALL ENTRIES IN ITAB WHERE OBJECTID = itab-objectid and objectclas = ITAB-OBJECTCLAS .
ex: new_value old_value
10 20
20 30
30 10
10 20
20 30
In the output you will get only 3 records. i.e., first 3 records.
rest of the code is looking fine. This may be the problem.
Instead of using FOR ALL ENTRIES, fetch data for each record. -
Pls help me out (its urgent)
hi
i have connected two pcs using modem via PSTN using comm api in follwing sequences.
1) My local modem calls to the Remote modem using the ATDT 235 command
2) on remote side one program continuosly listens to the incoming call.
3) After that my local modem detects the "CONNECT 9600" response.
4) Also my remote modem detects the same response it waits for some time and start transmitting data.
5) But my local modem is unable to receive some starting bytes and after some bytes it has receive it stops the receiving bytes.
6) But when i terminate the remote program my local modem receives the whole set of bytes.
Remote modem - DLINK DFM-562E++
Local Modem - DLINK DFM-560ES
i want to transfer data in a zip file and at local i will unzip it successfully
THANKS IN ADVANCEPlease try to come up with another explanation. However the error what prevents case from working is probably not Java's or your program's. See the manuals of your modems
-
Doubt in ORA_FFI(Its urgent)
Hi,
I've created a test.dll which contains caps func as follows:
int caps()
int * ptr=0x417;
if (*ptr==64)
return 1;
else
return 0;
Then I called this func through ORA_FFI package..
DECLARE
dll_handle ORA_FFI.LIBHANDLETYPE;
winexec_handle ORA_FFI.FUNCHANDLETYPE;
vn_ret PLS_INTEGER;
FUNCTION Runp( handle IN ORA_FFI.FUNCHANDLETYPE)
RETURN PLS_INTEGER;
PRAGMA INTERFACE(C, Runp, 11265);
BEGIN
break;
dll_handle := ORA_FFI.REGISTER_LIBRARY(NULL,'test.dll');
winexec_handle := ORA_FFI.REGISTER_FUNCTION(dll_handle,'caps');
ORA_FFI.REGISTER_RETURN(winexec_handle,ORA_FFI.C_INT);
vn_ret := Runp(winexec_handle);
IF vn_ret = 2 THEN
MESSAGE('Cannot find file ' );
END IF;
EXCEPTION WHEN OTHERS THEN
FOR i IN 1..Tool_Err.NErrors LOOP
message(Tool_Err.Message);
Tool_Err.Pop;
END LOOP;
END;
When I debug this code,It gives error as caps func not found in test.dll.
But the only func in test.dll is caps..
I'm using forms 6i in client server mode.
I created test.dll using Microsoft visual c++ by creating new win32 Dynamic link library.
One more doubt:
How can I find functions in a already compiled DLL?
Pls reply me..Its urgent..
Adios..
Prashanth DeshmukhHi,
refer these ,u will get some help
Standard Buttons:
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/webDynproABAP-ALVControllingStandard+Buttons&
alv-pfstatus:
http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_pfstatus.htm
then how to capture that button click.
http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_ucomm.htm
http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_rowsel.htm -
Delete duplicate entriess from the internal table its urgent pls help.
Hi friends,
Hope everybody is doing good,Here is m query on delete duplicate data from the intenal table.
I have an internal table which contain data in the following format.
Doc No Comp Cod Vendor Assignment
1500000009 JM11 00000000
1500000008 JM11 20070212(Repeating)
1500000007 JM11 20070212
1500000006 JM11 00000000
1500000005 JM11 00000000
1500000004 JM11 00000000(Repeating)
1500000003 JM11 00000000 (Repeating)
1500000002 JM11 00000000
1500000001 JM11 20050302
1500000000 JM11 00000000
1500000003 JM11 10000088
1500000001 JM11 10000088
1500000030 JM11 10006260
1500000010 JM11 10006269
1500000008 JM11 10006269
1500000006 JM11 10006269
1500000004 JM11 10006269
if you see the document numbers,there are some document number which are repeating here,there are some document numer which contain vendor number but not the assignments,some of the document numbers contain the assignments but not the vendors.
If my internal table contain this kind of data with repeted document numbers than i want the document number which contains only the vendor number.
Pls help me with the appropriate logic,its urgent.
Thanks a lot
mrutyun^Hi,
<u><b>Deleting Adjacent Duplicate Entries</b></u>
To delete adjacent duplicate entries use the following statement:
DELETE ADJACENT DUPLICATE ENTRIES FROM <itab>
[COMPARING <f1> <f2> ...
|ALL FIELDS].
The system deletes all adjacent duplicate entries from the internal table <itab>. Entries are
duplicate if they fulfill one of the following compare criteria:
Without the COMPARING addition, the contents of the key fields of the table must be
identical in both lines.
If you use the addition COMPARING <f1> <f2> ... the contents of the specified fields <f1>
<f2> ... must be identical in both lines. You can also specify a field <fi> dynamically as
the contents of a field <ni> in the form (<ni>). If <ni> is empty when the statement is
executed, it is ignored. You can restrict the search to partial fields by
specifying offset and length.
If you use the addition COMPARING ALL FIELDS the contents of all fields of both lines
must be identical.
You can use this statement to delete all duplicate entries from an internal table if the table is
sorted by the specified compare criterion.
If at least one line is deleted, the system sets SY-SUBRC to 0, otherwise to 4.
Examples
DATA: BEGIN OF LINE,
COL1 TYPE I,
COL2 TYPE I,
END OF LINE.
DATA ITAB LIKE HASHED TABLE OF LINE WITH UNIQUE KEY COL1.
DO 4 TIMES.
LINE-COL1 = SY-INDEX.
LINE-COL2 = SY-INDEX ** 2.
INSERT LINE INTO TABLE ITAB.
ENDDO.
LINE-COL1 = 1.
DELETE TABLE ITAB: FROM LINE,
WITH TABLE KEY COL1 = 3.
LOOP AT ITAB INTO LINE.
WRITE: / LINE-COL1, LINE-COL2.
ENDLOOP.
The output is:
2 4
4 16
The program fills a hashed table with a list of square numbers. The DELETE
statement delete the lines from the table where the key field COL1 has the contents 1 or 3.
Regards,
Bhaskar -
Respond soon, its urgent
hi all,
cud anyone tell me the display MENU (THE TRANSACTION CODE)for SEM
pls, its urgent
cheers
princeUG00
-
hi experts'
i have to generate asset utilization report in webdynpro
inputs for report are some rfcs
i get result from rfcs
i need to float report i used bussinessgraphic object
its not interactive
if i go for tables
how to create tables with drill down inside table
how to set color for each cell of table depending on condition
please help me
its urgent
and send me code n linkHi Vani,
Your requirement has many things
1. How to call RFCs
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/webcontent/uuid/28113de9-0601-0010-71a3-c87806865f26?rid=/library/uuid/49f2ea90-0201-0010-ce8e-de18b94aee2d#15 [original link is broken]
2. Once you have data, how to work with BusinessGraphics ?
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/ba2db0e5-0601-0010-9790-e271902f2c38
(This docs contatins all the required info on webDynpro UIElements)
3.Tables
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/webcontent/uuid/28113de9-0601-0010-71a3-c87806865f26?rid=/library/uuid/49f2ea90-0201-0010-ce8e-de18b94aee2d#46 [original link is broken]
Regards,Anilkumar -
Hi All, How we can handle a table control in bdc - in detail its urgent pls
Hi All, How we can handle a table control in bdc - in detail its urgent. Please send me the explanation in detail.
Thanks®ards.
Bharathi,
Create Table Control
Step 1 (Create new structure for table control)
Type is name of structure (ZTC_EKKO) and press create
Step 2 (Create Program)
Goto transaction SE80(Object Navigator) -> Repository Browser -> Program.
Enter your program name, please ensure that is begins with SAPMZ as this is a module pool (dialog program).
Press enter to create, and press yes!
Ensure that you create a top include, and press Enter.
Accept the name created for the top include.
Press Enter.
Press Save
Step 3 (Create TOP include)
Double click on the top include and enter following ABAP code:
Tables: ZTC_EKKO.
controls: tc100 type tableview using screen 100.
data: ok_code type sy-ucomm.
data: it_ekko type standard
table of ZTC_EKKO initial size 0,
wa_ekko type ZTC_EKKO.
data: ok_code type sy-ucomm.
Press Save and Activate
Step 4 (Create screen)
Right click the program to create a screen 100 for the dialog. Enter Short description, set screen type to Normal and enter 0 or blank into Next screen. Then move to Element List tab and enter the OK code as OK_CODE (i.e. the same as what you declared in the top include with data: ok_code type sy-ucomm).
Step 5 (Create table control)
Press the Layout button to bring up the screen painter editor.
Press table control button and drag it on to the screen, enter the name of table control created in TOP include (TC100). Now press the yellow button for attributes and set the table control as below options
Step 6 (Populate table control )
Press the orange button (Fields). On the next screen enter ZTC_EKKO and press the Get from Dict button. Select the fields you want (all) and press enter. Now drag them onto your Table Control.
Below is the result, there will been syntax errors if we check now! So Save and go back into the flow logic tab.
Step 7 (Create flow control )
Within the flow logic of screen 100 and create two modules, one to select the data from the database and the other to move the selected fields into the table control. Also insert the two loop statements to populate and retrieve the lines of the table control.
PROCESS BEFORE OUTPUT.
MODULE STATUS_0100.
module data_retrieval.
loop at it_ekko into wa_ekko with control TC100.
module populate_screen.
endloop.
PROCESS AFTER INPUT.
loop at it_ekko.
endloop.
MODULE USER_COMMAND_0100.
Double click the module data_retrieval to create and click yes to get past the popup. Ensure that a new include is created to hold all the PBO modules (default). Press enter.
Select 10 rows of data from the EKKO table and load into the internal table it_ekko. Go back to the flow logic to load this data into the Table Control.
check this one
REPORT ZCALL_TRANS_TAB1 .
TABLES: LFA1,LFBK,lfb1.
data: BEGIN OF it_vendor occurs 0,
LIFNR LIKE LFA1-LIFNR,
bukrs like lfb1-bukrs,
END OF it_vendor.
DATA: BEGIN OF IT_BANK occurs 0,
LIFNR LIKE LFA1-LIFNR,
BANKS LIKE LFBK-BANKS,
BANKL LIKE LFBK-BANKL,
BANKN LIKE LFBK-BANKN,
koinh like lfbk-koinh,
END OF IT_BANK.
data: it_bdcdata like bdcdata occurs 0 with header line.
data: it_messages like bdcmsgcoll occurs 0 with header line.
*selection screen.
selection-screen: begin of block b1 with frame.
parameters: p_file like rlgrap-filename default 'c:/vendor.txt'
obligatory.
parameters: p_file1 like rlgrap-filename default 'c:/xyz.txt'
obligatory.
selection-screen: end of block b1.
*at selection screen.
at selection-screen on value-request for p_file.
perform f4_help using p_file.
at selection-screen on value-request for p_file1.
perform f4_help1 using p_file1.
*start of selection
start-of-selection.
*******uploading file
perform upload_file using p_file P_FILE1.
******open session.
perform populate_data.
*& Form f4_help
form f4_help using p_p_file.
data: l_file type ibipparms-path.
call function 'F4_FILENAME'
importing
file_name = l_file.
p_file = l_file.
endform. " f4_help
*& Form POPULATE_DATA
form populate_data .
DATA: L_STRING TYPE STRing.
DATA: L_COUNTER(2) TYPE n.
loop at it_vendor.
perform bdc_dynpro using 'SAPMF02K' '0106'.
perform bdc_field using 'BDC_CURSOR'
'RF02K-D0130'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RF02K-LIFNR'
it_vendor-lifnr.
perform bdc_field using 'RF02K-BUKRS'
it_vendor-bukrs.
perform bdc_field using 'RF02K-D0130'
'X'.
perform bdc_dynpro using 'SAPMF02K' '0130'.
perform bdc_field using 'BDC_CURSOR'
'LFBK-bankn(03)'.
perform bdc_field using 'BDC_OKCODE'
'=UPDA'.
*********bank details
CLEAR l_COUNTER.
LOOP AT IT_BANK WHERE LIFNR = IT_VENDOR-LIFNR.
l_COUNTER = l_COUNTER + 1.
clear l_string.
CONCATENATE 'lfbk-banks(' l_counter ')' into l_string.
perform bdc_field using l_string
it_bank-banks.
clear l_string.
CONCATENATE 'lfbk-bankl(' l_counter ')' into l_string.
perform bdc_field using l_string
it_bank-bankl.
clear l_string.
CONCATENATE 'lfbk-bankn(' l_counter ')' into l_string.
perform bdc_field using l_string
it_bank-bankn.
endloop.
******CALL TRANSACTION.
call transaction 'FK02' using it_bdcdata mode 'A'
messages into it_messages.
write:/ sy-subrc.
perform format_messages.
clear it_bdcdata.
refresh it_bdcdata.
endloop.
endform. " POPULATE_DATA
*& Form FORMAT_MESSAGES
form format_messages .
data: l_msg(100).
loop at it_messages.
call function 'FORMAT_MESSAGE'
exporting
id = it_messages-msgid
lang = sy-langu
no = it_messages-msgnr
v1 = it_messages-msgv1
v2 = it_messages-msgv2
v3 = it_messages-msgv3
v4 = it_messages-msgv4
importing
msg = l_msg
exceptions
not_found = 1
others = 2
write:/ l_msg.
endloop.
endform. " FORMAT_MESSAGES
*& Form bdc_dynpro
form bdc_dynpro using value(p_program)
value(p_screen).
it_bdcdata-program = p_program.
it_bdcdata-dynpro = p_screen.
it_bdcdata-dynbegin = 'X'.
append it_bdcdata.
clear it_bdcdata.
endform. " bdc_dynpro
*& Form bdc_field
form bdc_field using value(p_fnam)
value(p_fval).
it_bdcdata-fnam = p_fnam.
it_bdcdata-fval = p_fval.
append it_bdcdata.
clear it_bdcdata.
endform. " bdc_field
*& Form upload_file
form upload_file using p_p_file
p_p_file1.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
CODEPAGE = ' '
FILENAME = P_P_FILE
FILETYPE = 'DAT'
HEADLEN = ' '
LINE_EXIT = ' '
TRUNCLEN = ' '
USER_FORM = ' '
USER_PROG = ' '
DAT_D_FORMAT = ' '
IMPORTING
FILELENGTH =
TABLES
data_tab = IT_VENDOR
EXCEPTIONS
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
IF sy-subrc <> 0.
MESSAGE I000(ZZ) WITH 'UNABLE TO UPLOAD'.
STOP.
ENDIF.
*******UPLOADING BANK DETAILS
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
CODEPAGE = ' '
FILENAME = P_P_FILE1
FILETYPE = 'DAT'
HEADLEN = ' '
LINE_EXIT = ' '
TRUNCLEN = ' '
USER_FORM = ' '
USER_PROG = ' '
DAT_D_FORMAT = ' '
IMPORTING
FILELENGTH =
TABLES
data_tab = IT_BANK
EXCEPTIONS
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
IF sy-subrc <> 0.
MESSAGE I000(ZZ) WITH 'UNABLE TO UPLOAD'.
STOP.
ENDIF.
endform. " upload_file
*& Form f4_help1
-->P_P_FILE1 text
form f4_help1 using p_p_file1.
data:l_file1 type ibipparms-path.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
FILE_NAME = l_file1.
p_file1 = l_file1.
endform. " f4_help1
http://sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
Regards,
Sankar -
Its urgent pls help me .
how can i call a portal from webdynpro application
my requirment is
i was created webdynpro application.
in that i was created one view . in that i was created one button (go).
if i click that button i want move some other portal.
how can i acchive pls help me.
its urgent.
pls send any example programe
Message was edited by:
madipadiga nagaraju
Message was edited by:
madipadiga nagarajuhi,
there is no direct tcode for going to webdynpro component/interfaces in ecc 6.0.
but u have se58 in ecc 5.0,as webdynpro convertor.u give ur program name and click web dynpro convertor button then it takes u to se80 .but this wda(webdynpro abap) component comes as in application tree hierarchy .
i can say in wda component refers a class .if u select webdynpro component/interface,it ask u to create a class or interface.
after that it automatically generate component controller(it is also a class),
interface view and windows.all these 3 are classes.for every window one interface view will be created.ie.. window is internal visible where as interface view is external visible.
u create view and embed these views in windows.by going to the window layout,right click on the window name and click embed view.u can enbed as many view as u wish.in order to navigate from one view to other view ,click "create navigation" by right clicking the view plugs.
by default windows and view have inbound plugs.this is literally a event of that class.
if u want to navigate from view1 to view2 ,create outbound plug for view1,the click outbound plug of view1 and right click the click create navigation the select inbound plug of view2.
then create a application .this is simillar of creating an object.
click on this object and test .this will open in browser.
for deploying u have use "sap webdynpro iview". -
Workspace error.pls its urgent
Hi All,
I have installed hyperion 11.1.1.2 version.When I have configured workspace,I am getting the following error"Register with shared services status is failed"
Anyone could help me for this.
Please its Urgent for me.
Many thanks to all
selvahmmmm... this is a forum... not an online training portal....
You can google and find out how to create JSP(stepwise)
http://java.sun.com/products/jsp/docs.html -
How to calculate the size of the heap memory? its urgent pls
i had a task in which i need to calculate the size of the heap memory can anybody help me its urgent pls
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Runtime.html
Specifically:
max/total/freeMemory()
http://javaalmanac.com/egs/java.lang/GetHeapSize.html?l=new -
Hi All requirement on Purchase Order.Its Urgent
Hi All,
Pls provide me the soure code for the following requirement ASAP. Its urgent.
Program: Z_PO_PRINT_MAIL
Transaction: ZPOP
Purchase order number: (should be a parameter not a select option) (Code the lookup using search help MEKK)
Radio button for: 1. Print Preview
2. Print
3. E-mail
Additional parameters based on above selection:
1. No additional parameters needed
2. Printer (code the F4 to search printers)(default users default printer)
3. E-mail address, cc (should also have same validations as e-mail address)
Description:
On pressing enter, use the Purchase order number to look up vendor number and name and display either to the right or below the purchase order number.
Vendor Number: EKPO-LIFNR
Vendor Name: LFA1-NAME1
1. Print Preview: Use function ME_DISPLAY_PURCHASE_DOCUMENT with 2 parameters only:
I_EBELN = PO Number
I_PREVIEW = X
2. Print: For this we have to do a BDC.Use transaction ME9F. Enter the purchase order number, blank out the rest. Select the first message, hit Message details. Enter a new message via Edit>new Entries. For new entries, you will need to enter NEU for Output type with Medium 1 (Print output). Hit enter. Select the message and click on further data. Set dispatch time to 4. Green arrow back. Select the message and click on Communication method. Enter the Logical destination as the printer, select Print Immediately and Release after output. Green arrow back and save.
3. E-mail: Use the following function modules:
ECP_PO_OTF_CREATE
CONVERT_OTF_2_PDF
SO_NEW_DOCUMENT_ATT_SEND_API1Hi,
You can explore following link for more details;
http://www.sap-basis-abap.com/sapmo017.htm
http://www.erpgenie.com/sap/sapfunc/purchasing.htm
Bye,
Muralidhara -
hey
can any one solve this code ??
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class File1 extends JFrame
public static void showgui()
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel emptyLabel = new JLabel("");
emptyLabel.setPreferredSize(new Dimension(640, 480));
frame.getContentPane().add(emptyLabel, BorderLayout.CENTER);
JButton b1= new JButton("JENIS");
add(b1);
b1.setBounds(350,220,120,20);
JSeparator jE =new JSeparator(JSeparator.HORIZONTAL);
jE.setBounds(350, 205, 120, 20);
add(jE);
add(new JSeparator(JSeparator.HORIZONTAL));
JButton b2= new JButton("MODI");
add(b2);
b2.setBounds(100,210,100,100);
frame.pack();
frame.setVisible(true);
public static void main(String[] args)
javax.swing.SwingUtilities.invokeLater(new Runnable()
public void run()
showgui();
actually i want to use jseparator , so if this cant be solved , send me another code that uses jseparator and gives the vertical / horizontal line between two buttons??
Its urgent ,
waiting for reply............Hi,
Is this ok?
public class NewJFrameSep extends javax.swing.JFrame {
public NewJFrameSep() {
initComponents();
private void initComponents() {
jSeparator1 = new javax.swing.JSeparator();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
getContentPane().setLayout(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().add(jSeparator1);
jSeparator1.setBounds(110, 120, 170, 100);
jButton1.setText("jButton1");
getContentPane().add(jButton1);
jButton1.setBounds(160, 80, 71, 23);
jButton2.setText("jButton2");
getContentPane().add(jButton2);
jButton2.setBounds(160, 140, 71, 23);
pack();
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrameSep().setVisible(true);
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JSeparator jSeparator1;
}regards
dina -
Maximize Purchase Order -- Error -- Its Urgent!!!!
Hai To All,
Iam customizing Purchase Order Form. There iam adding one button near cancel button. If i maximum purchase order form i got the following error and SAP Application is closed.
The instruction at "0x77fcb333" referenced memory at "0x000c0101". The memeory could not be "written".
Click on OK to terminate the program
Click on CANCEL to debug the program
OK CANCEL
Can anyone help me........... Its Urgent
Regards,
Anitha
Edited by: ani nazir on Mar 27, 2008 11:43 AMHello Petr,
S where i change place also its showing error.
The following code i used to place the button
oItem = PO_Frm.Items.Add("rm", SAPbouiCOM.BoFormItemTypes.it_BUTTON)
oItem.Left = PO_Frm.Items.Item("2").Left + 75 '150 '
oItem.Width = PO_Frm.Items.Item("2").Width '65 'PO_Frm.Items.Item("51").Width
oItem.Height = PO_Frm.Items.Item("2").Height '20 '
oItem.Top = PO_Frm.Items.Item("2").Top + 10 '505 '
oItem.Visible = True
oItem.Enabled = True
Dim d As SAPbouiCOM.Button = oItem.Specific
d.Caption = "RateMaster"
Regards,
Anitha
Maybe you are looking for
-
Hello, Is there a way to run a fixed asset addition report in SAP and then export it into excel? I have run S_ALR_87012058, however, there is no way to export this into excel. Can anyone help please? Thank you, Lesley-Anne
-
Export from LR to PS no longer works
I just updated to Camera Raw8.3 and now when I'm in LR5.3 and attempt to edit an image in PS5, the image does not move from LR to PS. Should I just go back to a previous CR version?
-
SAPscript - to print a checkbox
HI ALL, I need to print a check box and a tick mark in the check box in SAPSCRIPT.Kindly send a sample code Thanks Points will be rewarded
-
How to set Google to UK version
Does anyone know how I can set the inbuilt Google search engine in Safari to search Google.co.uk instead of Google.com? I get too many non-UK resulst for my searches and I'd like to hone them down. Thanks!
-
Solaris 10 display configuration in x86
Hi, Can anybody give the command for the display resolution configuration from command prompt in solaris 10. Regards, rsvk