Предназначение Мин. интерфейс. Осн. форма с экспортными функциями. Когда вызываются эти функции. Параметры экспортных функций. Описание функций.

Предназначение

Механизм расширенных отчетов позволяют отображать визуальные отчеты на различных устройствах вывода, а также автоматически формировать такие отчеты при снятии Z отчета. Расширенный отчет может не иметь визуального отображения и иметь функциональное назначение, например, выполнять определенные операции с КММ и т.п.

Минимальный программный интерфейс

Расширенный отчет это внешняя обработка, которая должна располагаться в каталоге «путь к базе»\ExtFiles\Reports. Синоним обработки является представлением отчета в меню Расширенные отчеты.
Обработка обязательно должна иметь основную форму, в которой располагаются основные экспортные функции, со строго определенными именами:
Функция ПолучитьВерсиюПротокола (обязательная)
Процедура ВывестиОтчет
Процедура НастройкаОтчета
Процедура НастройкаПечатиПриZОтчете
Функция СформироватьОтчетПриСнятииZОтчета
Наличие функции ПолучитьВерсиюПротокола обязательно, в ней определяется возможности расширенного отчета, от которых зависит наличие остальных экспортных функций.

Вызов экспортных функций

Получить версию протокола - служебная функция, вызывается для проверки функциональных возможностей расширенного отчета: в форме настройки расширенных отчетов и в супервизоре при нажатии кнопки «Расширенные отчеты».
ВывестиОтчет - вызывается при нажатии кнопки в меню «Расширенные отчеты».
НастройкаОтчета - вызывается при нажатии кнопки настройки отчета в форме «Настройка расширенных отчетов».
НастройкаПечатиПриZОтчете - вызывается при нажатии кнопки настройки печати при снятии Z отчета в форме «Настройка расширенных отчетов».
СформироватьОтчетПриСнятииZОтчета - вызывается при снятии Z отчета (если для отчета установлена настройка «Печатать при Z отчете»).

Параметры экспортных функций

Функция ПолучитьВерсиюПротокола(СтруктураФункций)
СтруктураФункций - Структура - содержит набор строго определенных ключей. Данную структуру можно получить функцией глобального общего модуля - ПолучитьСтруктуруФункцийОтчета()

Процедура ВывестиОтчет(СтрокаНастроек, лККМДляПечати)
СтрокаНастроек - Строка - значение типа Соответствие, преобразованное в строку функцией ЗначениеВСтрокуВнутр(). Берётся из сохраненных настроек, установленных процедурой НастройкаОтчета().
лККМДляПечати - СтрокаТаблицыЗначений - ККМ для печати. Можно получить функцией Кассир5_DataAccess.ПолучитьККМ()

Процедура НастройкаОтчета(СтрокаНастроек)
СтрокаНастроек - Строка - значение типа Соответствие, преобразованное в строку функцией ЗначениеВСтрокуВнутр().

Процедура НастройкаПечатиПриZОтчете(СтрокаНастроек)
СтрокаНастроек - Строка - значение типа Соответствие, преобразованное в строку функцией ЗначениеВСтрокуВнутр().

Функция СформироватьОтчетПриСнятииZОтчета(СтрокаНастроек, лККМДляПечати)
СтрокаНастроек - Строка - значение типа Соответствие, преобразованное в строку функцией ЗначениеВСтрокуВнутр(). Берётся из сохраненных настроек, установленных процедурой НастройкаПечатиПриZОтчете().
лККМДляПечати - СтрокаТаблицыЗначений - ККМ для печати. Можно получить функцией Кассир5_DataAccess.

Описание функций

Функция ПолучитьВерсиюПротокола(СтруктураФункций)
В данную функцию передаётся структура с элементами, определяющими функциональные возможности отчета. По умолчанию значения всех элементов структуры установлен в ложь. Ниже перечислены доступные ключи структуры и их описание.

ВывестиОтчет - если значение данного элемента структуры установить в истину, то отчет будет отображаться в меню «Расширенные отчеты».

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

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

ПечататьПриZОтчете - если значение данного элемента структуры установить в истину, то отчет будет иметь возможность формироваться при снятии Z отчета.

Функция должна возвращать число, отличное от нуля.

Процедура ВывестиОтчет(СтрокаНастроек, лККМДляПечати)
Данная процедура предназначена для интерактивного формирования отчета. Могут использоваться хранимые в базе данных настройки, заданные в форме настроек расширенных отчетов.

Процедура НастройкаОтчета(СтрокаНастроек)
Данная процедура предназначена для установки настроек, используемых при интерактивном формировании отчета. Процедура должна открывать форму с настройками. При закрытии формы с настройками заданные параметры должны быть записаны в соответствие и возвращены во входящий параметр СтрокаНастроек в виде строки, сформированной функцией ЗначениеВСтрокуВнутр().

Процедура НастройкаПечатиПриZОтчете(СтрокаНастроек)
Данная процедура предназначена для установки настроек, используемых при формировании отчета при снятии Z отчета. Процедура должна открывать форму с настройками. При закрытии формы с настройками заданные параметры должны быть записаны в соответствие и возвращены во входящий параметр СтрокаНастроек в виде строки, сформированной функцией ЗначениеВСтрокуВнутр().

Функция СформироватьОтчетПриСнятииZОтчета(СтрокаНастроек, лККМДляПечати)
Данная процедура предназначена для формирования отчета при снятии Z отчета. Могут использоваться хранимые в базе данных настройки, заданные в форме настроек расширенных отчетов. Функция должна возвращать значение «Истина».