Reporting VCL

Набор VCL-компонентов с полными исходными кодами для создания отчётов и документов

Какие отчеты можно делать из Reporting VCL?

Практически любые: счет-фактура, финансовый отчет, каталог продуктов с поддержкой цветовых профилей, меню ресторана, детализация продаж, анкеты с электронными формами, счета за коммунальные, билет на самолет, услуги и многое другое. Если у вас есть данные, которые необходимо сделать визуально понятными, то FastReport подойдет вам идеально. Бесплатные шаблоны унифицированных форм вы можете скачать в формате шаблонов или PDF из нашего каталога МоиОтчеты Магазин.

Особенности и преимущества Reporting VCL

Множество компонентов
Для построения отчетов в дизайнере доступны разнообразные элементы: от текста и изображений до математических формул и 3D-диаграмм.
Быстрый доступ к отчету и структуре данных
Из дерева отчетов и дерева свойств вы сможете редактировать структуру отчета, параметры и фильтры, а также источники данных с глобальными стилями.
Совместимость и интеграция
Reporting VCL является частью единой экосистемы FastReport на Delphi. Отчёты, созданные в Lazarus решении, будут работать в Reporting VCL и наоборот.
Плавный переход из других решений
Наш генератор отчетов мгновенно преобразует ваши отчеты из Quick Report, Report Builder, Rave Reports в формат FastReport.
Гибкая и открытая архитектура
Если функционала FastReport для вас недостаточно, вы можете улучшить его, создав и подключив собственные объекты (фильтры экспорта, базы данных) к своим отчетам.
System.Drawing (GDI)
Для создания графических элементов, отрисовки текста и управления графических изображений используется уже привычный System.Drawing с графическими функциями GDI.

Дизайнер шаблонов в вашем приложении

Мощный современный редактор включает в себя большой набор инструментов для визуального оформления и модификации шаблонов отчетов. Наша гибкая архитектура позволяет создавать собственные редакторы как уже существующих объектов, так и новых. Дизайнер шаблонов может быть включен в ваше приложение, чтобы предоставить пользователям собственный дизайн отчета. Поддерживается локализация для более 30 популярных языков мира.

Reporting VCL - это бэнд-ориентированный генератор отчетов. Богатый набор бэндов позволяет строить отчеты любого типа: список, master-detail, отчет с группировкой, многоколоночный, master-detail-detail и другие. Если вам нужно создать много отчетов, которые содержат одинаковые элементы (заголовок, подвал, реквизиты предприятия, логотипы), то вы можете собрать общие элементы в базовый отчет и наследовать от него все остальные отчеты. Также мы поддерживаем функцию вложенных отчетов.

Дизайнер шаблонов в вашем приложении

Обработка данных

Reporting VCL поддерживает сортировку и фильтрацию данных, master-detail отношения. Всё может быть настроено с помощью нескольких щелчков мыши. Возможно подключение к FireDAC, ADO, BDE, DBX, IBX и FIBPlus, обеспечивая таким образом доступ практически ко всем базам данных, включая Oracle и многие сторонние библиотеки.

Ваш отчет может содержать данные (таблицы, запросы, подключения к БД). Таким образом, вы можете не только использовать данные, доступные в вашем приложении, но и самостоятельно подключаться к любым БД непосредственно из отчета. Reporting VCL содержит скриптовой движок, поддерживающий PascalScript, C++ Script, BasicScript и JScript.

Отчет может содержать диалоговые формы для запроса параметров перед построением отчета. Диалоговые элементы управления поддерживают возможность подключения к данным и их последующей фильтрации. Фильтрация может быть добавлена в абсолютно любой отчет, она не требует написания какого-либо кода. Используя визуальный конструктор запросов, вам не обязательно знать язык SQL, чтобы построить сложный запрос из нескольких таблиц.

Обработка данных

Предпросмотр и печать

Предварительно подготовленный отчет можно детально рассмотреть в окне предварительного просмотра Вьювера отчетов. Наш компонент поддерживает работу с параметрами, многоуровневую детализацию и интерактивные отчеты. Вы можете определить реакцию на щелчок мыши на объекте в окне просмотра. Например, можно построить и вывести другой отчет, который показывает детальную информацию по объекту, на котором пользователь щелкнул мышью.

Дополнительные настройки печати. Для вас доступно: разрезание больших страниц отчета на малые, печать нескольких малых страниц на одной большой, печать на заданном формате с масштабированием. Вам нужно распечатать отчет, содержащий страницы формата А3, на обычном принтере с поддержкой А4? Теперь это не проблема!

