Ver Mensaje Individual
  #6  
Viejo 13/02/08, 22:44:22
larmadovr larmadovr is offline
Member
 
Fecha de Ingreso: ene 2008
Localización: Monterrey N.L. México
Mensajes: 77
Thumbs up Prueba con lo siguiente:

Lee un archivo excel delimitado por comas o tabuladores.

Primero lo pasa a una tabla que contiene solo un registro, y despues lo reparte en los campos que sean necesario con el SPLIT dentro de un loop.


DATA: BEGIN OF I_REG OCCURS 0,
FIELD(200) TYPE C.
DATA: END OF I_REG.

DATA: BEGIN OF TI_DATOS OCCURS 0,
HAUS like BDCDATA-FVAL,
REGIOGROUP like BDCDATA-FVAL,
STR_SUPPL2 like BDCDATA-FVAL,
STREET like BDCDATA-FVAL,
HOUSE_NUM1 like BDCDATA-FVAL,
HOUSE_NUM2 like BDCDATA-FVAL,
REGPOLIT like BDCDATA-FVAL,
REGIOGROUP2 like BDCDATA-FVAL.
DATA: END OF TI_DATOS.


FORM F_CARGA_ARCHIVO.
CALL FUNCTION 'UPLOAD'
EXPORTING
FILETYPE = 'ASC'
IMPORTING
CANCEL = V_CANCEL
TABLES
DATA_TAB = I_REG
EXCEPTIONS
CONVERSION_ERROR = 1
INVALID_TABLE_WIDTH = 2
INVALID_TYPE = 3
NO_BATCH = 4
UNKNOWN_ERROR = 5
GUI_REFUSE_FILETRANSFER = 6
OTHERS = 7.
IF SY-SUBRC NE 0.

LOOP AT I_REG.
SPLIT I_REG AT ',' INTO TI_DATOS-HAUS
TI_DATOS-REGIOGROUP
TI_DATOS-STR_SUPPL2
TI_DATOS-STREET
TI_DATOS-HOUSE_NUM1
TI_DATOS-HOUSE_NUM2
TI_DATOS-REGPOLIT
TI_DATOS-REGIOGROUP2.
IF NOT TI_DATOS-HAUS IS INITIAL.
APPEND TI_DATOS.
ENDIF.
ENDLOOP.
ENDFORM. " F_CARGA_ARCHIVO


Espero te haya servido.
Responder Con Cita