HTML-печать предназначена для печати различных типов документов.
Отличительной особенностью от обычного способа печати заключается в легкости
создания шаблонов отчетов, для написания которых требуются базовые знания языка HTML.
В основу HTML-печати положен принцип, на основе которого для каждого
типа документов может использоваться несколько отчетов, каждый из которых представляет
собой файл с расширением rep (шаблон отчета, написанный на языке
HTML с использованием ключевых слов, ссылок на значения полей и заголовки таблиц).
Рассмотрим типичный шаблон для печати, на примере задач - файл task.rep
(поставляется в комплекте с WinOrganizer в папке Reports).
| |
|
[%%ReportType=Tasks%%]
[%%ReportCaption="Tasks"%%]
[%%ReportDescription=" "%%]
[%%HEADER%%]
<html>
<head>
<title>%%ReportTitle%%</title>
<META http-equiv=Content-Type content="text/html; charset=%%Charset%%">
</head>
<BODY bgcolor=#FFFFFF leftmargin=5 topmargin=5 rightmargin=5 bottommargin=5>
<FONT size=2 color=#000000 face="Arial">
%%ImgCaption%%<STRONG>%%Caption%%</STRONG>
</FONT>
<hr>
<TABLE border=1 cellpadding=3 width="100%" cellspacing=0>
<tr bgcolor="#C8EBC7">
<td width="18"><P align=center> </td>
<td width="36"><P align=center>%</td>
<td width="18"><P align=center>!</td>
<td>@@Title@@</td>
<td width="80">@@Date@@</td>
<td width="80">@@Time@@</td>
</tr>
#==============================================================================
[%%ROWTABLE%%]
<tr bgcolor="%%BGColor%%">
<td width="18"><P align=center> <font color="%%FontColor%%">
%%Alarm%%</font> </td>
<td width="36"><P align=center> <font color="%%FontColor%%">
%%CompletedPercent%%</font> </td>
<td width="18"><P align=center> <font color="%%FontColor%%">
%%Priority%%</font> </td>
<td>%%IgnoreHtmlTitle%%</td>
<td width="80"> <font color="%%FontColor%%"> $$Date$$ </font> </td>
<td width="80"> <font color="%%FontColor%%"> $$Time$$ </font> </td>
</tr>
#==============================================================================
[%%COMMENTS%%]
<TR bgcolor="%%BGColor%%"> <td colSpan=6> %%Comments%% </td> </TR>
#==============================================================================
[%%FOOTER%%]
</table>
</body>
</html>
|
На основании этого шаблона, при печати задач формируется отчет следующего вида:
Шаблон состоит из семи обязательных частей - секций. Все секции должны следовать
в строго определенном порядке и выглядят следующим образом:
| [%%ReportType=Tasks%%] | | тип отчета |
| [%%ReportCaption="Tasks"%%] | название отчета |
| [%%ReportDescription=" "%%] | описание отчета |
| [%%HEADER%%] | шапка отчета |
| [%%ROWTABLE%%] | данные |
| [%%COMMENTS%%] | комментарии |
| [%%FOOTER%%] | окончание отчета |
В секции [%%ReportType=Tasks%%] после знака "=" записывается тип
отчета.
Для Задач эта строка должна быть записана, как
[%%ReportType=Tasks%%], для Заметок - [%%ReportType=Notes%%]
и так далее (см. полный список всех секций в разделе
Условные обозначения, секции, ключевые слова ...).
Секция [%%ReportCaption="Tasks"%%] - после знака "=" в кавычках
записывается название отчета, которое при печати будет отображаться в
поле Шаблон отчета окна Параметры отчета.
Секция [%%ReportDescription=" "%%] - после знака "=" в кавычках
записывается краткое описание отчета, которое при печати будет отображаться
в поле Описание отчета окна Параметры отчета.
Секция [%%HEADER%%] - описание шапки отчета. В нее входя
стандартные HTML-теги и ключевые слова, необходимые для создания шапки отчета:
Пример секции [%%HEADER%%]:
| |
|
[%%HEADER%%]
<html>
<head>
<title>%%ReportTitle%%</title>
<META http-equiv=Content-Type content="text/html; charset=%%Charset%%">
</head>
<BODY bgcolor=#FFFFFF leftmargin=5 topmargin=5 rightmargin=5 bottommargin=5>
<FONT size=2 color=#000000 face="Arial">
%%ImgCaption%% <STRONG>%%Caption%%</STRONG>
</FONT>
<TABLE border=1 cellpadding=3 width="100%" cellspacing=0>
<tr bgcolor="#C8EBC7">
<td width="18"><P align=center> </td>
<td width="36"><P align=center>%</td>
<td width="18"><P align=center>!</td>
<td>@@Title@@</td>
<td width="80">@@Date@@</td>
<td width="80">@@Time@@</td>
</tr>
|
Так, ключевое слово %%Charset%%, при формировании отчета, заменяется номером кодовой страницы.
Вместо %%ImgCaption%% подставляется иконка текущего документа. Вместо %%Caption%%
- название документа.
Тэг <TABLE border=1 cellpadding=3 width="100%" cellspacing=0> открывает
начало описания шапки таблицы, в которую будут выводится данные.
@@Title@@, @@Date@@, @@Time@@ -
заголовки соответствующих полей Title, Date, Time. При
печати будут заменены на "Заголовок", "Дата" и "Время".
В секции [%%ROWTABLE%%] расположены значения полей,
отображаемые в таблице.
| |
|
[%%ROWTABLE%%]
<tr bgcolor="%%BGColor%%">
<td width="18"><P align=center> <font color="%%FontColor%%">
%%Alarm%% </font> </td>
<td width="36"><P align=center> <font color="%%FontColor%%">
%%CompletedPercent%% </font> </td>
<td width="18"><P align=center> <font color="%%FontColor%%">
%%Priority%% </font> </td>
<td>%%IgnoreHtmlTitle%%</td>
<td width="80"> <font color="%%FontColor%%"> $$Date$$ </font> </td>
<td width="80"> <font color="%%FontColor%%"> $$Time$$ </font> </td>
</tr>
|
где %%Priority%% - ключевое слово (преобразованное значение поля Priority)
$$Date$$, $$Time$$ - значение полей Date, Time
В секции [%%COMMENTS%%] находится ключевое слово %%Comments%%,
отвечающее за вывод комментариев к документу.
| |
|
[%%COMMENTS%%]
<TR bgcolor="%%BGColor%%"> <td colSpan=6> %%Comments%%</td> </TR>
|
Раздел [%%FOOTER%%] описывает теги окончания шаблона HTML отчета.
| |
|
[%%FOOTER%%]
</table>
</body>
</html>
|
|