Brainenjii писал(а):По планам: cоздание документа/таблиц прямо из кода считаю излишним.
Согласен! У самого давно в голове такие идеи крутятся. Нужно не создавать из кода документ, а парсить шаблон, выискивая теги. Что-то вроде:
{r:[Table1]} - размножить строку таблицы документа, в которой находится этот тег, для всех записей набора данных "Table1" (заменяя вложенные теги);
{f:[Table1.Field1]:%5.2d} - вставить значение поля с именем "Field1" текущей записи набора данных "Table1" (":%5.2d"-опциональная строка формата);
{f:VarDate1:mmm yyyy г.} - вставить значение переменной/параметра отчета с именем "VarDate1";
{p:[Table1]} - размножить параграф;
{s:[Table1]} - размножить раздел.
Brainenjii писал(а):В ближайших мечтах - добавить возможность построения Master/Detail и Cross отчетов...
ODT позволяет вложенные таблицы, т.е. повторять строку таблицы для записей "Master", в которую (в строку) вложена таблица с размножаемыми строками для записей набора "Detail".
Для крос-отчетов что-то вроде:
{c:[Table1]} - размножить ячейки помеченного этим тегом столбца во всех строках таблицы документа для всех записей набора данных "Table1" (заменяя вложенные теги).
Brainenjii писал(а):В мечтах чуть отдалённей - связывание таблиц и каких-нибудь DataSet'ов...
Нужен компонент TDBWorkspace (возможно на базе TDataModule), умеющий читать из файла/потока/строки конфигурацию и создающий рабочее окружение для отчета (необходимые наборы данных и связи между ними).
Brainenjii писал(а):для преобразования в html использую xsltproc
man libreoffice писал(а): --convert-to output_file_extension[:output_filter_name] [--outdir output_dir] file...
Batch converts files. If --outdir is not specified then the current working directory is used as the output directory for the converted files.
Examples:
--convert-to pdf *.doc
Converts all .doc files to PDFs.
--convert-to pdf:writer_pdf_Export --outdir /home/user *.doc
Converts all .doc files to PDFs using the settings in the Writer PDF export dialog and saving them in /home/user.
Правда, удастся ли запустить libreoffice без иксов, не уверен.