Построитель Word документов для Ruby

Библиотека Ruby для создания настраиваемых Word отчетов с использованием REST API

Интегрируйте функции генерации Word документов на основе шаблонов и источников данных в программное обеспечение Ruby.

Автоматизируйте создание Word документов в Ruby, создавайте готовые к печати Word отчеты любой сложности с помощью Ruby SDK. Это облачное решение построено на основе шаблонов, источников данных и мощного LINQ синтаксиса, что дает Ruby разработчикам гибкость для точного соответствия техническим и бизнес-требованиям.

Используя эту Ruby библиотеку, вы можете программно создавать настраиваемые Word отчеты в любой операционной системе. Красиво отформатированные Word документы, такие как контракты, заказы, счета-фактуры, отчеты об отгрузке, коммерческие предложения, накладные, могут быть собраны на лету как часть вашего Ruby ПО.

Генерация Word документов с помощью Ruby

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

Вообще говоря, генерация Word отчета — это процесс, который объединяет текст, данные и графику в единое целое и экспортирует результат в формат Word файла в наглядном виде. Для получения информации о поддерживаемых форматах ввода/вывода посетите нашу документацию.

Что такое GroupDocs Assembly for Ruby

GroupDocs Assembly for Ruby — это облачное решение для создания Word документов с использованием шаблонов и источников данных. Шаблон документа выступает в роли базового каркаса, который, помимо стандартного содержимого (текст, таблицы, диаграммы и пр.), включает специальные поля-заполнители для вставки значений из источника данных. Вставлять можно не только отдельные значения, но и целые массивы данных в виде таблиц и графиков.

Шаблон также содержит программные конструкции — правила генерации Word документов, управляющие выбором данных и обработкой условий. Для привязки данных к шаблону документа используется синтаксис LINQ выражения, который позволяет разработчикам обрабатывать данные универсальным способом, независимо от типа используемого источника данных. Таким образом, наш Ruby Cloud SDK обеспечивает гибкость при создании Word контента и мощный набор методов для обработки данных.

Этот продукт также поддерживает функции Mail Merge, если вы хотите создавать и отправлять клиентам пакеты персонализированных писем в Word формате. Вам просто нужно вставить поля Mail Merge в шаблон документа и передать его в Cloud API вместе с источником данных.

Независимо от масштаба и типа автоматизации Word документов, которую вы собираетесь внедрить, создание отчета на Ruby состоит из трех шагов:

  • Создайте шаблон Word документа с полями-заполнителями и правилами создания документа, которые будут регулировать варианты структуры и содержимого.
  • Создайте источник данных в Word формате или JSON.
  • Напишите несколько строк кода Ruby, чтобы передать все в API построения документов и получить обратно собранный результат в Word формате.

Разработка шаблона документа и использование правил генерации Word документа

Разработка шаблонов — сложная задача. Помимо четкого понимания требований к итоговому Word документу, потребуются аналитические навыки и навыки программирования. Хороший дизайн шаблона должен отражать точку зрения заказчика на тот или иной вопрос. Наиболее эффективным подходом является сочетание табличных данных и графики в правильном соотношении, которое определяется бизнес-требованиями.

Как упоминалось выше, структура шаблона обычно содержит некоторые фиксированные блоки контента (текст, изображения, логотипы и пр.), смешанные со специальными программными конструкциями, управляющими логикой сборки Word документа. Эти правила генерации Word документов определяются с помощью специального синтаксиса выражений, который позволяет разработчикам делать следующее:

  • встраивать содержимого внешнего документа, изображений, диаграмм, списков, таблиц, гиперссылок, закладок и т.д.
  • работать с данными, используя формулы и последовательные операции с данными
  • задавать формат представления для числовых, текстовых, графических, графических элементов, а также элементов даты и времени
  • вставлять блоки контента в зависимости от условных выражений
  • определить специальные переменные для 'ресурсоемких' расчетов, которые рассчитываются только один раз
  • рассчитывать формулы при сборке табличных документов
  • назначать атрибуты тела сообщения электронной почты и динамически создавать вложения
  • создавать и вставлять штрих-коды
  • установливать цвет фона для HTML документов

Вы можете узнать больше о синтаксисе шаблонов в нашем Руководстве разработчика.

Требования

GroupDocs Assembly for Ruby не требует установки какого-либо внешнего ПО или сторонних инструментов. Это облачное решение для Word, где все программные взаимодействия выполняются по сети с использованием REST API.

Безопасность

Все продукты GroupDocs полностью соответствуют отраслевым стандартам безопасности: передача данных осуществляется по протоколу SSL, что исключает возможность перехвата информации третьими лицами. Для подключения к облачным службам GroupDocs вам необходимо использовать личные ключи доступа. Пожалуйста, обратитесь к краткому руководству.

Генерация Word документа в Ruby

В следующем примере кода показано, как создавать Word отчеты с помощью Ruby.

Создать DOCX документ на Ruby
Входные файлы
Загрузить шаблон документа
Формат вывода
Выберите целевой формат из списка
require_relative '../lib/groupdocs_assembly_cloud'

GroupDocsAssemblyCloud.configure do |config|
  config.client_data['app_sid'] = '####-####-####-####-####'
  config.client_data['api_key'] = '##################'
end
@assembly_api = AssemblyApi.new
file_name= 'Input1.docx'
data_file= 'Input2.docx'

request_file_content = File.open(file_name)
upload_document_request = UploadFileRequest.new(
    file_content: request_file_content, path: file_name)
@assembly_api.upload_file(upload_document_request)

template_file_info = TemplateFileInfo.new(:FilePath => file_name)
assemble_options = AssembleOptions.new(
    :TemplateFileInfo => template_file_info, 
	    :SaveFormat => "docx", 
		    :ReportData => File.open(data_file, 'rb') { |f| f.read })
request = AssembleDocumentRequest.new assemble_options
@assembly_api.assemble_document request
  
Копировать Ruby код в буфер обмена

Как сгенерировать Word документ с помощью Ruby

  1. Установите 'GroupDocs.Assembly Cloud SDK for Ruby'.
  2. Добавьте ссылку на библиотеку (импортируйте библиотеку) в свой проект Ruby.
  3. Создайте шаблон документа, добавьте программные конструкции, управляющие вставкой данных из источника данных.
  4. Создайте источник данных.
  5. Загрузите шаблон документа в облачное хранилище GroupDocs (вам потребуется войти в личный кабинет).
  6. Создайте документ, передав свой шаблон и данные в Cloud API.

Как установить DOCX Report Builder для Ruby

Установите GroupDocs.Assembly Cloud SDK for Ruby, используя хостинг RubyGems. Выполните команду gem install groupdocs_assembly_cloud, чтобы установить пакет. Как вариант, вы можете вручную клонировать исходный код GroupDocs.Assembly Cloud SDK for Ruby с GitHub и использовать его в своем проекте. Следуйте этим Инструкциям, чтобы быстро получить учетные данные и доступ к нашему REST API.

Системные Требования

Ruby 2.6 или новее

Обратитесь к Документации Репозитория, чтобы получить более подробную информацию.

Другие поддерживаемые форматы документов

Вы можете создавать отчеты в других форматах файлов:

5%

Подпишитесь на обновления продукта Aspose

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