Gestión de documentos de producción con arquitectura de plugins para los tipos de detalle. Controller MVP, importación/gestión/detalle como frames independientes, impresión integrada FastReport y label designer.
Primer módulo desarrollado con patrón MVP completo. El Controller gestiona la business logic; el Host orquesta los frames mediante interfaces. Los tipos de detalle (Tipo A, Tipo B) son BPL separadas que se registran automáticamente.
type IDtoDocView = interface ['{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}'] function GetSelectedCodart: string; function GetSelectedTipo: Integer; procedure RefreshGrid; procedure SetStatusText(const AText: string); function ConfirmAction(const AMessage: string): Boolean; end;
| Interfaz | BPL | Objetivo |
|---|---|---|
IFrameGestione | DtoMes_Documenti | Rejilla principal de documentos |
IFrameImport | DtoMes_Documenti | Importación archivo/escáner |
IFrameWorkArea | DtoMes_Documenti | Área de trabajo del documento |
IFrameArticoli | DtoMes_Prodotti | Datos maestros de artículos |
IFrameDettaglioTipoA | DtoMes_DocTipoA | Detalle categoría A |
IFrameDettaglioTipoB | DtoMes_DocTipoB | Detalle categoría B |
IDtoDocView | DtoMes_Documenti | Comunicación Controller → View |
Las interfaces permiten que los plugins de detalle sean BPL separadas que se registran en runtime sin modificar el código del módulo. Añadir un nuevo tipo = crear una nueva BPL con su propia Registration.
Cada módulo es una BPL independiente, pero forman parte del mismo ecosistema.