MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Funcion KCD_EXCEL_OLE_TO_INT_CONVERT (foro/showthread.php?t=1509)

marialeqd 24/08/06 22:57:41

Funcion KCD_EXCEL_OLE_TO_INT_CONVERT
 
Hola foro!! :D
Estoy utilizando la funcion KCD_EXCEL_OLE_TO_INT_CONVERT para subir un
archivo Excel a una tabla interna … y me esta dando la EXCEPTIONS 2 …
no se que pueda ser alguien tiene idea, o bien ah usado esta función,
Gracias de antemano por ya ayuda,
Saludo
Mary,

oarranzli 25/08/06 05:44:42

Hola:

¿Podría ser que tienes abierto el fichero Excel que quieres descargar? A veces estas funciones de descarga no funcionan porque el fichero está abierto.

Óscar

marialeqd 25/08/06 11:12:59

hola oscar gracias por tu respuesta:D , no no tengo el fichero abierto ... sabes tengo dudas con respecto a est afuncion sabes lo que pasa es que la e utilizado anteriormente pero en otra version de sap, ahora estoy en 4.6 y los parametros cambiaron anter era:

CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
EXPORTING
FILENAME = P_FILE
RANGE_BEGIN = 'A1'
RANGE_END = 'I65536'
TABLES
INTERN = int_tab
EXCEPTIONS
OTHERS = 1.
y ahora es :

CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
EXPORTING
FILENAME = P_FILE
I_BEGIN_COL = L_BEGIN_COL
I_BEGIN_ROW = L_BEGIN_ROW
I_END_COL = L_END_COL
I_END_ROW = L_END_ROW
TABLES
INTERN = INT_TAB
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3.
en un programa estandar vi que manejan el llenado de los parametros de entrada con FIELD-SYMBOLS pero aun asi lo hago y nada ... tambien declare la tabla:
TYPE KCDE_INTERN_STRUC OCCURS 0 WITH HEADER LINE. pero igual no me funciona .... por fa si alguien a trabajado con esta funcion que me de alguna idea...

oarranzli 25/08/06 12:08:15

Hola marialeqd:

No conozco esa función. ¿Por qué no pruebas con la función ALSM_EXCEL_TO_INTERNAL_TABLE?

call function 'ALSM_EXCEL_TO_INTERNAL_TABLE'
exporting
filename = (fichero_excel_origen)
i_begin_col = (columna_inicial)
i_begin_row = (fila_inicial)
i_end_col = (columna_final)
i_end_row = (fila_final)
tables
intern = (tu_tabla_interna_destino)
exceptions
inconsistent_parameters = 1
upload_ole = 2
others = 3.

Ésta no creo que te dé problemas.

Saludos,
Óscar

marialeqd 25/08/06 12:41:25

buenos dias oscar, :D gracias lo voy a intentar con esa funcion...

marialeqd 25/08/06 23:39:56

hola oscar .. pues nada eda bapi no existe en la version en la que estoy.... :confused:

oarranzli 28/08/06 07:00:31

HOLA MARIALEQD

no es una BAPI, es un módulo de funciones.

LouieBoy 30/08/06 12:55:09

Hola,
Prueba la funcion GUI_UPLOAD, por lo que he leido la función KCD_EXCEL_OLE_TO_INT_CONVERT está en deshuso, por algo será, aunque a mi personalmente nunca me ha dado problemas...

Prueba de pasarle la tabla interna con este formato, a mi me funciona :D

DATA: BEGIN OF EXCEL_TAB OCCURS 0,
ROW LIKE KCDE_CELLS-ROW,
COL LIKE KCDE_CELLS-COL,
VALUE LIKE KCDE_CELLS-VALUE.
DATA: END OF EXCEL_TAB.

La ruta tambien te puede dar problemas, o si el fichero tiene algun tipo de protección...

Espero haber sido de ayuda.

Un saludo,

LouieBoy.

marialeqd 31/08/06 15:48:36

hola, gracias por la respuesta, sabes la GUI_UPLOAD tampoco exixste en la version en la que estoy...:( .
una pregunta que parametros le pasas a KCD_EXCEL_OLE_TO_INT_CONVERT yo le estoy pasando asi:
L_BEGIN_COL = '9999'.
L_BEGIN_ROW = '9999'.
L_END_COL = '0000'.
L_END_ROW = '0000'.


DATA: L_INTERN TYPE KCDE_INTERN.

CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
EXPORTING
FILENAME = P_FILE
I_BEGIN_COL = L_BEGIN_COL
I_BEGIN_ROW = L_BEGIN_ROW
I_END_COL = L_END_COL
I_END_ROW = L_END_ROW
TABLES
INTERN = L_INTERN "INT_TAB
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3.
:confused:
me puedes dar una pista

Gregoryg 31/08/06 16:53:41

Hola

pasale a la funcion los valores que te indico a continuacion:

L_BEGIN_COL = '1'.
L_BEGIN_ROW = '1'.
L_END_COL = '256'.
L_END_ROW = '65536'.

El campo L_END_COL no puede tomar un valor por encima de 256 ya que estas son el numero de columnas maximas que puede contener una hoja excel.

Igual pasa con el Campo L_END_ROW, que es el numero de fila maximas que puede contener una hoja de excel

Si le colocas valores por encima de esos te de una exceptions.

Muy importante ninguno de los campos debe ser inicial, ya que sidejas alguno el balnco no funciona la función...

Espero que sea de tu ayuda

Saludos


Husos Horarios son GMT. La hora en este momento es 07:03:53.

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