Предпросмотр и печать

Экспорты в удобные форматы

Фильтры экспорта готового отчета во множество форматов: PDF, RTF, XLSX, XML, DOCX, TXT, CSV, Excel OLE, PowerPoint, HTML, MHT, XPS, JPEG, BMP, PNG, Open Document Format (ODT, ODS, ODP), XAML, Scalable Vector Graphics (SVG), ZPL и так далее.

Reporting VCL позволяет быстро преобразовывать отчеты с редактируемыми полями (такими как текстовые поля, символьные расчески, флажки, радиогруппы и графические поля) в документы PDF без подключения дополнительных библиотек. Сохраняйте свои отчеты в популярных форматах: PDF 1.4-1.7, PDF/A-1a, PDF/A-1b, PDF/A-2a, PDF/A-2b, PDF/A-3a, PDF/A-3b, которые являются безопасными, доступными и надежными.

Экспорты в удобные форматы

Ultimate VCL

Этот набор компонентов входит в состав Ultimate решения, с помощью которого вы сможете создавать свои бизнес-проекты на всех привычных платформах VCL, Lazarus и FMX. Дополнительно в набор входит FastScript для быстрой обработки скриптов любой сложности, а также визуальный построитель SQL-запросов к базам данных FastQueryBuilder. Помимо этого вам будут доступны клиент-серверные инструменты отчетности на VCL и Lazarus.

Варианты поставок

Ultimate
от 129 890 ₽

Особенности

Ядро FastReport
Компоненты VCL
Компоненты FMX
Компоненты Lazarus
Возможности OLAP
Агрегатные OLAP функции
Поддержка баз данных
Возможности отчётов
Объекты отчета
Штрих-коды
Диаграммы
Печать
Экспорт в различные форматы
Исходные коды
Конвертеры из других шаблонов
Транспорты (Transports)
Плагин FastConverter .FP3
Optimum VCL
от 89 890 ₽

Особенности

Ядро FastReport
Компоненты VCL
Компоненты FMX
Компоненты Lazarus
Возможности OLAP
Агрегатные OLAP функции
Поддержка баз данных
Возможности отчётов
Объекты отчета
Штрих-коды
Диаграммы
Печать
Экспорт в различные форматы
Исходные коды
Конвертеры из других шаблонов
Транспорты (Transports)
Плагин FastConverter .FP3
Reporting VCL
от 49 890 ₽

Особенности

Ядро FastReport
Компоненты VCL
Компоненты FMX
Компоненты Lazarus
Возможности OLAP
Агрегатные OLAP функции
Поддержка баз данных
Возможности отчётов
Объекты отчета
Штрих-коды
Диаграммы
Печать
Экспорт в различные форматы
Исходные коды
Конвертеры из других шаблонов
Транспорты (Transports)
Плагин FastConverter .FP3

Связанные статьи

11 декабря 2023

Новый транспорт S3 (Amazon) в FastReport VCL

