Печать информации

Система Papyrus позволяет получить в отпечатанном виде любой отчет или форму первичного документа.Кроме собственно печати, система предоставляет инструменты для предварительного просмотра и экспорта данных.

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

Система использует для печати данных модуль Crystal Reports версии 7.0 или выше. Если вы имеете в своем распоряжении систему дизайнера отчетов Crystal Reports, то можете самостоятельно настраивать формы отчетов. Формирование данных для печати реализуются внутренней подсистемой DL600, обеспечивающей средства кастомизации данных для печати.

Использование печати

Функция печати доступна практически из всех таблиц, из некоторых диалогов, а также из окна вывода сообщений.

Как правило, печать осуществляется по нажатию клавиши <F7> либо выбору соответствующей кнопки на панели инструментов или в диалоге.Специализированные способы печати могут использовать иные комбинации клавиш. Такие случаи разбираются отдельно в каждом конкретном случае.

Перед печатью на экране обычно появляется стандартный для всех разделов системы диалог установок печати. Иногда ему могут предшествовать другие диалоги, например, диалог выбора формы печатаемого документа.Диалог печати

Диалог печати (рис. link) содержит следующие элементы:

Переключатель выбора действия
Этот переключатель позволяет выбрать действие, которое вы собираетесь выполнить:

○Печать

Если нажать [ОК] при таком выборе, то документ сразу отправится на принтер, установленный на вашем компьютере по умолчанию.

○Экспорт

Этот вариант позволяет преобразовать отчет в один из форматов, которые будут предложены вслед за выбором этой опции. Система может преобразовать отчет в форматы Microsoft Word, Microsoft Excel, RTF, CSV и многие другие. Если для отчета, который должен быть отправлен на экспорт, заданы специальные опции экспорта с признаком silent (см. ниже), то открывается для использования флаг ✓Отправить на электронную почту. Включив этот флаг и указав адрес назначения, вы предпишете системе отправить файл отчета по данному адресу.

○Предварительный просмотр

При выборе этой опции внешний вид отчета будет показан на экране точно в том виде, в каком будет выведен на печать. Такая возможность бывает очень полезна при печати многостраничных отчетов (система позволит вам при этом отпечатать только выборочные страницы) для экономии времени и бумаги.

○Экспорт в XML

Выбрав этот вариант, вы заставите систему создать файл в формате XML.

Файл имеет такое же имя, как и структура данных, по которой должен строиться отчет. Файл формируется в каталоге для исходящих файлов, определенном конфигурацией. Комментарии к полям файла можно увидеть в файле описания данных dd/ppexp.dl6.

○Подготовка данных для конструирования отчета

