# Учебник

Этот учебник предназначен для краткого введения в Kugar.

Вы создадите с помощью &kudesigner; простой шаблон отчёта, простой файл данных и в конце сгенерируете законченный отчёт.

Исходный код для примеров шаблонов и файла данных может быть найден в файлах`sample1.kut` и `sample1.kud`, которые распространяются совместно с &kugar;.

## Создание шаблона отчёта с помощью &kudesigner;

Запустите &kudesigner; набрав в командной строке `kudesigner`.

После того как вы запустите дизайнер, выберите Файл|Создать и установите размер страницы в Letter и её ориентацию в Landscape. Установите левое и правое поля в 48, верхнее и нижнее в 40. Все размеры в &kudesigner; (поля страницы, размеры, позиции, &etc;) указываются в миллиметрах. Диалог Новый отчёт

Теперь создан новый отчёт и все кнопки на Панели элементов и Панели разделов теперь включены (соответствующие пункты меню в Элементы и Секции также включены). Диалог Пустой отчёт

Теперь пришло время добавить некоторые разделы к отчёту и определить их размеры. Мы добавим заголовок и итоги отчёта, верхний и нижний колонтитул и одну секцию. Заголовок и итоги отчёте печатаются соответственно на первой и последней страницах перед и после любых данных отчёта. Итоги отчёта являются хорошим местом для помещения вычисляемых полей. Колонтитулы страницы печатаются сверху и снизу каждой страницы. Наш отчёт будет иметь одну секцию с уровнем 0. Это означает что все наши строки данных имеют идентичную структуру (&ie; поля). Если структура данных более сложная или организована согласно отношению главный-подчинённый, должны быть создано больше уровней секций. Пример как это может быть сделано смотрите в файлах `sample3.kut` и `sample3.kud` За дополнительной информацией обратитесь к описанию элементов шаблона.

Секции могут быть добавлены с помощь меню Секции или Панели секций. Теперь добавим заголовок и итоги отчёта, колонтитулы и затем секцию. При добавлении секции установите её уровень в 0 как показано на снимке экрана далее. Установка уровня секции

Теперь наш отчёт должен напоминать этот снимок экрана. Отчёт с секциями

Все наши разделы имеют предопределённую высоту - 50mm. Давайте изменить это. Щёлкните &RMB; на секции Заголовка отчёта и нажмите кнопку Изменить свойства на панели Правка и затем выберите секцию. Должно показаться окно свойств. Изменение высоты секции

Теперь установите высоту заголовка отчёте в 70. Повторим эту процедуру для всех остальных секций. Установите высоту верхнего колонтитула в 45 а секции в 30. Нижний колонтитул и итоги отчёта должны быть высотой 32 мм.

Шаблон отчёта с размеченными должным образом секциями готов к заполнению элементами отчёта. Отчёт с настроенными размерами секций

Теперь вы можете добавлять в секции отчёта элементы. Пять различных типов элементов могут быть добавлены в отчёт. Метка является прямоугольной областью, которая может иметь границу и может быть заполнена любым текстом. Цвет текста метки и фона, так же как и её шрифт могут быть изменены. Тип линии границы и её цвет также можно настроить. Поле может быть помещено в секцию данных. Поля представляют поля дынных, их значения будут браться из файла данных при генерации отчёта. Количество, суммы, средние числа &etc; для значений полей могут быть напечатаны в отчёте с помощью Вычисляемых полей. Специальные - метки с предопределённым текстом типа текущей даты или номера страницы. Общий вид отчёта может быть улучшен с с помощью Линий.

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

Так, давайте добавим метки в заголовок отчёта и верхний колонтитул как показано на снимке экрана ниже. Обратите внимание, что у метки Mutiny Bay Software BorderStyle и BorderWidth установлены в 0, а Отчёт об инвентаризации программного обеспечения - 1mm. Все цвета установлены как комбинации трёх значений (RGB - красный, зелёный,синий) и разделены запятыми.

Также добавим элементы полей в секция данных. Только предположим что мы имеем четыре поля - заголовок, версию, платформу и количество копий. Так четыре элемента Поле должны быть помещены и их свойства Поля установлены. Обратите внимание, что Свойство Текст автоматически установлено в [`имя_поля`]

Нижний колонтитул является хорошим местом для отображения текущей даты и номера страницы, так что добавим два специальных поля и установим их свойства Тип в 0 и 1. Специальное поле с Типом=0 представляет дату и с типом=1 - номер страницы. Обратите внимание, что свойство Текст автоматически изменилось.

Последний элемент, который будет помещён - это Вычисляемое поле для поля копии. Для назначения суммы(копий) установите свойство Field вычисляемого поля в копии и CalculationType в 1 (функция суммы).

Наконец, наш шаблон отчёта должен выглядеть следующим образом: Полный отчёт

## Создание файла данных для отчёта

Вообще говоря, файлы данных могут быть созданы несколькими способами. Некоторые используют таблицы преобразования xsl для создания &XML; из другого документа &XML; (типа электронной таблицы &kspread;); другие используют собственную программу для получения данных из базы данных и заполнения файла данных. В этом учебнике мы просто создадим его вручную. Исходный код для этого примера может быть найден в файле `sample1.kud` или скопирован из примера ниже.

    <?xml version=1.0 encoding=UTF-8?>

    <!DOCTYPE KugarData [
        <!ELEMENT KugarData (Row* )>
        <!ATTLIST KugarData
            Template CDATA #REQUIRED>

        <!ELEMENT Row EMPTY>
        <!ATTLIST Row
            level CDATA #REQUIRED
            title CDATA #REQUIRED
            version CDATA #REQUIRED
            platform CDATA #REQUIRED
            copies CDATA #REQUIRED>
    ]>

    <KugarData Template="sample1.kut">
        <Row level="0" title="  BRU" version="15.0" platform="x86" copies="1"/>
        <Row level="0" title="  Caldera Open Linux" version="2.2" platform="x86" copies="3"/>
        <Row level="0" title="  K Desktop" version="1.1.1" platform="x86" copies="1"/>
        <Row level="0" title="  Netscape Communicator" version="4.6" platform="x86" copies="10"/>
        <Row level="0" title="  Redhat Linux" version="5.0" platform="x86" copies="11"/>
        <Row level="0" title="  Redhat Linux" version="5.1" platform="x86" copies="12"/>
        <Row level="0" title="  Redhat Linux" version="5.2" platform="x86" copies="14"/>
        <Row level="0" title="  Redhat Linux" version="6.0" platform="x86" copies="15"/>
        <Row level="0" title="  Star Office" version="5.0" platform="x86" copies="1"/>
        <Row level="0" title="  Star Office" version="5.1" platform="x86" copies="3"/>
        <Row level="0" title="  Microsoft Windows NT" version="3.1" platform="x86" copies="1"/>
        <Row level="0" title="  Microsoft Windows NT" version="3.51" platform="x86" copies="1"/>
        <Row level="0" title="  Microsoft Windows NT" version="4.0" platform="x86" copies="1"/>
        <Row level="0" title="  Microsoft Windows NT" version="5.0" platform="x86" copies="1"/>
        <Row level="0" title="  Sun Solaris" version="2.5" platform="Sparc" copies="1"/>
    </KugarData>

## Создание отчёта

В настоящий момент вы имеете шаблон отчёта (`sample1.kut`) и файл данных отчёта (`sample1.kud`).

Для создания отчёта, наберите в оболочке следующую команду: `kugar `-r `sample1.kut`` `-d `sample1.kud```

Это запустит окно оболочки &kugar; с сгенерированным отчётом. Созданный отчёт