В этой статье мы рассмотрим новый транспорт S3. Функционально S3 сильно отличается от того, с чем большинство привыкли работать, поэтому в начале статьи подробно рассмотрим его основные особенности. Важно! Для работы протокола https необходимы следующие библиотеки Open SSL: libssl-3.dll и libcrypto-3.dll их можно найти в директории с главным демо приложением. Библиотеки необходимо скопировать в папку с приложением или системную директорию. А что это такое? S3 – это не файловое хранилище как Dropbox, Google Drive, Mega и другие. S3 является объектным хранилищем. И в первую очередь нам нужно понять разницу между этими двумя понятиями. Файловое хранилище имеет привычную иерархическую (древовидную) структуру. То есть всем знакомые каталоги (папки), в которых хранятся другие каталоги и файлы. Объектные хранилища появились относительно недавно (самому старому сейчас около 20 лет). Они незначительно отличаются в своих реализациях, поэтому большинство особенностей будут общими, но будут и такие которые применимы только к S3. Все объектные хранилища “плоские”, то есть не имеют иерархической структуры, хотя и могут ее “имитировать”. Первой сущностью, с которой вы столкнетесь, начиная работать с S3 будет Бакет (Bucket). Ближайшая аналогия это «Map» во многих языках программирования, где по ключу запрашиваются данные. Бакет может хранить внутри себя только файлы, но не другие бакеты. Давайте представим бакет более наглядно. Бакет Ключ Данные video.mp4 Данные text_file.txt Данные code.pas Данные По ключу вы можете получить соответствующие ему метаданные и сами интерпретировать их так как вам требуется. Гораздо интереснее это имитация иерархической структуры папок в такой системе. Бакет Ключ Данные video.mp4 Данные folder1\text_file.txt Данные folder1\video.mp4 Данные folder1\folder1_1\video.mp4 Данные folder2\text_file.txt Данные folder1\ Пусто folder1\folder1_1\ Пусто folder2\ Пусто Некие «Папки» являются все теми же объектами что и файлы. В другой цвет они окрашены просто для наглядности. А также имеется одна отличительная особенность, в конце ключа стоит слеш (\). Зачастую такие «папки» не имеют данных (хотя и могут иметь). Чтобы посмотреть, что находится в “папке” folder1 нам нужно сделать фильтрацию по началу ключа “folder1\”. Но куда интереснее удаление “папок”. Если мы в Web-GUI попытаемся удалить “папку” folder1, то некоторые сервисы сделают это, но оставшиеся нам выдадут ошибку “невозможно удалить непустую папку”. Если мы по API удалим одну запись по ключу “folder1\”, то большинство GUI перестанет отрисовывать данную “папку”. А также мы не сможем в нее зайти, но фактически файлы внутри этой «папки» никуда не денутся. Как только мы создадим после этого “папку” folder1, то она уже будет содержать в себе забытые нами файлы. У самого ключа очень мало ограничений и он, например может быть таким: “////”. И это будут “папки” с пустыми именами. Чем объектные хранилища лучше файловых? 1. Объектные хранилища существенно дешевле. Каждый объект не привязан к конкретному устройству, поэтому объектные хранилища легко расширяются под требуемый объем. Вы можете довольно просто арендовать объектное хранилище на петабайт (около 1000000 гигабайт). 2. У объектных хранилищ очень быстрый поиск. Но естественно лучше всего объектные хранилища использовать для неструктурированных (не древовидных) данных. Новая система аутентификации Все прошлые транспорты работали по OAuth 2 протоколу. S3 в теории может работать и по OAuth 2, но в его API встроена своя система аутентификации. OAuth 2 с помощью Client ID и Secret ID получал токен, который жил определённое количество времени и мог подписывать любые запросы. Внутренняя аутентификация S3 с помощью тех же Client ID и Secret ID на каждую операцию создаёт новый одноразовый токен с помощью SHA256HMAC на основе около 30 переменных (включая время создания токена, требуемую операцию и так далее). Сервер лишь проверяет правильность генерации токена и если принятый сервером токен совпадает с тем который сгенерировал сам сервер, то операция совершается. После этого токен больше нельзя использовать. AWS S3 Хотя транспорт и называется “TfrxS3IOTransport”, явно ссылаясь на AWS S3 (Amazon Simple Storage Service), но их API скопировали многие объектные хранилища (которые можно условно называть S3 подобными), поэтому данный транспорт позволяет работать не только с сервисом от Амазона. Добавление транспорта в приложение и его настройка В самом начале вам нужно добавить соответствующий компонент из вкладки “FastReport VCL Internet transports”.   Можно использовать контекстное меню на компоненте. Это установит подключение прямо из среды разработки. Нажимаем на подменю “Edit connection”.   Диалог подключения S3 Когда вам необходимо открыть или сохранить в файл с помощью транспорта, то вам будет доступен следующий стандартный диалог авторизации (если не было авторизации ранее). Рассмотрим все уникальные поля данной формы: Server URL - URL адрес используемый в API. Чтобы узнать URL адрес нужно читать документацию, для AWS S3 он по умолчанию должен быть “s3.amazonaws.com”. Client ID - публичный ключ для авторизации (часто называется Access Key). Secret ID - секретный ключ для авторизации (часто называется Secret Access Key). Region - необходимо читать документацию для возможных значений региона. Иногда встречаются необычные требования, например в AWS S3 запросить список бакетов можно только с регионом “us-east-1”. Bucket - чтобы каждый раз не выбирать бакет вручную его можно указать в этом поле, иногда для бакетов характерен конкретный регион. Bucket style - Есть 2 вида указания бакета: path style (aws.s3.com/bucket) и virtual hosted style (bucket.aws.s3.com). «Path style» является устаревшим, потому что через определенный DNS может быть множество обращений к разным бакетам, что может создать дополнительную нагрузку. Некоторые сервисы поддерживают оба вида, некоторые только один, а некоторые настраиваются под разные ситуации. Об этом можете почитать по следующей ссылке. При удачном подключении вы увидите стандартный браузер файлов FastReport VCL (на скриншоте ниже изображен список файлов внутри бакета). На этом настройка подключения успешно окончена. Теперь вы знаете, как подключаться к S3 в FastReport VCL. Осталось только отметить последние нюансы нашей реализации. Наша команда не реализовала создание и удаление бакетов. Пока визуально бакеты ничем не отличаются от папок (на нашей первой версии GUI), так как это было бы слишком опасно. Также пока не реализовано удаление папки вместе с содержимым. А также отсутствует загрузка файла по частям (рекомендуется при размере файла от 100 мегабайт). Данный транспорт имеет множество деталей и тонкостей при настройке, но в отдельных случаях он станет оптимальной заменой файловых хранилищ.
Читать
26 сентября 2023

