xHarbour+tipos de datos+ado+oracle-VER SOLUCION!!!

Post Reply
User avatar
metaldrummer
Posts: 113
Joined: Wed Jan 10, 2007 8:43 pm
Location: Coquimbo-Chile
Contact:

xHarbour+tipos de datos+ado+oracle-VER SOLUCION!!!

Post by metaldrummer »

A ver:
Me encuentro con un gran problema:

Cuando hago lo siguiente:

Code: Select all

objetoado:AddNew()
objetoado:Fields("idproducto"):value:=1234567890
objetoado:Update()
No hay problemas.

Sin embargo si hago lo mismo pero utilizo un número de longitud mayor a 10 dígitos ado se cae. Por ejemplo

Code: Select all

objetoado:Fields("idproducto"):value:=123456789012345
Se cae.

Este problema se me presenta ya que estoy utilizando código ean13 en el idproducto que son de largo 13.
Alguien que me indique si puedo declarar una variable como real, double, etc en xHarbour.
Donde puedo obtener todos los tipos de datos que maneja xharbour y como declararlos?

Esto me tiene parado y tenemos un sistema en producción que desde hoy debe comenzar a trabajar todos los idproducto con el código ean13.

Esto es muy urgente. Debo solucionar esto antes de 3 horas.
Muchas gracias.
Last edited by metaldrummer on Thu Oct 11, 2007 11:55 am, edited 1 time in total.
David Lagos S.
Coquimbo-Chile
www.wificafe.cl
webmaster@wificafe.cl
User avatar
Baxajaun
Posts: 853
Joined: Wed Oct 19, 2005 2:17 pm
Location: Gatika. Bizkaia

Post by Baxajaun »

Hola David,

el problema no será por el tipo de dato definido en Oracle y el tamaño de este. xHarbour utiliza los tipos de datos de Clipper.

Saludos,

Félix
User avatar
metaldrummer
Posts: 113
Joined: Wed Jan 10, 2007 8:43 pm
Location: Coquimbo-Chile
Contact:

Post by metaldrummer »

Baxajaun wrote:Hola David,

el problema no será por el tipo de dato definido en Oracle y el tamaño de este. xHarbour utiliza los tipos de datos de Clipper.

Saludos,

Félix
Gracias por tu respuesta.
El tema ya lo solucioné. Hay una limitación en ADO para el tamaño de los números.
Se resuelve simplemente enviando como string el valor numérico. No importa si el campo que recibe el dato es numérico ya que el motor, en este caso oracle, se encarga de evaluar de forma adecuada el dato.

Espero que esto les sirva a muchos.
Saludos
David Lagos S.
Coquimbo-Chile
www.wificafe.cl
webmaster@wificafe.cl
Post Reply