
Тирика-Магазин
Параметры отчетов
Пример заполнения Extras вы можете посмотреть во включенных в дистрибутив программы Тирика-Магазин отчетах программы. После правильного заполнения Extras вы можете создать дизайн и наполнение вашего отчета. Здесь мы не будем останавливаться на правилах работы с Oxetta: вы можете посмотреть их на сайте Oxetta; здесь же мы только упомянем Oxetta Report Parameters, которые программа Тирика-магазин передает из окна параметров отчета:
- {current-shop-id}: Идентификатор текущего склада
- {shop-ids}: Идентификаторы выбранных в окне параметров отчета складов через запятую
- {group-ids}: Идентификаторы выбранных в окне параметров отчета групп товаров через запятую
- {groups-filter}: Заменяется на строчку "goods.group_id IN (список ID групп) AND" в случае, если в окне выбоора групп товаров были выбраны конкретные группы товаров, либо на пустую строку в случае, если пользователь выбрал для включения в отчет все группы товаров
- {archived-goods-filter}: Заменяется на пустую строку в случае, если у пользователя есть право просмотра архивных документов, и на строку " goods.is_archived=0 AND " в противном случае
- {include-certificates}: Заменяется на 1 в случае, если пользователь в окне параметров отчета, закладка групп товаров указал включить в отчет подарочные сертификаты, и 0 в противном случае
- {date-begin}: Дата и время начала отчетного периода, указанная в окне параметров отчета, в формате unix time
- {date-end}: Дата и время окончания отчетного периода, указанная в окне параметров отчета, в формате unix time
- {date-non-printable}: Дата и время, указанные в окне ввода даты в окне параметров отчета, в формате unix time
- {good-ids}: Идентификаторы выбранных в окне параметров отчета товаров через запятую
- {today}: Дата создания отчета в формате unix time
- {serial-number}: Серийный номер оборудования (в кавычках)
- {text-parameter}: Значение произвольного параметра
- {quoted-text-parameter}: Значение произвольного параметра в одинарных кавычках
- {user-ids}: Идентификаторы выбранных в окне параметров отчета пользователей через запятую
- {contractor-ids}: Идентификаторы выбранных в окне параметров отчета поставщиков или покупателей через запятую
- {fifo-or-lifo}: Заменяется на 1, если формула расчета себестоимости выставлена в FIFO или LIFO, и на 0 в противном случае
- {exclude-zero-remainders}: Заменяется на 1, если чекбокс "Не печатать для товаров с нулевым остатком" окна групп товаров включен, и на 0 в противном случае
- {include-only-zero-remainders}: Заменяется на 1, если чекбокс "Печатать только товары, кот. осталось мало" окна групп товаров включен, и на 0 в противном случае
- {flags}: Заменяется на перечень номеров цветов (0 - нет флажка, 1 - красный, 2 - желтый, 4 - зеленый) флажков, помеченных галочками в окне периода отчета. Например, если в этом окне выбраны красный и зеленый флажки, то макро {flags} будет заменено на строчку "1,4" (без кавычек)
- {good-flags}: Заменяется на перечень номеров цветов (0 - нет флажка, 1 - красный, 2 - желтый, 4 - зеленый) флажков, помеченных галочками в окне групп товаров. Например, если в этом окне выбраны красный и зеленый флажки, то макро {flags} будет заменено на строчку "1,4" (без кавычек)
- {empty-from}: Заменяется на пустую строку при работе в однопользовательском режиме (SQLite) и на строку " FROM RDB$DATABASE " при работе в сетевом режиме (FireBird)
- {row-number}: Заменяется на строку "rowid" при работе в однопользовательском режиме (SQLite) и на строку "RDB$DB_KEY" при работе в сетевом режиме (FireBird)
Эти Report Parameters вы можете использовать в SQL-запросах, например, SELECT * FROM waybills WHERE waybill_date>={date-begin}. В этом случае движок Oxetta перед выполнением SQL-запроса получит значение даты начала периода из программы Тирика-Магазин и заменит Report Parameter {date-begin} на полученное значение.
Специальные имена Text Box'ов
В процессе создания Report'а в Oxetta вы помещаете в окно отчета различные Band'ы, а на них, в свою очередь, помещаете различные Element'ы, в частности, элементы типа Text Box. В качестве имен (атрибут Name) некоторых Text Box'ов вы можете использовать специальные имена. Увидев такое имя, движок Oxetta получит дополнительную информацию из программы Тирика-Магазин и занесет ее в атрибут Text такого Element'а. Например, если добавить в заголовок отчета элемент типа Text Box с именем dates-period, то движок Oxetta перед печатью получит из программы Тирика-Магазин строчку типа "с 01.01.2017 по 03.02.2017" с датами начала и конца отчетного периода и заменит ею атрибут Text этого элемента, так что в заголовке отчета вы увидите строчку с указанием отчетного периода.
Перечень таких специальных имен Text Box'ов приведен ниже:
- company-name: Наименование компании, как оно указано в пункте меню Файл|Настройки|Компания
- company.name: Аналогично предыдущему
- shop-names: Наименования выбранных в окне выбора складов складов через запятую
- report-date: Дата создания отчета в формате dd.mm.yyyy
- date-printable: Дата, указанная в окне ввода даты в окне параметров отчета
- dates-period: Строка "с 01.01.2017 по 03.02.2017" с датами начала и окончания отчетного периода, указанными в окне параметров отчета
- user-names: Имена выбранных в окне параметров отчета пользователей через запятую
- contractor-names: Наименования выбранных в окне параметров отчета поставщиков или покупателей через запятую
Обратите также внимание на то, что имена таких элементов могут дублироваться. Например, если вам необходимо в заголовке отчета отобразить строчку с датами начала и конца отчетного периода дважды, вы можете поместить на соотв. Band отчета элементы типа Text Box с именами dates-period-1 и dates-period-2, и это тоже будет работать.
Продолжение статьи: Несколько полезных замечаний