Новый транспорт NextCloud в FastReport VCL

Более 5 лет назад мы добавили новые специальные компоненты – «Транспорты». Они помогают сохранять построенные отчёты в облако, а также использовать находящиеся в облаке файлы (например, картинки) для построения отчётов. С релизом 2023.3 к восьми существующем транспортам мы добавили девятый, отвечающий за работу с NextCloud. Больше статей о подключении транспортов вы можете найти по следующей ссылке. В этой статье будут рассмотрены настройки для NextCloud с разбором некоторых особенностей. Если вы уже работали с нашими транспортами, то можете переходить сразу на главу с настройкой подключения. Важно! Для работы протокола https необходимы следующие библиотеки Open SSL: libssl-3.dll и libcrypto-3.dll их можно найти в директории с главным демо приложением. Библиотеки необходимо скопировать в папку с приложением или системную директорию. Добавление транспорта в приложение и его настройка Первым шагом, как и с другими транспортами, вам нужно добавить соответствующий компонент из вкладки “FastReport VCL Internet transports”. Можно использовать контекстное меню на компоненте. Это установит подключение прямо из среды разработки. Нажимаем на подменю “Edit connection”. По умолчанию транспорты реагируют только на ответ авторизации от браузера используя порт 9898. Если этот порт уже занят или планируется использовать данный порт в дальнейшем, то FastReport VCL позволяет изменить порт в свойстве ListenerPort. Далее будем предполагать использование порта 9898 по умолчанию. Важно! Пользователю не нужно выполнять все нижеперечисленные действия каждый раз, для авторизации. Данная настройка выполняется только один раз администратором облачных сервисов. После выполнения всех действий полученные авторизационные данные могут быть использованы другими пользователями. Подключение к NextCloud Когда вам необходимо открыть или сохранить в файл с помощью транспорта, то вам будет доступен следующий стандартный диалог авторизации (если не было авторизации ранее). Кнопка со знаком вопроса отправит вас на страницу документации NextCloud. Для начала на своем сервере надо создать OAuth-клиента. Откройте NextCloud в браузере и нажмите на кнопку профиля. Затем в выпадающем списке нажмите на “Settings”.  В меню настроек выберите пункт “Security”. Введите имя клиента, а в поле «Redirection URI» укажите «http://localhost:9898», после чего нажмите кнопку “Add”. Обратите внимание, что порт должен соответствовать порту, указанному в свойстве ListenerPort у компонента транспорта. На этом этапе вы увидите, что приложение успешно создано. Скопируйте поля “Client Identifier” и “Secret” как на скриншоте ниже. И вставьте скопированные данные в соответствующие поля ввода, которые требуются в диалоговом окне авторизации FastReport VCL. Нажмите “OK”. У вас должно открыться новое окно в браузере, который установлен по умолчанию. На экране высветится предложение авторизации. После авторизации будет отображаться предложение поделиться доступом с приложением. После чего окно браузера можно закрыть. При удачном подключении вы увидите стандартный браузер файлов FastReport VCL. Осталось только проверить загруженный файл в NextCloud. На этом настройка подключения успешно окончена. Теперь вы знаете, как подключаться к NextCloud в FastReport VCL. Если у вас есть Linux, то вы можете протестировать новый транспорт нигде не регистрируясь, а развернув сервер NextCloud на своей машине.
Читать
26 сентября 2023

