FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
D2009 no funcionan los componentes Interbase
Hola compañeros,
Tengo un problema en Delphi 2009 (uno más): los componentes Interbase no funcionan con collate en español En Firebird 2.5, en una base de datos creada con character set ISO8859_1, creo una tabla:
En Delphi2009 , utilizo un TIBDatabase, y un TIBTransaction Conecto tIBDatabase con lc_ctype=ISO8859_1 Abro la tabla con TIBTable y da error Division by zero con un TIBquery: select * from PRUEBA da error Division by zero select codigo from PRUEBA funciona bien select nombre from PRUEBA da error Division by zero Parece ser que el problema es del collate ES_ES_CI_AI del campo ya que si creo una tabla sin el collate, funciona bien. El mismo programa, en delphi 7, funciona sin problemas (maldito el día que decidi migrar a D2009!). ¿Alguien sabe como podria solucionarlo? El tema es grave ya que me es imposible trabajar sin las ordenaciones en español y si no logro solucionarlo tendré que buscar otros componentes y cambiar las aplicaciones. Gracias de antemano, Quim Herrera Última edición por Casimiro Notevi fecha: 26-05-2011 a las 11:52:39. |
#2
|
||||
|
||||
Me extraña bastante, la verdad, aunque no puedo probarlo porque no tengo esa versión de Delphi.
|
#3
|
|||
|
|||
Pues parece que habra que irse olvidando de los componentes Interbase. Acabo de encontrar esto:
https://forums.embarcadero.com/messa...essageID=43388 Codegear ya no los soporta oficialmente. Aunque tampoco es una garantia que los soporte: Delphi 2009 esta lleno de bugs que hay que resolver con parches de terceros. Si no hay nadie que sepa y pueda solicionarlo habra que buscarse la vida con otros componentes. Saludos, Quim Herrera |
#4
|
||||
|
||||
Nunca ha soportado Firebird, eso no es nuevo , por eso siempre hemos dicho que "normalmente" no tendrás problemas con ellos (IBX), pero habrá cositas que no funcionarán, tú has encontrado una de ellas.
|
#5
|
|||
|
|||
Pues, que quieres que te diga, la cosita que no funciona es justamente la ordenación. Al dar error con los campos que tienen algún colate definido (colate ES_ES y colate ES_ES_CI_AI ) te obliga a no definirlos con colate y por tanto te ordena primero las mayúsculas, despues las minusculas, luego la eñes i después los acentos.
Para mi es suficientemente importante como para descartar los componentes Interbase. No sé si hay otra forma de ordenar correctamente en un idioma no inglés y que lo admitan estos componentes en Delphi 2009. Lo he buscado y no he encontrado nada. Tendré que pasarme a Zeos pero con Delphi 2009 sólo funciona Zeos 7 alfa (que miedo, no es ni beta) y ya me esta empezando a dar problemas. Pero esto es harina de otro hilo. Saludos, |
#6
|
||||
|
||||
Yo uso FIBplus, aunque cuestan un poquito.
|
#7
|
|||
|
|||
Gracias Casimiro, les echaré una ojeada. De todos modos acabo de encontrar la solución:
http://qc.embarcadero.com/wc/qcmain.aspx?d=68103 Lo reexplico porque me ha dada algún problema: Hay que modificar IBSQL.pas (C:\Archivos de programa\CodeGear\RAD Studio\6.0\source\Win32\IBX) Cambiar: por:
Guardar el siguiente código como ibxpress120.dpk: (C:\Archivos de programa\CodeGear\RAD Studio\6.0\source\Win32\IBX)
Desinstalar IBexpress ( Component -> Install Packages -> Remove) Abrir ibxpress120.dpk: (C:\Archivos de programa\CodeGear\RAD Studio\6.0\source\Win32\IBX) Compilar. Da un warning: hay que decirle que lo ignore porque si lo arregla luego da errores. Instalar. También hay que ignorar el warning. y ya funciona. También funciona el método "bruto": copiar IBSQL.pas modificado en la carpeta del proyecto (pero hay que hacerlo en todos los proyectos). Saludos, Quim Herrera |
#8
|
||||
|
||||
Gracias por el aporte
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
decisionCube D2009 | ofillia | Conexión con bases de datos | 0 | 31-03-2009 20:28:39 |
Problema con UDF de Interbase y D2009 | Efren2006 | SQL | 0 | 16-02-2009 01:36:38 |
Hints en D2009 | JF Sebastian | OOP | 1 | 02-01-2009 09:46:28 |
No funcionan componentes TSelectOnRuntime cuando estan controles dentro de un panel | gulder | API de Windows | 6 | 11-08-2006 09:58:50 |
Cambio ordenador, componentes no funcionan | javiermorales | OOP | 4 | 10-11-2004 11:05:47 |
|