Експортуйте SwiftObjects у файли Excel за допомогою безкоштовної бібліотеки Swift

Відкрита бібліотека Swift, яка дозволяє розробникам програмного забезпечення перетворювати об’єкти Swift у професійні файли Excel (.xlsx) з індивідуальним стилем.

Що таке Objects2XLSX?

Сучасні iOS, macOS та серверні Swift‑застосунки часто потребують експорту структурованих даних у електронні таблиці Microsoft Excel. Незалежно від того, чи створюєте ви звіти про продажі, інвентарні списки, фінансові звіти чи аналітичні панелі, ручне створення професійних файлів Excel швидко стає складним. Objects2XLSX — це бібліотека Swift з відкритим кодом, створена для вирішення цієї проблеми. Вона дозволяє розробникам конвертувати Swift‑об’єкти безпосередньо у робочі книги Excel (.xlsx) за допомогою чистого, типобезпечного та декларативного API. Замість ручного запису рядків і стовпців, розробники просто визначають, як їхні Swift‑моделі відображаються на стовпці таблиці, а бібліотека виконує решту.

Бібліотека підтримує професійне форматування, кілька аркушів, звітування про прогрес і широкий спектр типів даних Swift, що робить її відмінним рішенням для генерації звітів та бізнес-додатків. За даними документації проєкту, Objects2XLSX орієнтується на безпеку типів, стилізацію, кілька аркушів і високопродуктивну генерацію Excel. Objects2XLSX усуває значну частину шаблонного коду, традиційно необхідного для генерації Excel. Замість ручного створення клітинок, форматування аркушів і управління конвертацією даних, розробники працюють безпосередньо з об’єктами Swift. Деякі поширені випадки використання включають експорт записів клієнтів, створення фінансових звітів, управління інвентарем, експорт даних співробітників, бізнес‑аналітику, звітування про продажі, системи оцінювання в освіті та адміністративні панелі.

Previous Next

Початок роботи з Objects2XLSX

Рекомендований спосіб встановлення Objects2XLSX — використання Swift Package Manager (SPM) або Cocoapods. Будь ласка, використайте наступну команду для безперебійної інсталяції.

Встановлення Objects2XLSX через Swift Package Manager

  // Add Objects2XLSX to your Package.swift dependencies:

dependencies: [ .package(url: "https://github.com/fatbobman/Objects2XLSX.git", from: "1.3.0") ]

// Import the package
import Objects2XLSX

Встановлення Objects2XLSX через GitHub:

 git clone https://github.com/fatbobman/Objects2XLSX.git

Ви можете завантажити його безпосередньо з GitHub.

Декларативне створення робочої книги за допомогою Swift

Створення електронних таблиць з кількома листами історично вимагало вкладених, покрокових логічних скриптів, які важко масштабувати або рефакторити. Objects2XLSX використовує декларативний рівень синтаксису, який імітує сучасні предметно-специфічні мови (DSL). Це дозволяє інженерам точно вказувати, які листи, стовпці та структурні взаємозв’язки мають існувати всередині обгортки робочої книги, у чистій візуальній ієрархії. Така конфігурація значно оптимізує довгострокове обслуговування кодової бази та спрощує спільні перегляди коду.

Як виконати декларативне створення робочої книги за допомогою Swift API?

import Objects2XLSX
import Foundation

struct UserAccount: Sendable { let username: String; let rank: String }
struct LogEntry: Sendable { let timestamp: Date; let action: String }

func generateSystemWorkbook(users: [UserAccount], logs: [LogEntry]) -> Workbook {
    // Declarative assembly definition organizing multi-sheet data structures
    let workbook = Workbook(
        sheets: [
            Sheet(title: "Active Users", columns: [
                Column(header: "User Profile ID", keyPath: \.username),
                Column(header: "Access Group", keyPath: \.rank)
            ]).addRows(users),
            
            Sheet(title: "Security Audits", columns: [
                Column(header: "Event Time", keyPath: \.timestamp),
                Column(header: "Operation Details", keyPath: \.action)
            ]).addRows(logs)
        ]
    )
    return workbook
}

Застосування професійного стилю Excel за допомогою Swift

Професійні звіти вимагають більше, ніж просто сирі дані. Відкрита бібліотека Objects2XLSX надає широкі можливості стилізації, дозволяючи розробникам налаштовувати шрифти, кольори, межі, вирівнювання та зовнішній вигляд клітинок. Це спрощує створення готових до бізнесу електронних таблиць без необхідності відкривати Excel для ручного форматування. Система стилізації розроблена для створення відполірованих робочих книг, придатних для презентацій, звітності та корпоративних процесів.

Як застосувати індивідуальне стилювання за допомогою Swift‑бібліотеки?

import Objects2XLSX
import CoreGraphics

// Define customized visual presets matching enterprise documentation needs
let boldHeaderStyle = Style()
    .font(.system(size: 11, weight: .bold))
    .alignment(.center)
    .background(.color(red: 0.12, green: 0.53, blue: 0.90)) // Corporate Blue

let currencyColumnStyle = Style()
    .numberFormat("$#,##0.00")
    .alignment(.right)

let customizedColumn = Column(
    header: "Gross Revenue", 
    keyPath: \FinancialRow.revenue,
    headerStyle: boldHeaderStyle,
    cellStyle: currencyColumnStyle,
    width: 22.0
)

struct FinancialRow: Sendable { let revenue: Double }

Застосування професійного стилю Excel за допомогою Swift

Професійні звіти вимагають більше, ніж просто необроблені дані. Відкрита бібліотека Objects2XLSX надає широкі можливості стилізації, дозволяючи розробникам налаштовувати шрифти, кольори, межі, вирівнювання та вигляд клітинок. Це спрощує створення готових до бізнесу електронних таблиць без необхідності відкривати Excel для ручного форматування. Система стилізації розроблена для створення відполірованих робочих книг, придатних для презентацій, звітності та корпоративних робочих процесів.

Як застосувати індивідуальне стилювання за допомогою Swift‑бібліотеки?

import Objects2XLSX
import CoreGraphics

// Define customized visual presets matching enterprise documentation needs
let boldHeaderStyle = Style()
    .font(.system(size: 11, weight: .bold))
    .alignment(.center)
    .background(.color(red: 0.12, green: 0.53, blue: 0.90)) // Corporate Blue

let currencyColumnStyle = Style()
    .numberFormat("$#,##0.00")
    .alignment(.right)

let customizedColumn = Column(
    header: "Gross Revenue", 
    keyPath: \FinancialRow.revenue,
    headerStyle: boldHeaderStyle,
    cellStyle: currencyColumnStyle,
    width: 22.0
)

struct FinancialRow: Sendable { let revenue: Double }

Відстеження прогресу великих експортувань

Створення Excel‑книг, що містять тисячі записів, може займати помітний час. Objects2XLSX включає можливості відстеження прогресу, які дозволяють розробникам моніторити операції експорту в режимі реального часу. Ця функція особливо корисна в настільних додатках та корпоративних системах, де користувачі очікують візуальний зворотний зв’язок під час тривалих процесів генерації звітів.

 Українська