MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 30/03/06, 17:25:34
josefon josefon is offline
Member
 
Fecha de Ingreso: mar 2006
Mensajes: 61
Cargar un archivo EXCEL

Que tal! como estan??

Bueno les comento que necesito cargar en una tabla interna un archivo en excel pero no encuentro como cargarlo alguien sabe que funcion puedo utilizar???

Gracias
saludos
Responder Con Cita
  #2  
Viejo 30/03/06, 18:19:13
Mike Mike is offline
Senior Member
 
Fecha de Ingreso: mar 2006
Localización: Venezuela
Mensajes: 144
Josefon

Esta Función se encarga de pasar lo que tienes en un documento excel a una tabla interna

CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
EXPORTING
FILENAME = 'Ruta y nombre del archivo excel'
I_BEGIN_COL = Columna en donde comienza el archivo
I_BEGIN_ROW = Fila e donde comienza el archivo
I_END_COL = Ultima columna del archivo
I_END_ROW = Ultima fila del archivo
TABLES
INTERN = Tabla interna a llenar
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2.

Ya ahi lo que tienes que hacer es jugar con la tabla interna, dependiendo de lo que quieras hacer..

Saludos,
Mike
Responder Con Cita
  #3  
Viejo 30/03/06, 18:40:04
josefon josefon is offline
Member
 
Fecha de Ingreso: mar 2006
Mensajes: 61
Muchas gracias Mike!!

ya la habia encontrado esa.. lo que me causa ruido es el hecho de que tengo que decirle en que columna empezar y cual terminar.. no???

gracias
saludos
Responder Con Cita
  #4  
Viejo 30/03/06, 20:57:14
Mike Mike is offline
Senior Member
 
Fecha de Ingreso: mar 2006
Localización: Venezuela
Mensajes: 144
Si, es verdad pero bueno eso es lo que hay, y hasta los momentos me ha funcionado, claro tienes que saber la fila y columna en la que empieza y termina el archivo... Si consigues otra me gustaria saberla.

Suerte,


Saludos,
Mike
Responder Con Cita
  #5  
Viejo 03/04/06, 15:43:03
josefon josefon is offline
Member
 
Fecha de Ingreso: mar 2006
Mensajes: 61
Que tal!! pues despues de 2 dias de busqueda pues por fin encontre una forma de subir un archivo en excel a una tabla interna.
la funcion se llama TEXT_CONVERT_XLS_TO_SAP. aki el ejemplo.

CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
EXPORTING
i_line_header = 'X' "Si dejan este campo te quita una linea de tu archivo como header
i_tab_raw_data = it_raw " WORK TABLE
i_filename = p_entra
TABLES
i_tab_converted_data = t_upload[] "ACTUAL DATA
EXCEPTIONS
conversion_failed = 1
OTHERS = 2.

lo malo es que si se tarda un poco.. por ejemplo con
150 lineas se tardo 1.48 minutos y con 1350 se tardo 10.40 minutos

se me habia ocurrido que si tu sabes cuantas lineas y columnas tiene tu EXCEL pues ocupar la funcion propuesta por MIKE pero si no sabes cuantas trae pues ocupar la TEXT_CONVERT_XLS_TO_SAP voy a invertigar si hay una forma de mejorar esta funcion para reducir el tiempo de carga..

en fin ojala les funcione...

saludos

Úlima edición por josefon fecha: 03/04/06 a las 17:58:59.
Responder Con Cita
  #6  
Viejo 11/04/06, 06:35:06
Avatar de Marco
Marco Marco is offline
Senior Member
 
Fecha de Ingreso: abr 2006
Mensajes: 141
Hola,
Claro... la funcion en donde poner parametros es mas rapida, el otro modo te levanta todo el Excel al parecer (muy lento). Lo q se tiene q definir seria un standard en el formato excel, para de esa manera saberla y subir solo lo especifico (es lo recomendado).. Ahora si no sabes y quieres subir Excel de cualquier tamaño, como que se tardará tu mismo lo haz visto. Mas bien si quieres hacer eso por ahi se me acurre que crees un paso mas, el de convertir tu Excel a Texto y subirlo como texto (separado por espacios), es mucho mas rapido comparado con el Excel y tienes el mismo resultado.

Saludos
Cuidense,
Responder Con Cita
  #7  
Viejo 11/03/08, 08:53:58
ominorca ominorca is offline
Junior Member
 
