Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 08/02/25 in all areas

  1. devlopnew

    Project: Daoui Reports What Is It?

    Project: Daoui Reports 🧩 What Is It? Daoui Reports is a dynamic report generator developed using Delphi FireMonkey (FMX), designed to create visually rich, data-driven reports for both Windows and Android platforms. It is a lightweight, open-source alternative to commercial reporting tools like QuickReport or FastReport, offering a simple yet powerful way to design and generate printable or exportable reports directly from SQLite databases. ✅ Key Features Visual Design: Drag-and-drop components (Text, Labels, Images) onto a report template, just like in QuickReport. 🔁 Dynamic Data Binding Connects to a TFDQuery and repeats the Detail section for each record in the dataset. 📄 Automatic Page Breaking Splits content across multiple pages when it exceeds the page height, using IntersectsWith logic. 📸 Screenshot-Based Rendering Uses MakeScreenshot to capture the visual state of each Detail block and render it as an image in the final report. 🖨️ Preview & Print Offers a preview window with zoom and page navigation. Supports direct printing on Android via PrintBitmap 📎 PDF Export (Android) Exports the final report to PDF using Android’s JPdfDocument API. 📱 Cross-Platform Built with FireMonkey for full compatibility with Windows and Android . 💡 No External Dependencies Relies only on native Delphi components and FireDAC—no third-party libraries required. 🏗️ How It Works Design Mode You place visual components (like TText, TLabel) inside a TLayout called Detail. This acts as the template for each data row. Data Binding A TFDQuery is linked to your SQLite database. When the report runs, it loops through each record. Dynamic Height Calculation For each field (especially multi-line text), the system calculates the required height using TTextLayout to ensure text wraps correctly. Page Generation Each record is rendered into the Detail layout. A MakeScreenshot captures its visual state. The image is placed in a TRectangle within ZoneDetail. When the content reaches the bottom of the page (checked via BoundsRect.IntersectsWith), a new page is created. Preview & Output All generated pages are displayed in PreviewF.LayoutZOM as TImage components. From there, users can: Zoom in/out Navigate pages Print Export to PDF (on Android) 📁 Core Units UnitMain.pas Main form with SQL input, data grid, and report settings (show/hide sections). DesignU.pas The engine of the report. Contains DESINGFACT , the core function that generates the report dynamically. PreviewU.pas Handles preview, printing, and PDF export . Manages the display of all report pages. 🎯 Why Use Daoui Reports? Simple & Fast: No complex setup—just design and run. Open & Transparent: Full access to source code for customization. Mobile-Ready: Works seamlessly on Android devices. SQLite-Friendly: Ideal for local database apps. Lightweight: No bloated dependencies or installer packages. 🚀 Ideal For Inventory reports Sales summaries Fish species catalogs (as in the demo) Any application needing simple, printable reports without licensing costs. 💬 In Summary Daoui Reports is a practical, no-frills reporting solution for Delphi developers who want full control over report design and output—without relying on expensive or complex third-party tools. It proves that with smart use of MakeScreenshot, FireMonkey, and FireDAC, you can build a robust reporting system entirely in Delphi. 🔗 GitHub: https://github.com/devlop0/daoui-reports
  2. Hi all, Just wanted to share a quick update on the DelphiMistralAI wrapper: it's now aligned with the latest capabilities released by MistralAI. 1. Conversational Agents & Agentic Tools Full support for the “agentic” approach: define custom agents with instructions and embedded tools (code execution, premium web search, access to libraries/documentation, etc.). Conversations and Agents endpoints enable multi-turn sessions with actions (function calling, callbacks, web_search_premium, code_interpreter, etc.). Usage example in the documentation: agent configuration, callback handling, and customization of triggerable tools. 2. Vision & Advanced OCR (Document AI) Image processing: text extraction, description, classification, and visual analysis via vision models (e.g., pixtral-12b-2409). Extended OCR: recognizes not just text but structural elements (boxes, tables, metadata), outputs structured JSON per user-defined schema, and handles figures, charts, signatures automatically. Native handling of PDFs and images with automatic annotation for industry use cases (finance, legal, HR, etc.). 3. Audio Multilingual transcription with automatic language detection, segmentation, and timestamps (voxtral models). Analysis of audio files (up to roughly 15–20 minutes) integrated directly into the multimodal chat session. Typical use cases: meeting summarization, indexing, context-aware voice assistants, and audio+NLP pipelines. 4. Batch & Moderation Asynchronous batch inference over large volumes, with background job tracking. Native integration of moderation APIs to filter incoming or generated content. Designed for high-throughput or sensitive applications (personal data, enterprise contexts, etc.). 5. Fine-tuning, Specialized Models & Libraries Fine-tuning support to adapt models to very specific domain requirements. Libraries endpoint for managing and sharing documentation resources; enables fine-grained, contextual access from OD agents. 6. Extensibility, Asynchronicity & Software Quality All endpoints exposed in both synchronous and asynchronous modes (promises, callbacks, progressive streaming, live cancellation). HTTP layer dependency injection to facilitate mocking, unit testing, and alignment with modern architecture patterns. Built-in unit tests: seamless DUnit integration via the MistralAI.DUnit.Tests unit to bootstrap validation suites quickly. 7. Tooling TutorialHub and ready-to-run sample projects. Explicit support for VCL and FMX architectures with functional scenarios.. 8. Getting Started Download one of the two ready-to-run sample projects (VCL or FMX) from the sample/ folder in the repository. Each .zip contains the full scaffold so you can start with minimal setup: unzip, open the project in Delphi, and provide your MistralAI API key (either in code or via the provided UI). Then follow the README as a step-by-step guide: obtain your API key, initialize the client in the form’s OnCreate, perform an initial “chat” call, and proceed to explore the included scenarios (vision, audio, agents, etc.). The samples are designed as a sandbox—feel free to tweak prompts, swap models, and iterate on workflows to validate and extend functionality. Feedback and Questions Feel free to post here or share your adaptations to help enrich the discussion and so, the project.
  3. Visualize complex multi-dimensional data using #TeeBI Composer control. Minimal code, automatic output. https://github.com/Steema/TeeBI/tree/master/demos/delphi/Visualization/Composer
  4. see also: delphi - XE4: How to change exe output name base on platform? - Stack Overflow
×