GeneXus - Error en RUN TIME SQL0802

 
Vista:

Error en RUN TIME SQL0802

Publicado por Viviana (4 intervenciones) el 31/07/2006 20:22:29
Tratando de grabar mediante un procedure una tabla desde un archivo plano, y despues de grabar algunos registros me tira el sig error:
SQLException [SQL0802] Error de Conversión o de Correlación de Datos...
Puede ser que venga basura o algo asi en el plano?.... Como puedo determinar si los datos que trae son validos.... es decir los numericos numeros ... etc.
Muchas gracias
Viviana
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Error en RUN TIME SQL0802

Publicado por cknu (22 intervenciones) el 31/07/2006 20:52:20
Efectivamente el error es de tipos, seguramente estés tratando de insertar un char en un numérico o algo similar.
Primero que nada, te recomendaría ir escribiendo un debug para identificar en que lugar se cae el programa. De esta forma saber lo que tiene la línea.
Luego, lo que podés hacer es algún procedimiento que valide los datos de la línea leída (o campo). No hay un procedimiento nativo de GX (al menos hasta la 8.0) del tipo isnumber o similar, los tenés que hacer a manopla.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error en RUN TIME SQL0802

Publicado por Viviana (4 intervenciones) el 31/07/2006 21:34:41
gracias por la respuesta . El tema es que : tengo ese plano que lo convierto en una cabecera y un subfile .... y otro aparte...
Si intento todo junto.... 2 registro y se cuelga
Si le quito la grabacion de la tabla que esta aparte.... aprox. 100 reg.(en Cabecera y Subfile)
Si le quito la grab del subfile (es decir solo cabecera) aprox 300 reg...
Cabe aclarar que el plano tiene aprox... 50000 (Ciencuenta mil) reg.
Por lo tanto yo se donde se cuelga ... es decir a partir de que reg del plano se cuelga. Intente descartarlos... y peor... cada vez graba menos reg...
Conclusion: estoy re perdida...
Saludos y gracias
Viviana
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error en RUN TIME SQL0802

Publicado por cknu (22 intervenciones) el 31/07/2006 22:03:14
A ver si entiendo (este último mensaje está un poco confuso):

Tenés un archivo de texto que tiene los registros de una TRN de dos niveles y lo que querés es levantarlos a la DB de una?
O el grid es parte de otra tabla vinculada por clave foránea a la tabla principal?
Como tenés los datos dispuestos en el archivo de texto? Como estás haciendo el cambio para escribir en una tabla u en otra?
Seguramente en algún lado estés escribiendo en la tabla equivocada y ahí se complica.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error en RUN TIME SQL0802

Publicado por Viviana (4 intervenciones) el 01/08/2006 20:44:54
Puesto que no tengo la funcion is Number o algo asi.. Hay alguna funcion que me devuelva el ASCII. De otros lenguajes (CHR) ? por lo menos asi puedo verificar si lo que trae en Nro, letra o cualquier otro caracter Estuve buscando un buen rato en el help y no encontre nada....
Otra vez gracias
Viviana
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error en RUN TIME SQL0802

Publicado por Patricio (2 intervenciones) el 01/08/2006 00:06:22
Buenas...

Antes que todo... unas preguntas

La carga desde tu archivo plano la haces desde el txt a una grid??

Si es que la respuesta es si... fijate que la carga la hagas de manera correcta...

O sea, una valor numerico a una varieble numerica..

Un cadena de caracteres a una variable caracter. (Esto obviamente en base al tipo de datos definidos en tus tablas donde despues vas a grabar)

Tambien puede ser que le estes asignando, por ejemplo, un valor N(5) a un atributo N(4).

Tambien recuerda que la grabacion de los datos se hace con un Prc grabando la cabezera y luego el detalle...

Utiliza el val y el str para la conversion de tus tipos de datos...

Saludos

Patricio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error en RUN TIME SQL0802

Publicado por Viviana (4 intervenciones) el 01/08/2006 18:24:35
Antes que nada Gracias por las respuestas. Es basicamente problemas de datos el TXT trae basura en algunos registros y eso es lo que me impide grabarlos.
Otra vez gracias
Viviana
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error en RUN TIME SQL0802

Publicado por Mauro (2 intervenciones) el 01/08/2006 19:20:24
Estimada Viviana probaste con golpear el equipo o cambiar Genexus por otra herramienta.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar