MAD Designer iconMAD

Ícone do MAD Designer para macOSMAD Designer para macOS

O MAD Designer para macOS é um aplicativo desktop nativo em AppKit (SDK macosx, MACOSX_DEPLOYMENT_TARGET = 12.0) para criar, consultar, diagramar, atualizar, imprimir e exportar Mobile Analytics Documents (.mad). Ele vincula os mesmos frameworks próprios em Objective-C e bibliotecas C estáticas universais (Compressor) que alimentam os aplicativos iOS e a engine headless.

Cada arquivo .mad criado ou editado no macOS é compatível byte a byte com os aplicativos para iPad/iPhone, com a CLI mad no Linux e com a GitHub Action mad-action.

Download e Instalação


Workspaces

Cada documento .mad aberto roda em uma janela NSDocument nativa (MADMacDocument / MADMacWindowController) com um controle segmentado Workspace centralizado na barra de ferramentas da janela (Cmd+1, Cmd+2, Cmd+3), que alterna entre os três estágios de construção e leitura do relatório:

1. MAD Query (Cmd+1)

Workspace MAD Query no macOS mostrando a lista Database Tables, os cartões visuais de tabelas e os conectores de join LEFT OUTER

O workspace MAD Query (MADMacQueryViewController) constrói o grafo de consulta relacional armazenado em RptqQuery. Um seletor na barra do workspace alterna entre duas visualizações mutuamente exclusivas da consulta:


2. MAD Designer (Cmd+2)

Workspace MAD Designer no macOS mostrando Page & Section Minimap, Report Bands, Query Fields, canvas de design em bandas e Inspector

O workspace MAD Designer (MADMacDesignerViewController) diagrama as bandas paramétricas e os elementos do relatório dentro de uma split view de três painéis redimensionáveis pelo usuário:


3. MAD Viewer (Cmd+3)

O workspace MAD Viewer (MADMacViewerViewController) atualiza a consulta contra sua fonte de dados ativa, materializa o conjunto de resultados no cache local de tabela SQLite (MADDataTableFast) e renderiza as páginas diagramadas:


Abrindo e Criando Documentos


Arquitetura: AppKit Nativo sobre Frameworks Multiplataforma

Em vez de encapsular a interface do iOS com Mac Catalyst, o MAD compila doze de seus quatorze frameworks nativamente para macosx (SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx", MACOSX_DEPLOYMENT_TARGET = 12.0) e constrói uma arquitetura de documentos AppKit dedicada (Mac/Source/) sobre eles:

Camada Componentes Papel no macOS
Bibliotecas C Estáticas (Compressor) sqlite3, zlib, openssl, bzip2, libpng, libarchive, freetds, mariadb, postgres, zint Fatias universais (arm64 + x86_64) para macosx dentro de pacotes .xcframework, verificadas por ./Compressor/build.sh --verify --all --platforms ios,simulator,macosx.
Frameworks Core e de Drivers MADFoundation, MADDataStructures, MADCocoaExtensions, MADFileManager, MADAPI, MADSqlite3, MADTds, MADTdsClient, MADMySQL, MADPostgres, MADBarcodes, MAD Modelo compartilhado em Objective-C, store SQLite portável (Rptq*), parser/compilador SQL, drivers de protocolo de banco de dados, renderizador de código de barras zint, engine de undo/redo MADDesignerLayout e MADPrintPageRenderer / MADReportExporterPDF.
Frontend Nativo em AppKit (Mac/) MADMacAppDelegate, MADMacAboutWindowController, MADMacDocumentController, MADMacDocument, MADMacWindowController, MADMacConnectionWindowController, MADMacQueryViewController, MADMacDesignerViewController, MADMacDesignerCanvasView, MADMacViewerViewController Ciclo de vida nativo de NSDocument, janela About / Overview / Acknowledgements, barra de ferramentas e barra de menus, canvas visual de consultas, designer de relatórios de 3 painéis com minimapa e inspetor, e visualizador de relatórios em PDFView.

A auditoria arquitetural completa e o registro de correções do porte multiplataforma estão documentados em docs/project/MAD_MACOS.md.


Compilação, Testes e Empacotamento

No Xcode

Abra o Reports.xcworkspace, selecione o esquema compartilhado MAD Designer Mac com o destino My Mac e pressione Run (Cmd+R) para compilar e depurar interativamente o aplicativo nativo para macOS.

Para executar a suíte de testes unitários de qualquer framework nativamente no macOS:

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

Build de Linha de Comando, Suíte de Smoke Tests e Empacotamento de Release

O script autônomo Mac/build.sh compila todos os doze frameworks para macOS, monta e assina o bundle Mac/build/MAD Designer.app, executa a suíte de smoke tests ponta a ponta headless + AppKit (Mac/Tests/MADMacSmokeTest.m) e gera os pacotes distribuíveis .zip e .dmg:

./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 é uma tradução para o português do Brasil do original em inglês; em caso de divergência, prevalece a versão original em inglês.