‎2007 Jun 05 2:01 PM
Hi Guys
I need to upload data from Text file to Custom Z Table.
Anybody have done this scenario.Please give me inputs on this.
Thanks
‎2007 Jun 05 2:03 PM
data: str_Value(256).
open dataset your_file_name_and_path for input in text mode encoding default.
if sy-subrc <> 0.
exit.
endif.
do.
read dataset your_file_and_path into str_value.
if sy-subrc <> 0.
exit.
endif.
move str_value fields to custom table work area fields.
modify ztable from wa_ztable.
enddo.
‎2007 Jun 05 2:03 PM
data: str_Value(256).
open dataset your_file_name_and_path for input in text mode encoding default.
if sy-subrc <> 0.
exit.
endif.
do.
read dataset your_file_and_path into str_value.
if sy-subrc <> 0.
exit.
endif.
move str_value fields to custom table work area fields.
modify ztable from wa_ztable.
enddo.
‎2007 Jun 05 2:10 PM
Hi KrK,
Please go through the following code and implement as per your requirement.
TABLES:ZTABLE.
TYPES :
BEGIN OF UPLOAD_TYPE,
COMPANY(20),
OBJECT(20),
OBJ_TYPE(20),
POS(1),
LENGTH TYPE I,
VALUE(40),
REMARKS(40),
FLAG,
END OF UPLOAD_TYPE.
DATA : IT_INSERT TYPE TABLE OF ZTABLE,
X_INSERT LIKE LINE OF IT_INSERT.
DATA: IT_UPLOAD TYPE STANDARD TABLE OF UPLOAD_TYPE,
X_UPLOAD TYPE UPLOAD_TYPE.
DATA :IT_DATA(1000) OCCURS 0 WITH HEADER LINE,
IT_FIELD(300) OCCURS 0 WITH HEADER LINE.
DATA : V_PATH TYPE STRING.
FIELD-SYMBOLS : <FS> TYPE ANY.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS : P_PATH LIKE RLGRAP-FILENAME OBLIGATORY
DEFAULT 'C:nconv.txt',
PX_SKIP AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF BLOCK B1.
*----------------------------------------------------------------------*
* At Selection Screen *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_PATH.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
IMPORTING
FILE_NAME = P_PATH.
*----------------------------------------------------------------------*
* Start of Selection *
*----------------------------------------------------------------------*
START-OF-SELECTION.
V_PATH = P_PATH.
*Uploading the File.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = V_PATH
TABLES
DATA_TAB = IT_DATA.
PERFORM FILE_READ.
PERFORM INSERT.
*&---------------------------------------------------------------------*
*& Form FORMAT_FILE_READ
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM FILE_READ .
* Removing the Header if Flag is set.
IF NOT PX_SKIP IS INITIAL.
DELETE IT_DATA INDEX 1.
ENDIF.
LOOP AT IT_DATA.
SPLIT IT_DATA AT CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB INTO
TABLE IT_FIELD.
LOOP AT IT_FIELD.
IF NOT IT_FIELD IS INITIAL.
ASSIGN COMPONENT SY-TABIX OF STRUCTURE X_UPLOAD TO <FS>.
<FS> = IT_FIELD.
ENDIF.
ENDLOOP.
APPEND X_UPLOAD TO IT_UPLOAD.
CLEAR: IT_FIELD ,X_UPLOAD .
REFRESH : IT_FIELD.
ENDLOOP.
ENDFORM. " FORMAT_FILE_READ
*&---------------------------------------------------------------------*
*& Form insert_nconv
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM INSERT .
LOOP AT IT_UPLOAD INTO X_UPLOAD.
MOVE-CORRESPONDING X_UPLOAD TO X_INSERT.
X_INSERT-MANDT = SY-MANDT.
APPEND X_INSERT TO IT_INSERT.
CLEAR X_INSERT.
ENDLOOP.
INSERT ZTABLE FROM TABLE IT_INSERT.
IF SY-SUBRC EQ 0.
MESSAGE I001(38).
ELSE.
MESSAGE E001(38).
ENDIF.
ENDFORM.
I hope this would solve your problem
Regards
Anil Madhavan