Установка компонентов FastReport и FastCube в Lazarus

С релизом новой версии для Delphi направления 2023.3 произошли изменения во внутренней инфраструктуре продуктов. В этой статье мы рассмотрим установку компонентов FastReport в Lazarus. Содержание статьи: 1. Что нового?2. Сравнение редакций и продуктов;3. Установка продуктов в Lazarus;3.1 Установка Lazarus для Windows;3.2 Установка Lazarus для Linux;3.3 Установка пакетов в Windows;3.4 Установка пакетов в Linux. Что нового? Продукт для генерации отчетов FastReport состоит из нескольких компонентов, в частности из движка скрипта, ядра построения отчета, пакетов локализации. Эти компоненты распространяются и в Rad Studio, и в Lazarus. В Lazarus появились новые пакеты. Ранее смена языка требовала большой перекомпиляции, теперь же у нас появился пакет frLocalizationLibrary.lpk который управляет сменой языка. Каждый язык представлен в виде отдельного пакета, например frLanguageGermanPkg.lpk, frLanguageJapanesePkg.lpk, … Английский язык, как и ранее, выбран по умолчанию поэтому отдельного языкового пакета под английский язык нет. Смена языка не требует даже перезапуска приложения, его можно менять прямо в процессе работы. Для смены языка нужно:1. Положить на форму компонент TfrLocalizationController (из пакета frLocalizationLibrary.lpk);2. В его свойстве Language выберете нужный язык (например, Italian), список языков зависит от установленных в IDE пакетов;3. Добавьте в инспекторе проекта языковой пакет (например, frLanguageItalianPkg);4. В коде основного юнита в разделе uses добавьте имя пакета без окончания Pkg (например, frLanguageItalian). А также были выделены пакеты frCoreLibrary.lpk и frGraphicsLibrary.lpk, которые не добавляют новых компонентов, но хранят в себе общий код для различных продуктов.Для удобства все пакеты, имеющие расширение .lpk, перенесены в одну директорию. Теперь пользователям не придется искать вручную в папках конкретные пакеты.Остальные файлы, как и ранее распределены по директориям, ибо это необходимо самому Lazarus. Дополнительно был адаптирован продукт FastCube для платформы Lazarus. Попробуйте встроить FastCube в свой проект с помощью триальных компонентов. Сравнение редакций и продуктов Нагляднее всего будет рассмотреть продукты изучая какие пакеты в них входят. Название пакета Описание пакета FastScript FastReport FastCube fs_lazarus.lpk библиотека для выполнения скриптов + + + frCoreLibrary.lpk вспомогательный пакет с реализацией общего базового функционала + + + frLocalizationLibrary.lpk пакет для управления языками + + + frLanguage*Pkg.lpk  40 языковых пакетов + + + frGraphicsLibrary.lpk вспомогательный пакет с реализацией общего графического функционала - + - fr_lazarus.lpk пакет со всеми основными компонентами продукта - + - frxchartlazarus.lpk пакет для chart-ов(диаграмм) - + - frxe_lazarus.lpk пакет с экспортами - + - frxlazdbf.lpk пакет для работы с БД формата BDF - + - frxlazsqlite.lpk пакет для работы с СУБД SqLite - + - frxPDFlazarus.lpk пакет для отображения PDF документов(только для Windows) - + - frxrichlazarus.lpk пакет для отображения Rich документов(рекомендуется только для Windows ввиду ограничений базового пакета) - + - frCS_lazarus.lpk пакет с клиент-серверными компонентами, с ними вы можете познакомиться тут - +* - fcxLazarus.lpk пакет со всеми основными компонентами продукта - - + fcxprint.lpk пакет для интеграции с FastReport - - + fcxprintTee.lpk пакет для интеграции с FastReport Chart(диаграммы) - - + fcxScript.lpk пакет для интеграции с FastScript - - + fcxexport.lpk пакет с экспортами FastCube - - + fcxCharting.lpk пакет для chart-ов(диаграмм) В FastCube - - + *Клиент-серверные компоненты входят в FastReport только в лицензии Enterprise. Дополнительно рассмотрим Trial и Academ лицензии соответствующих продуктов. Trial нужна для тестирования продукта перед покупкой, Academ используется в образовательных целях и не применяется в коммерческих проектах.Обе лицензии включают в себя предварительно скомпилированные версии урезанных пакетов. FastScript - Trial имеет одно ограничение - недоступен запуск скриптов. Ограничения FastReport - Trial: Только английский язык; Печать и экспорт ограничена 5 страницами с пометкой в углу ,что редакция Trial; Отсутствует Rich View. Ограничения FastReport - Academ: Печать и экспорт отмечены водяным знаком редакции; Отсутствуют Rich View, 2D штрихкоды, большая часть экспортов. FastCube Trial имеет одно ограничение - в случайных ячейках вместо данных выводится текст “TrialString”.   Установка FastReport в Lazarus Начнём с установки, собственно, Lazarus. В самом начале нам нужно поставить ПО под свою операционную систему. Установка Lazarus для Windows Первым делом скачиваем установочный пакет Lazarus с официального сайта и выбираем разрядность своей системы. Для Windows установщик Lazarus-а укладывается всего в один .exe файл и с ним не должно возникнуть проблем. Далее мы скачиваем с официального сайта нужную версию архива. Из скаченного архива копируем содержимое в C:\Windows\System32 и C:\Lazarus, после чего перезагружаем Windows. Затем запускаем Lazarus и настраиваем его. Просто нажимаем «ок» и соглашаемся с настройками по умолчанию. Установка Lazarus для Linux Есть 2 способа установить Lazarus в Linux. Первый способ - через менеджер пакетов. Для этого введите в терминал одну из следующих команд: // DEB Users - sudo apt-get install lazarus // RPM Users - sudo yum install lazarus // or sudo dnf install lazarus Это очень быстро и просто, но данная команда установит “стабильную” версию Lazarus (имеется в виду последнюю оттестированную версию на вашем дистрибутиве, причём для разных дистрибутивов они будут отличаться). Стабильная версия может отставать от актуальной (самой последней) версии. В отличие от Delphi и Rad Studio наши компоненты не поддерживают старые версии Lazarus. Тем самым возможны ситуации в которых наши продукты не заработают под стабильной версией. И в отношении Lazarus наши компоненты разрабатываются только на актуальной версии Lazarus. Особенно актуально это для крупных (релизных) обновлений Lazarus. Если же стабильная версия отличается от актуальной незначительно, то есть большой шанс на корректную работу наших компонентов. Наша компания не несёт ответственности за корректную работу с этой версией. Вы как пользователь делайте это “на свой страх и риск”. В худшем случае вы потеряете немного времени на обновление Lazarus до актуального. Но еще важнее это в отношении предварительно скомпилированных компонентов (Trial и Academ редакции). Самая главная особенность предварительно скомпилированных пакетов в Lazarus состоит в том, что они будут работать только на той версии Lazarus, на которой они компилировались (то есть на актуальной). Поэтому мы рекомендуем вам воспользоваться вторым способом, а именно ручной установкой пакетов. Как и в Windows в первую очередь скачиваем установочный пакет Lazarus с официального сайта (https://www.lazarus-ide.org/). Каждый пункт в данном списке состоит из 4 файлов (3 пакета-установщика и текстовый файл).- Установочный пакет Lazarus(project);- Установочный пакет fpc-src;- Установочный пакет fpc(laz);- Файл README.txt. Важно установить их в правильном порядке. Сначала fpc(laz), затем fpc-src и в последнюю очередь Lazarus(project). Немного подробнее рассмотрим сам процесс установки. Дело в том, что последний пакет Lazarus(project) в большинстве дистрибутивов будет иметь около 100 отсутствующих зависимостей. Поэтому проще всего устанавливать пакеты через какое-нибудь графическое вспомогательное приложение (например, QApt или GDebi), которое самостоятельно скачает необходимые вспомогательные пакеты. Но если вы будете пользоваться более простыми утилитами, которые не умеют автоматически скачивать зависимости (например dpkg), то после установки вам придется установить их самим. Это зачастую делается очень просто. В нашем примере после установки пакета с ошибкой о нерешенных зависимостях вам будет достаточно ввести следующую команду: sudo apt-get -f install На этом установка Lazarus в Linux будет завершена. Заранее устраним проблему со шрифтами. Во всех операционных системах есть шрифты, которые установлены по умолчанию. Так, например, шрифт Arial по умолчанию есть и в Windows и скажем в Ubuntu. Но по факту Arial установленный по умолчанию в Ubuntu это не тот же самый Arial установленный в Windows, потому текстовые отчеты, созданные в Windows Lazarus будут плохо выглядеть в Linux Lazarus (и наоборот). Чтобы этого избежать сразу установим в Linux шрифты как в Windows. Для Ubuntu это можно сделать командой: sudo apt-get install msttcorefonts Но для других Linux дистрибутивов команда может отличаться. Далее для корректной работы SqLite требуется установить следующие пакеты: sqlite3, libsqlite3-dev. Подробнее можно почитать тут. (https://wiki.freepascal.org/SQLite). Для Ubuntu это можно сделать командой: sudo apt-get install sqlite3 libsqlite3-dev Запускаем Lazarus и настраиваем его. Нажимаем «Ок» и соглашаемся с настройками по умолчанию. Установка пакетов в Windows Наш новый установщик в Windows сам установит все пакеты за вас. Просто запустите его и следуете инструкции. Отдельно стоит отметить то, что вам не придется искать директории Lazarus-а по всему компьютеру, достаточно использовать файлы настроек, генерируемые при установке Lazarus. Поэтому наш установщик не сможет найти ваш 2 или 3 Lazarus, который вы скопировали руками. Если вы хотите, чтобы на вашем устройстве было несколько Lazarus и в каждом стоял Fastreport или другой наш продукт, то для установки второй копии Lazarus запускайте установщик Lazarus и ставьте галочку “мультиустановка”. Установка пакетов в Linux Для Linux нужно скачать с официального сайта соответствующий .deb или .rpm пакет и установить его. В данный момент они просто распаковываются в соответствующую папку в директории “/usr/share/…”. Директория указана в описании самого пакета. В Linux пока не планируется автоматическая установка пакетов аналогичная Windows. Если вы новичок в Linux, то рекомендуем скопировать разархивированный продукт в вашу домашнюю директорию(“/home/username/”) чтобы не заморачиваться с правами доступа. Как и говорилось выше все .lpk файлы собраны в папке Lpks. Для установки пакетов нажимаем Пакет (Package) -> Открыть файл пакета *.lpk (Open Package File .lpk), выберете пакет в файловом менеджере и у вас появится следующее окно: В нем для Professional и выше нажмите компилировать (Compile), дождитесь окончания компиляции и нажмите использовать (Use). Для Academic и Trial сразу нажмите использовать (Use). После установки каждого пакета Lazarus будет перезагружаться. Ранее мы указывали строгий порядок установки пакетов. Но из-за множества причин (возросшего количества пакетов, усложнения связей между пакетами, а также учитывая, что они все лежат в одной папке) данный подход стал не актуален. Вы без проблем сможете найти пакет, который отображается в зависимостях у того, который вы хотите установить. Впрочем, вы можете установить все пакеты разом, а Lazarus сам будет разбираться с порядком компиляции, для этого: 1. В Lazarus выберите “Пакет” -> “Открыть файл пакета (.lpk)”;2. Выделите все требуемые пакеты и нажмите “открыть”;3. Выберете “Пакет” -> “Установить/Удалить пакеты”;4. В колонке “Доступные для установки” (справа) выберите нужные пакеты;5. Нажмите “Сохранить и перезапустить IDE”. До версии 2.0.0 очень часто встречалась ошибка компиляции и (или) установки, в момент написания этого документа последней версией является 2.2.6 и эту ошибку в Lazarus до сих пор полностью не убрали, но значительно сократили её вероятность. Если у вас 1 из пакетов не будет компилироваться или устанавливаться, то вам придется опуститься вниз и перекомпилировать или переустановить зависимости пакета. Для этого нажмите по необходимому пакету двойным кликом мыши и перекомпилируйте, а после переустановите. После удачной установки всех пакетов нажмите Проект (Project) -> Открыть проект (Open Project) и откройте проект fast-report\LDemo\FRDemo.lpi и попробуйте его запустить, после чего нажмите кнопку Design. Если у вас выдаст вот такую ошибку отрицательной высоты в Linux:   В некоторых редких GTK интерфейсах можно встретить этот баг. Просто запускайте приложение без отладки или же поставьте галочку напротив «Игнорировать этот тип исключений». *Или смените графическую оболочку. Например, эта ошибка не проявляется в GTK оболочке KDE Plasma. Последний нюанс, который вам важно знать, при создании своих проектов, что наш дизайнер использует многопоточность, которая в Linux Lazarus по умолчанию отключена. Для того чтобы её включить, откройте в инспекторе проекта (Проект -> Инспектор проекта) файл с расширением «.lpr» и допишите в первым пунктом в uses юнит cthreads.
Читать