Fecha de Ingreso: jul 2007
Mensajes: 11
Buenas estoy usando la misma funcion pero me da un error.
Mi codigo es este:
CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
def_filename = p_file
def_path = 'c:\'
mask = ',*.* ,*.*.'
mode = 'O'
IMPORTING
filename = p_file
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.

START-OF-SELECTION.

CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
EXPORTING
* I_FIELD_SEPERATOR =
* I_LINE_HEADER =
i_tab_raw_data = w_tabla
i_filename = p_file
tables
i_tab_converted_data = t_tabla
* EXCEPTIONS
* CONVERSION_FAILED = 1
* OTHERS = 2


P_file lleva el fichero.
T_tabla la tabla a cargar.
w_tabla esta definido como en la funcion pero no se que le tengo que pasar.
Un saludo.
Responder Con Cita
  #8  
Viejo 20/10/08, 15:50:51
mamt mamt is offline
Junior Member
 
Fecha de Ingreso: sep 2006
Mensajes: 10
Carga Archivo Excel

hola sabes que al ejecutar el programa que carga la funcion , me da un error


Type conflict when calling function module "KCD_EXCEL_OLE_TO_INT_CONVERT".

sabes a qe se debe este error, ahora si tienes otra funcion te lo agradeciria
gracias


Cita:
Originalmente Escrito por Mike
Josefon

Esta Función se encarga de pasar lo que tienes en un documento excel a una tabla interna

CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
EXPORTING
FILENAME = 'Ruta y nombre del archivo excel'
I_BEGIN_COL = Columna en donde comienza el archivo
I_BEGIN_ROW = Fila e donde comienza el archivo
I_END_COL = Ultima columna del archivo
I_END_ROW = Ultima fila del archivo
TABLES
INTERN = Tabla interna a llenar
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2.

Ya ahi lo que tienes que hacer es jugar con la tabla interna, dependiendo de lo que quieras hacer..

Saludos,
Mike
Responder Con Cita
  #9  
Viejo 20/10/08, 16:21:41
Avatar de DavidXD_XD
DavidXD_XD DavidXD_XD is offline
Moderator
 
Fecha de Ingreso: ago 2006
Localización: Lima - Perú
Mensajes: 1,255
Hola ... yo cargo una tabla interna desde un excel con la funcion:
ALSM_EXCEL_TO_INTERNAL_TABLE

Código:
*&---------------------------------------------------------------------* *& Form upload_excel *&---------------------------------------------------------------------* * Cargar archivo excel *----------------------------------------------------------------------* * -->PT_DUA : Tabla interna de estructura de archivo excel * -->P_PATH : Ruta de archivo excel *----------------------------------------------------------------------* FORM upload_excel TABLES pt_dua LIKE ti_dua[] USING p_path. * Variables globales DATA: lt_excel TYPE TABLE OF alsmex_tabline, l_index TYPE i. DATA: l_cont(2) TYPE c, l_cadena TYPE string, l_start_col TYPE i VALUE 1, l_start_row TYPE i VALUE 5, l_end_col TYPE i VALUE 6, l_end_row TYPE i VALUE 65536. CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' EXPORTING FILENAME = p_path I_BEGIN_COL = l_start_col I_BEGIN_ROW = l_start_row I_END_COL = l_end_col I_END_ROW = l_end_row TABLES INTERN = lt_excel 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. CHECK NOT lt_excel[] IS INITIAL. FIELD-SYMBOLS: <fs_excel> LIKE LINE OF lt_excel, <fs>. LOOP AT lt_excel ASSIGNING <fs_excel>. IF <fs_excel>-col = '0001'. l_cont = strlen( <fs_excel>-value ). IF l_cont NE '18'. EXIT. ENDIF. ENDIF. MOVE <fs_excel>-col TO l_index. ASSIGN COMPONENT l_index OF STRUCTURE pt_dua TO <fs>. MOVE <fs_excel>-value TO <fs>. AT END OF row. APPEND pt_dua. CLEAR pt_dua. ENDAT. ENDLOOP. ENDFORM. " upload_excel
__________________
David Carballido Córdova
Responder Con Cita
  #10  
Viejo 12/02/09, 20:33:11
Avatar de lauracarolina
lauracarolina lauracarolina is offline
Member
 
Fecha de Ingreso: jul 2008
Localización: Lima Peru
Mensajes: 32
pregunta

hola david...dime y si no sabes cual es el final de la tabla en excel??se el inicio de la tabla en un formato que me dan pero no se cuantas filas pueda tener ya que varian....gracias de antemano
__________________
LAURA CAROLINA VASQUEZ NOVOA-ING INFORMATICA
Consultora ABAP
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 21:56:22.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web