![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Componentes Mercury - como actualizarlos
Hola, nuevamente necesito su ayuda, tengo varios sistemas con Delphi 2007 y los componentes MDO Lib (Mercury Database Objects) para acceder a Firebird , el problema es que no es posible instalar en las ultimas versiones de Delphi y en la página del creador no hay información, hay alguna manera de cambiar componentes de una manera más fácil o si es posible modificar esos componentes para que sea posible instalarlos, muchas gracias a todos.
|
#2
|
||||
|
||||
Supongo que habra que hacer cambios en los "requires" para adaptarlos a los nuevos delphi:
Código:
requires vcl, vcldb, designide, dcldb,
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
|||
|
|||
Muchas gracias por la respuesta, estos son los errores que da al ejecutar la opción "build all proyects" , me daría el trabajo de dar solución a los problemas pero me gustaría saber la opinión de los que saben más si sería posible hacerlo, nuevamente muchas gracias.
Código:
[dcc32 Hint] MDOCustomDataSet.pas(95): H2365 Override method TMDOStringField.create should match case of ancestor TStringField.Create [dcc32 Error] MDOCustomDataSet.pas(290): E2037 Declaration of 'AllocRecordBuffer' differs from previous declaration [dcc32 Error] MDOCustomDataSet.pas(294): E2137 Method 'ClearCalcFields' not found in base class [dcc32 Error] MDOCustomDataSet.pas(302): E2037 Declaration of 'FreeRecordBuffer' differs from previous declaration [dcc32 Error] MDOCustomDataSet.pas(304): E2137 Method 'GetBookmarkData' not found in base class [dcc32 Error] MDOCustomDataSet.pas(305): E2137 Method 'GetBookmarkFlag' not found in base class [dcc32 Error] MDOCustomDataSet.pas(310): E2137 Method 'GetRecord' not found in base class [dcc32 Error] MDOCustomDataSet.pas(314): E2137 Method 'InitRecord' not found in base class [dcc32 Error] MDOCustomDataSet.pas(328): E2137 Method 'InternalInitRecord' not found in base class [dcc32 Error] MDOCustomDataSet.pas(338): E2137 Method 'InternalSetToRecord' not found in base class [dcc32 Hint] MDOCustomDataSet.pas(345): H2365 Override method TMDOCustomDataSet.PsGetTableName should match case of ancestor TDataSet.PSGetTableName [dcc32 Error] MDOCustomDataSet.pas(356): E2137 Method 'SetBookmarkData' not found in base class [dcc32 Error] MDOCustomDataSet.pas(357): E2137 Method 'SetBookmarkFlag' not found in base class [dcc32 Error] MDOCustomDataSet.pas(413): E2137 Method 'GetCurrentRecord' not found in base class [dcc32 Error] MDOCustomDataSet.pas(609): E2072 Number of elements (36) differs from declaration (52) [dcc32 Error] MDOQuery.pas(374): E2029 ':=' expected but ':' found [dcc32 Error] MDOQuery.pas(375): E2010 Incompatible types: 'TFieldType' and 'procedure, untyped pointer or untyped parameter' [dcc32 Fatal Error] MDOCustomDataSet.pas(675): F2063 Could not compile used unit 'MDOQuery.pas' |
#4
|
||||
|
||||
Me temo que tendrás que ir solucionando una a una cada línea de error que muestras.
A las malas, si no queda más remedio, creo que será más fácil adaptar tu programa a las IBX.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
||||
|
||||
Si has buscado versiones nuevas de los componentes y no están, la verdad es que tiene mala pinta. Porque los errores no son temas de conversión o de tipos que hayan cambiado, sino que se queja de que hay métodos que no existen. O porque ha cambiado su visibilidad o porque hay que implementarlos.
No parece tarea fácil sin conocer los componentes. Yo haría una pruebas para cambiar a componentes estandard de delphi, ya sean los IBX o (casi mejor) FireDAC, para ver si son compatibles. Si finalmente deseas cambiar creo que hay alguna utilidad que te ayuda a cambiar unos componentes por otros (GExperts/cnWizards)
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
||||
|
||||
Y en qué versión de Delphi estás instalándalo.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
|||
|
|||
Cita:
En Delphi Berlin. Muchas gracias por sus respuestas. |
#8
|
|||
|
|||
Cita:
|
#9
|
||||
|
||||
Con reFind, puedes hacer el reemplazo de componentes, propiedades, métodos, cambiar los uses, etc.
Lo usé para migrar de la versión de Firedac en XE3 (TAD) a la de Tokyo (TFD) y hasta sirve para modificar los DPR
__________________
Buena caza y buen remar... http://mivaler.blogspot.com |
#10
|
|||
|
|||
Cita:
|
#11
|
||||
|
||||
Esta es la opción de los GExperts: Replace Components, que te permite "mapear" propiedades.
![]()
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#12
|
|||
|
|||
Don Germán, estoy haciendo unas pruebas y funciona muy bien GExperts reemplazando componentes, este fin de semana voy a trabajar en migrar una aplicación completa y tratando de configurar bien GExperts, muchas gracias por su ayuda.
|
#13
|
|||
|
|||
Terminé la primera parte de mi trabajo que era dejar funcionando 2 aplicaciones, informo como logré hacerlo:
- GExperts reemplacé los componentes, sin mayores problemas. El tema fue con los campos de tipo string , en MDO son de tipo TMDOStringField pero en los componentes para interbase de Delphi son TIBStringField , no me quedó mas remedio que regenerar los campos persistentes en todos los componentes IBCustomDataSet, IBTable, IBQuery. Traté con refind que efectivamente cambiaba en el código el tipo de columna pero al compilar Delphi 2007 entregaba errores, a pesar de esto fue mucho más rápido que hacerlo de manera manual. Ahora tengo que probar la aplicación completa en ejecución para ver si aparece algún error, pero sus funciones principales no tienen problemas Nuevamente muchas gracias a Ustedes por su ayuda. |
#14
|
||||
|
||||
![]() ![]() ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
MDO (Mercury Database Objects) XE2 | FGarcia | Conexión con bases de datos | 5 | 19-06-2014 20:33:54 |
Insertar registros en TClientDataSet para no actualizarlos | delphijm | Conexión con bases de datos | 9 | 11-02-2011 20:05:51 |
MDO(Mercury) vs IBX | MasterXP | Conexión con bases de datos | 2 | 24-07-2007 19:58:53 |
Mercury (MDO) e FiBPlus | Gabriel | Conexión con bases de datos | 3 | 03-11-2005 17:23:15 |
Error al intentar Instalar las mercury database objects | DantePuerta | OOP | 0 | 22-02-2005 21:14:13 |
![]() |
|