Создает файлы данных, необходимые для редактирования формы отчета в системе Crystal Reports. Поле под переключателем содержит путь к каталогу, в котором будут сформированы эти файлы. По умолчанию система использует каталог, определенный следующими правилами:

  • Если в файле конфигурации pp.ini установлен каталог данных для отчетов (параметр [system] reportdatapath=path), то этот каталог будет применен как заголовочный.
  • В противном случае, заголовочным каталогом будет тот, который определен как временный.
  • Внутри заголовочного каталога создается (если не существует) подкаталог с именем структуры данных DL600, по которой должен строиться отчет.
  • Пример

    0.8

    Если параметр reportdatapath=h:/reportdata, а структура данных для отчета называется PersonEvent, то полный путь к файлам данных для отчета по умолчанию будет h:/reportdata/personevent

    Вы можете переопределить путь к создаваемым файлам по своему усмотрению.

    ○Конструирование отчета

    Эта опция делает то же, что и предыдущая и в дополнение к этому вызывает редактор форм Crystal Reports. Если Papyrus не может обнаружить на вашем компьютере установленный редактор отчетов, то данный вариант будет не доступен.

    ▼Отчет

    Комбо-бокс позволяет выбрать один из нескольких альтернативных форм отчета, если это предусматривается конкретной настройкой. В поле ввода комбо-бокса отображается текстовое описание отчета, как оно определено в конфигурационном файле stdrpt.ini или report.ini.

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

  • Полный путь к файлу отчета
  • Дату и время модификации файла отчета
  • Наименование структуры данных DL600, используемое для печати отчета.
  • Эта информация может понадобиться в случае, если вы столкнетесь с какими-либо проблемами при печати отчета. В таком случае сообщите указанные здесь данные службе поддержки.

    ▼Принтер

    В этом комбо-боксе можно выбрать принтер, на который должен быть выведен отчет. В списке комбо-бокса отображаются все принтеры, установленные на компьютере, на котором запущен сеанс Papyrus . Изначально в комбо-боксе ничего не выбрано.

    Фактически при пустом поле принтера печать будет идти на принтер по умолчанию. С другой стороны технически существует небольшая разница между печатью без явного выбора принтера и выбором принтера по умолчанию. Суть данного различия в том, что при явном выборе принтера в этом поле, программа сообщает подсистеме печати Crystal Reports о необходимости печатать на конкретный принтер, в то время как в противном случае Crystal Reports самостоятельно выбирает принтер. Это может (с небольшой вероятностью) повлиять на применяемые опции печати.

    Количество копий
    Если вы выбираете действие ○Печать, то в этом поле можно установить количество экземпляров отчета, которое должно быть отправлено на принтер.

    Для остальных действий это поле не значимо.

    Настройка печати

    Этот раздел адресован системным администраторам и людям, занимающимся поддержкой системы.

    Терминология

    Стандартный отчет
    Форма отчета, поставляемая вместе с дистрибутивом системы. Все стандартные отчеты хранятся в каталоге BIN/RPT. При обновлении версии системы стандартные отчеты могут быть заменены процедурой инсталляции без предупреждения. Поэтому, если вы меняете какой-либо из стандартных отчетов, не следует оставлять его в этом каталоге.
    Локальный отчет
    Форма отчета, имеющая имя, совпадающее с именем стандартного отчета, но отличающееся по виду от стандартной формы и хранимая в специальном подкаталоге BIN/RPT/LOCAL.

    При печати какого-либо отчета, система ищет файл этого отчета сначала в каталоге BIN/RPT/LOCAL. Если искомая форма найдена в этом каталоге, то для печати используется она, в противном случае используется стандартная форма. При обновлении версии системы каталог локальных форм не затрагивается, поэтому измененные формы отчетов утеряны не будут.

    Альтернативный отчет
    Отчет, который может быть распечатан наряду со стандартным или локальным простым выбором в поле “Вид отчета” диалога печати, описанного в предыдущем пункте. В отличие от локального отчета, который замещает стандартный, альтернативный отчет не лишает пользователя возможности пользоваться стандартной формой.
    Структура данных DL600
    Описание данных для отчета с использованием специального языка. В подавляющем большинстве случаев структуры данных, поставляемые с дистрибутивом системы, удовлетворяют требованиям, предъявляемым пользователями. В редких случаях, когда это не так, структуры данных можно адаптировать под нужды пользователей.

    Локальные отчеты

    Система позволяет изменять стандартные отчеты, превращая их в локальные, и печатать измененные локальные отчеты вместо стандартных. При печати система ищет требуемый файл отчета сначала в каталоге BIN/RPT/LOCAL и, если не находит его там, обращается к каталогу BIN/RPT.

    Таким образом, если вы хотите изменить форму одного из стандартных отчетов, скажем Invoice, то скопируйте файл Invoice.rpt из каталога BIN/RPT в каталог BIN/RPT/LOCAL, и изменяйте его уже в этом каталоге. Благодаря этому, при очередном обновлении версии системы, изменения, вносимые вами в файл отчета, не будут потеряны.

    Если структура данных, по которому строится локальный отчет изменилась в новой версии, то этот локальный отчет следует верифицировать. Сведения об измененных структурах данных содержатся в файле DOC/Version.txt.

    Файлы определения отчетов

    Перед тем, как рассказать об альтернативных отчетах и способах фиксации параметров экспорта отчетов, необходимо разъяснить, что такое файлы определения отчетов.

    Для того, чтобы система могла идентифицировать когда и какой файл отчета использовать, а также связать файл отчета со структурой данных, которой этот отчет соответствует, используются файлы определения отчетов. Их всего два: BIN/StdRpt.ini и BIN/Report.ini. Оба файла имеют текстовый формат, аналогичный ini-файлам системы Windows.

    Файл stdrpt.ini

    Этот файл поставляется с дистрибутивом системы. Поэтому, при каждом обновлении версии системы, он заменяется на новый. В связи с этим не следует менять этот файл самостоятельно за исключением очень редких случаев, когда это действительно необходимо. При этом обязательно сохраняйте копию измененного вами файла.Файл stdrpt.ini состоит из зон, каждая из которых описывает один стандартный отчет. Формат описания следующий:

    [ReportName]
    ModifDate =date
    Data =StructName
    Descr =Description

    Здесь слова, выделенные подчеркиванием - параметры.

    ReportName

    имя файла отчета без пути и расширения.

    Date

    дата последней модификации описания этой зоны.

    StructName

    наименование структуры данных, используемой отчетом.

    Description

    краткий текст описания файла отчета. Этот текст высвечивается в диалоге печати.

    Пример описания отчета

    [Invoice]
    ModifDate=13/03/2004
    data=InvoiceData
    descr=Счет-фактура

    Файл report.ini

    Этот файл, как и предыдущий, находится в подкаталоге BIN каталога системы. В файле report.ini определяются альтернативные отчеты и параметры экспорта.

    Файл разделен на зоны по именам отчетов. Формат этих зон следующий:

    [ReportName]
    ReportFilePath=Description;StructName
    Format=xls,1
    Destination=Application,c:/temp$$$.xls
    Silent=1

    Здесь слова, выделенные подчеркивание - параметры.Первая строка определяет альтернативную форму отчета. Таких строк на каждое наименование отчета может быть несколько.

    Строка состоит из следующих элементов:

    ReportFilePath
    Путь к файлу альтернативного отчета. Это должен быть либо полный путь (например, h:/ppy/bin/rpt/local/invoice2.rpt), либо путь, заданный относительно подкаталога BIN основного каталога системы (например, rpt/local/invoice2.rpt). Если система не обнаружит файл по заданному пути, то вся строка будет проигнорирована без сообщений об ошибке.
    Description
    Краткое текстовое описание отчета, которое будет высвечиваться в диалоге выбора формы отчета.
    StructName
    Необязательный параметр, указывающий какую структуру данных система должна использовать для печати этой формы отчета. Если структура не указывается, то точка с запятой, предшествующая этому параметру также опускаются

    Указанная здесь структура данных должна иметь общего предка с основной структурой отчета.



    h:/ppy/rpt/local/goodsbillz.rpt=Счет заказа
    h:/ppy/rpt/local/goodsbillt.rpt=Товарный чек
    h:/ppy/rpt/local/plabelsmall1.rpt=Ценник малый;GoodsBillData2

    Параметры Format, Destination и Silent определяют фиксацию опций экспорта.

    Format
    Обозначение формата, в котором следует экспортировать отчет с дополнительными параметрами, следующими после обозначения формата и друг после друга через запятую. См ниже.
    Destination
    Назначение экспорта:
    Application, FilePath
    Экспортировать в файл FilePath и сразу запустить приложение, открывающее этот файл. В имени файла следует указывать расширение, по скольку приложение, которое должно быть запущено, идентифицируется именно по расширению файла.
    Disk, FilePath
    Просто экспортировать в файл с именем FilePath.

    Если FilePath не указан, то экспорт будет осуществлен в каталог OUT, а имя файла будет иметь вид exp00000.ext, где ext - расширение, определяемое форматом экспорта, а 00000 заменяется на уникальный для этого каталога номер. Если указанный FilePath является каталогом, то имя файла формируется так же, как описано выше, но вывод осуществляется в заданный каталог.

    Если указано имя файла без пути или с относительным путем, то полный путь результирующего файла определяется относительно текущего рабочего каталога.

    Silent
    Этот параметр может принимать значение 0 или 1. В первом случае экспорт будет осуществляться также, как будто никакие параметры фиксации экспорта не заданы.

    Значение 1 позволяет автоматически передать сформированный файл по адресу электронной почты, указанному в диалоге печати.

    Следующая таблица перечисляет все допустимые обозначения форматов и соответствующие им параметры.

    WordWin
    Microsoft Word.
    Text
    Текстовый файл.

    Pdf
    Файл в формате Pdf.
    RichText
    Rich Text Format (RTF).

    CommaSeparated
    Текстовый файл со значениями разделенными запятыми. Параметры:

  • использовать формат даты такой же, как в отчете (1 - да, 0 - нет)
  • использовать числовой формат такой же, как в отчете (1 - да, 0 - нет)
  • TabSeparated
    Текстовый файл со значениями разделенными символами табуляции. Параметры:

  • использовать формат даты такой же, как в отчете (1 - да, 0 - нет)
  • использовать числовой формат такой же, как в отчете (1 - да, 0 - нет)
  • CharSeparated
    Текстовый файл со значениями, разделенными символами, определяемыми дополнительными параметрами. Параметры:

  • использовать формат даты такой же как в отчете (1 - да, 0 - нет)
  • использовать числовой формат такой же как в отчете (1 - да, 0 - нет)
  • разделитель строк (символ)
  • разделитель полей (строка символов)
  • Xls
    Файл электронных таблицы Microsoft Excel. Параметры:

  • экспортировать заголовки (1 - да, 0 - нет)

  • все объекты одной области в строку (1 - да, 0 - нет)
  • постоянная ширина колонок (1 - да, 0 - нет)

  • если параметр “постоянная ширина колонок” имеет значение 0 и параметр “ширина колонок основана на” имеет значение 3 или 5, то этот параметр номер группы - по умолчанию задавать 1
  • ширина колонок основана на

  • 1
    заголовке отчета,
    2
    заголовке страницы,
    3
    заголовке группы,
    4
    теле отчета,
    5
    нижней части группы,
    6
    нижней части страницы,
    7
    нижней части отчета
    по умолчанию - 4

  • постоянная ширина колонок (число, используется если параметр “постоянная ширина колонок” - 1)
  • Если вы хотите задать фиксацию параметров экспорта для всех отчетов, то определите их в зоне [default]. В этом случае, если для какого-либо отчета параметры экспорта не заданы, то используются параметры из этой зоны.

    Автоматическая генерация файлов данных

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

    Для вызова функции обратитесь к пункту меню Справочники→ Админ→ Создание файлов для Win32 отчетов. На экране вы увидите диалог в котором два поля:

    Наименование отчета
    В этом поле следует ввести имя отчета. Обращаем внимание на то, что речь идет именно об имени отчета, а не о наименовании структуры данных DL600. Так для стандартной счета-фактуры следует ввести Invoice (регистр символов не важен).

    Если вы хотите, чтобы система сформировала файлы данных для всех отчетов, зарегистрированных в системе, то наберите в этом поле ALL.

    Каталог данных
    Головной каталог, внутри которого будут создаваться каталоги с файлами данных. По умолчанию система устанавливает здесь путь к каталогу, определенному параметром

    [system] reportdatapath в файле конфигурации pp.ini.

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