PDA

Ver la Versión Completa : Migrar sistema Delphi 7 a Delphi XE 10 Seatle


ArtPortEsp
09-04-2020, 19:44:43
Buen dia amigos;

aprovechando esta situación, quiero darme a la tarea de migrar una aplicacion hecha con Delphi 7 a Delphi XE 10; quiero aprovechar las ventajas que tiene el nuevo entorno de desarrollo, pero aun no las conozco todas.

Quiero por ejemplo:

que el sistema tenga la posibilidad de funcionar en PC, Mac y Linux
que pueda accesar una BD MySQL o MSSQL
que la interfaz se vea más moderna
que pueda acceder a servicios como EMAIL, FTP y WEBSERVICES

Veo en la sección de proyectos cosas como:

Multi-Device Application
FireMonkey Metropolis
VCL Metropolis UI Application

Aparte de las conocidas:

Console Application
VCL Forms Application
Etc.


Alguno de uds. podria ponerme en la dirección correcta?

Gracias de antemano
#quedenseencasa

aledieb
09-04-2020, 22:48:41
Para que funcione en PC, MAc y Linux deberías usar Multi-Device Application pero tendrías que cambiar todos los componentes y además hay muchos de VCL que no tienen el igual en Multi-Device, y cambian los nombre de propiedades, por ejemplo un label no tiene la propiedad Caption sino que es Text.
Tampoco existe en FMX (Multi-Device) el DBGrid (en los componentes standard, hay si no me equivoco algunos de pago), la asignación a datasource se hace con livebindings.

Ó podes usar CrossVcl https://www.crossvcl.com que te permite usar tu código vcl en mac y si no me equivoco también en Linux.

egostar
10-04-2020, 01:12:32
A ver si éste video te ayuda en algo, en unos días comenzaré a escribir detalles acerca de lo que pasé para realizar la migración de una aplicación VCL a Multiplataforma.

29mDKZQJ_YU

Saludos

el-mono
11-04-2020, 00:31:26
Yo me pase a Firemonkey en el 2015 y no me arrepiento, tenia una aplicacion (software odontologico) en vcl y lo pase completamente a Firemonkey. La verdad es una maravilla lo que podes hacer con este Frameworks (en cuanto a ui me refiero), esta semana termine de compilar mi aplicacion Windows sobre macOS Mojave y va de pelos estoy muuuuuyyyyyyy contento, tuve que tener en cuenta algunos detalles como referencias a directorios por ejemplo pero nada del otro mundo.


Te dejo un enlace para que veas como luce mi aplicacion en macOS


http://proyectoanamnesis.blogspot.com/2020/04/dentus-para-macos.html


En lo personal nunca me acostumbre a usar los Data controls , siempre me gusto hacer las cosas a mano recorrer la consulta e ir cargando los datos en stringgrid y cosas asi. Es por ello que en Firemonkey hago lo mismo y me funciona de maravillas, en este framework tenes la tecnologia LiveBindings que no me gusta en lo absoluto pero seria lo que debes usar si estas acostumbrado a los datacontrols.


Este es mi humilde opinion.

Neftali [Germán.Estévez]
14-04-2020, 12:34:11
Te dejo un enlace para que veas como luce mi aplicacion en macOS
Una pregunta. ¿Todo con componentes estandard de delphi para FMX? ¿O has tenido que usar alguno externo?

Neftali [Germán.Estévez]
14-04-2020, 12:36:19
que el sistema tenga la posibilidad de funcionar en PC, Mac y Linux
que pueda accesar una BD MySQL o MSSQL
que la interfaz se vea más moderna
que pueda acceder a servicios como EMAIL, FTP y WEBSERVICES



Deberías hacer una prueba de concepto (POC) para ver si estas características que implementes para Windows, luego funcionan sin problemas en OSX y Linux. En el primero es bastante probable, con el segundo tengo mis reticencias, pero tendrás que probarlo, ya que su estado es más "inmaduro".

el-mono
14-04-2020, 19:09:11
;536709']Una pregunta. ¿Todo con componentes estandard de delphi para FMX? ¿O has tenido que usar alguno externo?


Estoy utilizando, botones, listview, paneles de OrangeUI 1.78.1 y control Planner de TMSsoftware lo demas todo controles estandar de Delphi.

Neftali [Germán.Estévez]
15-04-2020, 14:34:55
Estoy utilizando, botones, listview, paneles de OrangeUI 1.78.1 y control Planner de TMSsoftware lo demas todo controles estandar de Delphi.

En ese caso, eso no te debería dar problemas.
Lo siguiente que probaría con una prueba de concepto sobre:

(1) que pueda accesar una BD MySQL o MSSQL
Parece que con SQL no deberías tener problemas segun esto:
http://docwiki.embarcadero.com/RADStudio/Rio/en/Connect_to_Microsoft_SQL_Server_(FireDAC)
Y contra MySQL Server tampoco:
http://docwiki.embarcadero.com/RADStudio/Rio/en/Connect_to_MySQL_Server_(FireDAC)

En ambos casos utilizando FiReDAC.

(2) Que pueda acceder a servicios como EMAIL, FTP y WEBSERVICES
En cuanto a esto, para los WS no creo que tengas problemas con los componentes THTTPClient que utilizan por debajo las caracteristicas de cada plataforma.

Lo que ya tengo más dudas es qué componentes puedes usar para FTP/EMAIL que soporten OSX y Linux.