You are on page 1of 3

Code listing for: ZTM_FI_ZORDER

Description: fi: for uploading data in zorder


*&---------------------------------------------------------------------*
*& Report ZTM_FI_ZORDER *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*

REPORT ZTM_FI_ZORDER .

tables : zorder.

data : begin of it occurs 0,


mandt like sy-mandt,
AUFNR like zorder-aufnr,
PLANT like zorder-PLAnt ,
UNIT like zorder-UNIT,
MATERIAL like zorder-Material,
TEXT like zorder-Text,
end of it.
DATA :IT1 TYPE TABLE OF ALSMEX_TABLINE WITH HEADER LINE .

SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETERS : P_FILE LIKE RLGRAP-FILENAME .


SELECTION-SCREEN : END OF BLOCK B1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.


CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
PROGRAM_NAME = SYST-REPID
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
* STATIC = ' '
* MASK = ' '
CHANGING
FILE_NAME = P_FILE
EXCEPTIONS
MASK_TOO_LONG = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
* message E000 with text-e01.
ENDIF.

START-OF-SELECTION.

perform EXCEL_TO_IT.

PERFORM UPLOAD_IN_IT.
if it[] is not initial.
loop at it.
insert zorder from it .
endloop.
message 'UPDATED SUCESSFULLY' type 'I'.
endif.
clear it[].
exit.

END-OF-SELECTION.

************ ***************************** excel to internal


table***********************************************
FORM EXCEL_TO_IT.

DATA : BG_COL TYPE I VALUE 1,


BG_ROW TYPE I VALUE 1,
BG_ENDCOL TYPE I VALUE 6,
BG_ENDROW TYPE I VALUE 500.

CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'


EXPORTING
FILENAME = P_FILE
I_BEGIN_COL = BG_COL
I_BEGIN_ROW = BG_ROW
I_END_COL = BG_ENDCOL
I_END_ROW = BG_ENDROW
TABLES
INTERN = IT1
* EXCEPTIONS
* INCONSISTENT_PARAMETERS = 1
* UPLOAD_OLE = 2
* OTHERS = 3
.
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. "excel_to_it

*&---------------------------------------------------------------------*
*& Form UPLOAD_IN_it
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM UPLOAD_IN_IT .

LOOP AT IT1 WHERE ROW GT 1.


CASE IT1-COL.

WHEN '1'.

MOVE IT1-VALUE TO it-mandt.


SHIFT it-mandt LEFT DELETING LEADING SPACE.

WHEN '2'.

MOVE IT1-VALUE TO it-aufnr.


* SHIFT it-aufnr LEFT DELETING LEADING SPACE.

WHEN '3'.

MOVE IT1-VALUE TO it-Plant.


SHIFT it-Plant LEFT DELETING LEADING SPACE.

WHEN '4'.

MOVE IT1-VALUE TO it-Unit.


SHIFT it-unit LEFT DELETING LEADING SPACE.
WHEN '5'.

MOVE IT1-VALUE TO it-Material.


* SHIFT it-Material LEFT DELETING LEADING SPACE.
WHEN '6'.

MOVE IT1-VALUE TO it-text.


SHIFT it-text LEFT DELETING LEADING SPACE.

ENDCASE.
AT END OF ROW.
APPEND it.
CLEAR it.

ENDAT.
ENDLOOP.

ENDFORM. " UPLOAD_IN_it

*Messages
*----------------------------------------------------------
*
* Message class: Hard coded
* UPDATED SUCESSFULLY
Extracted by Direct Download Enterprise version 1.2 - E.G.Mellodew. 1998-2004 UK.

You might also like