File format is shown below –
*& Report Z_MIGO_GR
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT Z_MIGO_GR.
Data: ITHEADER type STANDARD TABLE OF BAPI2017_GM_HEAD_01.
Data: WAHEADER LIKE LINE OF ITHEADER.
DATA: ITCODE TYPE TABLE OF BAPI2017_GM_CODE.
DATA: WACODE LIKE LINE OF ITCODE.
DATA: V_MATNR TYPE BAPI2017_GM_HEAD_RET-MAT_DOC.
DATA: V_MAJHR TYPE BAPI2017_GM_HEAD_RET-DOC_YEAR.
DATA: ITITEM type TABLE OF BAPI2017_GM_ITEM_CREATE.
DATA: WAITITEM LIKE LINE OF ITITEM.
DATA: ITRETURN TYPE TABLE OF BAPIRET2.
DATA: WAITRETURN LIKE LINE OF ITRETURN.
TYPES : BEGIN OF ST,
EBELN(10),
EBELP(5),
BUDAT(10),
XBLNR(16),
FRBNR(16),
XABLN(10),
MATNR(18),
WERKS(4),
LGORT(4),
CHARG(10),
BWART(3),
MENGE(13),
END OF ST.
DATA : ITAB TYPE TABLE OF ST.
DATA : WA TYPE ST.
DATA: W_FILENAME TYPE STRING.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-500.
PARAMETERS: P_FILENM LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK B1.
START-OF-SELECTION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILENM.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
MASK = ',*.*,*.*.'
MODE = '0'
TITLE = 'GET FILE NAME'
IMPORTING
FILENAME = P_FILENM
EXCEPTIONS
INV_WINSYS = 1
NO_BATCH = 2
SELECTION_CANCEL = 3
SELECTION_ERROR = 4
OTHERS = 5.
** END OF CHANGE DCS05052003
** START OF CHANGE DCS05052003
START-OF-SELECTION.
W_FILENAME = P_FILENM.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
** FILENAME = 'C:\BDC_XLS_ASSIGN.TXT'
FILENAME = W_FILENAME
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = ITAB
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17.
.
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 ITAB into WA.
CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
EXPORTING
DATE_EXTERNAL = WA-BUDAT
* ACCEPT_INITIAL_DATE =
IMPORTING
DATE_INTERNAL = WA-BUDAT
* EXCEPTIONS
* DATE_EXTERNAL_IS_INVALID = 1
* OTHERS = 2
.
WAHEADER-PSTNG_DATE = WA-BUDAT.
WAHEADER-DOC_DATE = WA-BUDAT.
WAHEADER-REF_DOC_NO = WA-XBLNR.
WAHEADER-BILL_OF_LADING = WA-FRBNR.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = wa-XABLN
IMPORTING
OUTPUT = wa-XABLN.
WAHEADER-GR_GI_SLIP_NO = wa-XABLN.
append WAHEADER to ITHEADER.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = WA-MATNR
IMPORTING
OUTPUT = WA-MATNR.
WAITITEM-MATERIAL = WA-MATNR.
WAITITEM-PLANT = WA-WERKS.
WAITITEM-STGE_LOC = WA-LGORT.
WAITITEM-BATCH = WA-CHARG.
WAITITEM-MOVE_TYPE = WA-BWART.
WAITITEM-ENTRY_QNT = WA-MENGE.
WAITITEM-PO_NUMBER = WA-EBELN.
WAITITEM-PO_ITEM = WA-EBELP.
WAITITEM-MVT_IND = 'B'.
append WAITITEM to ITITEM.
CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
EXPORTING
GOODSMVT_HEADER = WAHEADER
GOODSMVT_CODE = '01'
* TESTRUN = ' '
* GOODSMVT_REF_EWM =
IMPORTING
* GOODSMVT_HEADRET =
MATERIALDOCUMENT = V_MATNR
MATDOCUMENTYEAR = V_MAJHR
TABLES
GOODSMVT_ITEM = ITITEM
* GOODSMVT_SERIALNUMBER =
RETURN = ITRETURN
* GOODSMVT_SERV_PART_DATA =
* EXTENSIONIN =
.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'
* IMPORTING
* RETURN =
.
clear: ITHEADER, ITITEM.
Write: v_MATNR, V_MAJHR.
NEW-LINE.
ENDLOOP.
Copy the data and paste it in TXT file.
Browse the TXT File
*&---------------------------------------------------------------------**& Report Z_MIGO_GR
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT Z_MIGO_GR.
Data: ITHEADER type STANDARD TABLE OF BAPI2017_GM_HEAD_01.
Data: WAHEADER LIKE LINE OF ITHEADER.
DATA: ITCODE TYPE TABLE OF BAPI2017_GM_CODE.
DATA: WACODE LIKE LINE OF ITCODE.
DATA: V_MATNR TYPE BAPI2017_GM_HEAD_RET-MAT_DOC.
DATA: V_MAJHR TYPE BAPI2017_GM_HEAD_RET-DOC_YEAR.
DATA: ITITEM type TABLE OF BAPI2017_GM_ITEM_CREATE.
DATA: WAITITEM LIKE LINE OF ITITEM.
DATA: ITRETURN TYPE TABLE OF BAPIRET2.
DATA: WAITRETURN LIKE LINE OF ITRETURN.
TYPES : BEGIN OF ST,
EBELN(10),
EBELP(5),
BUDAT(10),
XBLNR(16),
FRBNR(16),
XABLN(10),
MATNR(18),
WERKS(4),
LGORT(4),
CHARG(10),
BWART(3),
MENGE(13),
END OF ST.
DATA : ITAB TYPE TABLE OF ST.
DATA : WA TYPE ST.
DATA: W_FILENAME TYPE STRING.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-500.
PARAMETERS: P_FILENM LIKE RLGRAP-FILENAME.
SELECTION-SCREEN END OF BLOCK B1.
START-OF-SELECTION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILENM.
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
MASK = ',*.*,*.*.'
MODE = '0'
TITLE = 'GET FILE NAME'
IMPORTING
FILENAME = P_FILENM
EXCEPTIONS
INV_WINSYS = 1
NO_BATCH = 2
SELECTION_CANCEL = 3
SELECTION_ERROR = 4
OTHERS = 5.
** END OF CHANGE DCS05052003
** START OF CHANGE DCS05052003
START-OF-SELECTION.
W_FILENAME = P_FILENM.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
** FILENAME = 'C:\BDC_XLS_ASSIGN.TXT'
FILENAME = W_FILENAME
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = ITAB
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17.
.
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 ITAB into WA.
CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
EXPORTING
DATE_EXTERNAL = WA-BUDAT
* ACCEPT_INITIAL_DATE =
IMPORTING
DATE_INTERNAL = WA-BUDAT
* EXCEPTIONS
* DATE_EXTERNAL_IS_INVALID = 1
* OTHERS = 2
.
WAHEADER-PSTNG_DATE = WA-BUDAT.
WAHEADER-DOC_DATE = WA-BUDAT.
WAHEADER-REF_DOC_NO = WA-XBLNR.
WAHEADER-BILL_OF_LADING = WA-FRBNR.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = wa-XABLN
IMPORTING
OUTPUT = wa-XABLN.
WAHEADER-GR_GI_SLIP_NO = wa-XABLN.
append WAHEADER to ITHEADER.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = WA-MATNR
IMPORTING
OUTPUT = WA-MATNR.
WAITITEM-MATERIAL = WA-MATNR.
WAITITEM-PLANT = WA-WERKS.
WAITITEM-STGE_LOC = WA-LGORT.
WAITITEM-BATCH = WA-CHARG.
WAITITEM-MOVE_TYPE = WA-BWART.
WAITITEM-ENTRY_QNT = WA-MENGE.
WAITITEM-PO_NUMBER = WA-EBELN.
WAITITEM-PO_ITEM = WA-EBELP.
WAITITEM-MVT_IND = 'B'.
append WAITITEM to ITITEM.
CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
EXPORTING
GOODSMVT_HEADER = WAHEADER
GOODSMVT_CODE = '01'
* TESTRUN = ' '
* GOODSMVT_REF_EWM =
IMPORTING
* GOODSMVT_HEADRET =
MATERIALDOCUMENT = V_MATNR
MATDOCUMENTYEAR = V_MAJHR
TABLES
GOODSMVT_ITEM = ITITEM
* GOODSMVT_SERIALNUMBER =
RETURN = ITRETURN
* GOODSMVT_SERV_PART_DATA =
* EXTENSIONIN =
.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'
* IMPORTING
* RETURN =
.
clear: ITHEADER, ITITEM.
Write: v_MATNR, V_MAJHR.
NEW-LINE.
ENDLOOP.
No comments:
Post a Comment