¿Qué es exactamente Midas en Delphi?
La estructura de múltiples niveles propuesta por Delphi es obtener el DBEXpress, ADO, BDE, SQL Link, Datamoulle en la aplicación original de dos niveles a otro servidor NT (el llamado servidor de aplicaciones) y el front-end Aplicación Solo queda una
Archivos ejecutables y midas.dll, y Datamoulle se movió al servidor NT se convierte en un programa COM (remoto DataModule).
Nota: La recepción debe publicar midas.dll en el directorio del sistema.
(1) El programa de primer plano hará una solicitud llamando al método (interfaz) proporcionado por el servidor de aplicaciones.
El servidor de aplicaciones responderá a esta solicitud y enviará un comando SQL correspondiente a la base de datos de fondo, y la base de datos de backend devolverá el conjunto de datos generado mediante la ejecución del comando SQL al servidor de aplicaciones.
Nota: Delphi proporciona la biblioteca de tipos para ayudar al servidor de aplicaciones a definir los métodos COM (interfaces)
(2) El programa COM en el servidor NT transmite SQL a la base de datos de fondo a través del software intermedio (DBEXpress, ADO, BDE, SQL Link).
Cuando el servidor de aplicaciones desea transmitir el conjunto de datos de lectura al primer plano, debe usar el mecanismo DCOM para realizarlo.
Pase a la recepción a través de DCOM o TCP/IP.
Nota: Delphi proporciona el asistente Remotedatamodule para ayudarlo a generar la estructura del programa COM.
Dado que el programa de Delphi tiene un mecanismo especial para transmitir conjuntos de datos, Delphi también implementa una interfaz llamada IProvider (es decir, TDATAsetProvider), para ayudar a los programas Com en el servidor de aplicaciones a enviar datos del conjunto de datos.
(3) El programa de recepción y el programa COM en el servidor NT se comunican entre sí a través del mecanismo DCOM
La aplicación de primer plano se comunica con el servidor de aplicaciones a través de Midas.dll.
Nota: El programa de primer plano debe proporcionar el componente TClientData correspondiente que corresponda a cada IProvider (es decir, TDATAsetProvider) en el servidor de aplicaciones. el primer plano.
Debe usar el método tclientData.ApplyUpdate para escribir los datos del cambio de primer plano a la base de datos de fondo.