MAD Designer iconMAD

Icono de MAD Designer para macOSMAD Designer para macOS

MAD Designer para macOS es una aplicación de escritorio nativa de AppKit (SDK macosx, MACOSX_DEPLOYMENT_TARGET = 12.0) para crear, consultar, maquetar, actualizar, imprimir y exportar Mobile Analytics Documents (.mad). Enlaza los mismos frameworks Objective-C propios y las mismas bibliotecas C estáticas universales (Compressor) que impulsan las aplicaciones de iOS y el motor sin interfaz gráfica.

Cada archivo .mad creado o editado en macOS es compatible byte a byte con las aplicaciones de iPad/iPhone, la CLI mad en Linux y la GitHub Action mad-action.

Descarga e instalación


Espacios de trabajo

Cada documento .mad abierto se ejecuta en una ventana nativa de NSDocument (MADMacDocument / MADMacWindowController) con un control segmentado Workspace centrado en la barra de herramientas de la ventana (Cmd+1, Cmd+2, Cmd+3) que alterna entre las tres etapas de generación de informes:

1. MAD Query (Cmd+1)

Espacio de trabajo MAD Query en macOS con la lista Database Tables, las tarjetas visuales de tablas y los conectores de join LEFT OUTER

El espacio de trabajo MAD Query (MADMacQueryViewController) construye el grafo de consultas relacional que se almacena en RptqQuery. Un conmutador de la barra del espacio de trabajo alterna entre dos vistas mutuamente excluyentes de la consulta:


2. MAD Designer (Cmd+2)

Espacio de trabajo MAD Designer en macOS con el minimapa de página y secciones, las bandas de informe, los campos de consulta, el lienzo de diseño por bandas y el inspector

El espacio de trabajo MAD Designer (MADMacDesignerViewController) maqueta las bandas y los elementos paramétricos del informe dentro de una vista dividida en tres paneles redimensionable por el usuario:


3. MAD Viewer (Cmd+3)

El espacio de trabajo MAD Viewer (MADMacViewerViewController) actualiza la consulta contra su fuente de datos activa, materializa el conjunto de resultados en la caché local de tablas SQLite (MADDataTableFast) y renderiza las páginas:


Abrir y crear documentos


Arquitectura: AppKit nativo sobre frameworks multiplataforma

En lugar de envolver la interfaz de iOS en Mac Catalyst, MAD compila doce de sus catorce frameworks de forma nativa para macosx (SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx", MACOSX_DEPLOYMENT_TARGET = 12.0) y coloca encima una arquitectura de documentos AppKit hecha a propósito (Mac/Source/):

Capa Componentes Función en macOS
Bibliotecas C estáticas (Compressor) sqlite3, zlib, openssl, bzip2, libpng, libarchive, freetds, mariadb, postgres, zint Rebanadas macosx universales (arm64 + x86_64) dentro de paquetes .xcframework, verificadas por ./Compressor/build.sh --verify --all --platforms ios,simulator,macosx.
Frameworks centrales y de drivers MADFoundation, MADDataStructures, MADCocoaExtensions, MADFileManager, MADAPI, MADSqlite3, MADTds, MADTdsClient, MADMySQL, MADPostgres, MADBarcodes, MAD Modelo Objective-C compartido, almacén SQLite portátil (Rptq*), analizador/compilador de SQL, drivers de base de datos de transporte, renderizador de códigos de barras zint, motor de deshacer/rehacer MADDesignerLayout y MADPrintPageRenderer / MADReportExporterPDF.
Frontend nativo AppKit (Mac/) MADMacAppDelegate, MADMacAboutWindowController, MADMacDocumentController, MADMacDocument, MADMacWindowController, MADMacConnectionWindowController, MADMacQueryViewController, MADMacDesignerViewController, MADMacDesignerCanvasView, MADMacViewerViewController Ciclo de vida nativo de NSDocument, ventana About / Overview / Acknowledgements, barra de herramientas y barra de menús, lienzo visual de consultas, diseñador de informes en tres paneles con minimapa e inspector, y visor de informes PDFView.

La auditoría arquitectónica completa y el registro de defectos del port multiplataforma están en docs/project/MAD_MACOS.md.


Compilación, pruebas y empaquetado

En Xcode

Abra Reports.xcworkspace, seleccione el scheme compartido MAD Designer Mac con el destino My Mac y pulse Run (Cmd+R) para compilar y depurar la aplicación nativa de macOS de forma interactiva.

Para ejecutar la suite de pruebas unitarias de cualquier framework de forma nativa en macOS:

xcodebuild test -workspace Reports.xcworkspace -scheme MAD \
	-destination 'platform=macOS,arch=arm64' \
	-derivedDataPath ~/Library/Developer/Xcode/DerivedData/Reports-cozeiyczmvgrbeapplwfuygymqci

Compilación por línea de comandos, suite de humo y empaquetado de la versión

El script independiente Mac/build.sh compila los doce frameworks de macOS, ensambla y firma Mac/build/MAD Designer.app, ejecuta la suite de pruebas de humo integral sin interfaz gráfica y AppKit (Mac/Tests/MADMacSmokeTest.m), y empaqueta archivos .zip y .dmg distribuibles:

./Mac/build.sh                     # build 12 macOS frameworks + MAD Designer.app
./Mac/build.sh --no-frameworks     # rebuild only MAD Designer.app (fast iteration)
./Mac/build.sh --smoke-test        # build and run the end-to-end macOS smoke suite
./Mac/build.sh --package           # package MAD-Designer-macOS.zip and MAD-Designer-macOS.dmg

Esta página es una traducción al español del original en inglés; en caso de discrepancia, prevalece la versión original en inglés.