doki.at.ua   Доки - личная база данных и генератор документов

Программный конструктор Руна

Руна — программный конструктор баз данных и генератор документов, являющийся развитием конструктора Доки: http://runabase.ru

            В конструкторе Руна возможен импорт данных из конструктора Доки.




Для скрытия всплывающей рекламы в Chrome, Safari и Opera рекомендуем использовать плагин AdBlock.

Онлайн-справка

Меню программы

Конструктор структуры объекта

Типы полей

Вкладки детализации

Константы проекта

Работа с объектами

Экспорт/импорт данных

Создание шаблонов объекта и документов на основе шаблонов

Функции шаблонов

Совместимость с Valon.Doc

Меню программы

  • Структура: переход в режим настройки структуры данных;
  • Константы: форма создания полей-констант;
  • Настройки: окно параметров программы;
  • Промо: страница, загружаемая с сайта;
  • О программе: версия и дата текущей программы.

Конструктор структуры объекта

На вкладке "Объекты" расположен список всех объектов проекта, а на вкладке "Структура объекта" — свойства выбранного объекта и его поля.

Кнопки "Создать", "Удалить" и "Изменить" служат для создания нового объекта, удаления или изменения структуры выбранного объекта. Кнопка "Шаблон" предлагает создать шаблон нужного типа (MS Word/Excel или html) с заданным именем. Созданные объекты отображаются в левой панели. Последовательность объектов можно изменить перетаскивая их в нужную позицию.

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

Типы полей

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

Все типы полей имеют три общих свойства (кроме метки): наименование; условие отображения поля в общем списке и вкладку детализации, на которой оно будет отображаться (примечание: если для существующей вкладки не будет назначено ни одно поле, то она будет скрыта).

Тип строки имеет четыре дополнительных свойства: исходное значение, которое принимает поле при создании новой записи; условие текста, назначение которого определяет многострочный текст; условие ссылки, отображающее введенное значение как ссылку (http:// — на веб-страницу, mailto: — на создание письма в дефолтном почтовике) и условие отображения в фильтре, которое определяет наличие поля с соответствующим названием на вкладке фильтра. Фильтрация записей по строковому полю производится в зависимости от наличия в данном поле введенного контента.

Дополнительные свойства числового поля: условие автогенерации, при котором в новой записи значение устанавливается на 1 больше максимального; число знаков после запятой и исходное значение в новой записи.

Дополнительные поля для фильтра типа даты: условие включения в фильтр; исходное значение в фильтре (сегодня / начало месяца / конец месяца) и изменение на число дней в большую или меньшую сторону (+ / -). Данные по этому полю фильтруются по принципу "больше или равно" от установленного значения.

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

Дополнительные свойства переключателя: три значения; условие включения в фильтр и исходное значение фильтра. При включении переключателя в фильтр, на вкладке фильтрации к нему добавляется значение "все". Если исходное значение не определено, то фильтр устанавливается на "все" и до выбора другого условия фильтрация не осуществляется.

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

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

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

Вкладки детализации

Все созданные поля объекта по умолчанию отображаются на первой вкладке, которая изначально называется "Детализация". Эту вкладку нельзя удалить, но можно переименовать. Максимальное число вкладок - 8. Все вкладки располагаются в порядке их создания и их последовательность изменить нельзя. Вкладку, имеющую хоть одно поле, удалить нельзя и для её удаления необходимо указать её полям другую вкладку размещения. Поля на вкладке имеют ту же последовательность, что и в общем списке полей объекта. Размещение полей на вкладках легко варьируется созданием/переименованием вкладок и порядком полей в структуре объекта. Важно: никогда не удаляйте существующее поле, чтобы поместить его на другую вкладку — при этом из базы данных будет удалены все данные этого поля и их восстановление будет невозможно.

Константы проекта

Константы служат для помещения в формируемые документы единой информации для всех объектов проекта. В отличии от экспортируемых полей объектов, имеющих формат [Объект.Поле], [Объект.Вложенный объект.Поле] и т.д., константы представлены в шаблоне документа только своим наименованием, заключенным в квадратные скобки: [Наименование], [Р/с], и т.д.

Работа с объектами

В режиме работы с данными объект представляет собой две колонки: список записей и детализация выбранной записи на одной или более вкладках. Вкладка со списком содержит кнопку создания новой записи, если включен импорт/экспорт записей — кнопки импорта/экспорта и список записей выбранного объекта. Список представляет собой таблицу, колонками в которой являются поля, включенные в конструкторе для отображения в списке. Примечание: первое поле объекта всегда отображается в списке, по нему производится сортировка записей и по нему выбирается запись данного объекта, включенного как ссылка в другой. Под списком записей располагается вкладка фильтра с полями, назначенными для фильтрации и кнопкой «Сбросить», которая снимает все установленные фильтры. Если не одно поле не имеет фильтра, то вкладка фильтра скрывается. Фильтрация осуществляется по принципу И (суммирование условий всех установленных фильтров).

При создании новой записи открываются для изменения данные первой вкладки детализации. После сохранения открываются данные следующей вкладки и так до последней.

На каждой вкладке детализации находятся: кнопка для изменения полей данной вкладки и кнопка удаления записи. При изменении данных вкладки, после нажатия кнопки «Сохранить», следующая вкладка уже не открывается. Если поле объекта имеет исходное значение, то оно устанавливается только при создании новой записи — при изменении существующей записи исходное значение уже игнорируется. На форме просмотра данных, у полей ссылок на объект, имеется кнопка для перехода к записи этого объекта. В случае, если объект, к которому производится переход, уже был открыт и в нем был установлен фильтр, не позволяющий увидеть эту запись, будет выдано сообщение о том, что запись находится вне диапазона выбранного фильтра.

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

Экспорт/импорт данных

При включении кнопок импорта/экспорта у объекта, на вкладке списка записей дополнительно отображаются кнопки, позволяющие произвести экспорт и импорт данных данного объекта в файле формата *.csv (Comma-Separated Values — значения, разделённые запятыми, см. Википедию), разделительным символом в котором является назначенный символ в операционной системе (для русской локализации обычно точка с запятой). Формат CSV-файлов понимают: любой текстовый редактор, Microsoft Excel, OpenOffice Calc, Google Docs и другие, что позволяет производить обмен данными с другими программными продуктами.

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

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

В случае, если в открываемом файле обнаруживается некорректная структура (число разделителей в строке имен полей не совпадает с числом разделителей в одной из строк с данными) — будет выдано сообщение об этом и импорт будет запрещен. Если данные в окне предосмотра отсутствуют или представляют из себя кракозябры — измените кодировку (обычно UTF-8).

Создание шаблонов объекта и документов на основе шаблонов

В качестве шаблона (исходной формы будущих документов) служит обычный документ MS Word/Excel (не путать со стандартным шаблоном Word — *.dot). На базе такого шаблона создаётся окончательная форма документа для каждого объекта. Для использования документа в качестве шаблона его необходимо поместить в папку с именем, соответствующим имени объекта. Для упрощения процесса создания шаблона, в режиме конструктора, служит кнопка «Шаблон». После задания имени будущего шаблона и выбора его типа (MS Word/Excel или html) будет создана папка по имени объекта (если её ещё не было) и в ней будет создан файл соответствующего типа для установленной в системе версии MS Office. При создании шаблона в него помещаются образцы всех полей данного объекта в формате [Объект.Поле], [Объект.Вложенный объект.Поле] и т.д., константы проекта и примеры использования функций.

Созданные для объекта шаблоны отображаются кнопками в правой части окна. При выборе производится открытие установленного в системе MS Word/Excel и формирование конечного документа с сохранением в служебную папку .doc под именем в формате «ИмяОбъекта.ИмяШаблона.ЗначениеПервогоПоля». Если файл с таким именем уже существовал, то он удаляется из папки, а на его месте создается новый. Поэтому нельзя создать в один момент времени два документа на базе одного шаблона, т.к. удаление открытого файла невозможно. Если у объекта нет записей (ещё не созданы или установлен фильтр), то кнопки шаблонов скрыты. Если в операционной системе установлен MS Office 2003, то шаблоны 2008-2010 офиса также скрываются.

Чтобы быстро создать копию уже существующего шаблона, достаточно сделать копию файла шаблона в каталоге объекта и, после перехода по формам в программе, отобразится обновленный список шаблонов. Созданием копий шаблона можно значительно упростить разработку новых форм документов и расширить возможности использования Доков.

Примечание: если папка .doc становится слишком большой, то её можно удалить вместе с файлами. При формировании нового документа она будет создана вновь.

Функции шаблонов

Для форматирования данных, передаваемых из объекта в документ, используются функции обработки полей. Функция в шаблоне представлена в формате: [Функция(Объект.Поле)]. Для некоторых допускаются вложенные условные операторы (см. ниже). Примеры функций автоматически добавляются в создаваемый в конструкторе шаблон после списка полей объекта и констант. Для установленной в программе (не операционной системы!) локализации работают функции соответствующего языка и по его правилам (русский, украинский, английский).

Примечание: если название поля содержит скобки, то функции работать не будут.

Функции преобразования числа:

  • Прописью/прописью, Прописом/прописом, Inwords/inwords — преобразуют число в строку с большой/маленькой буквы в мужском роде (пример: один, двадцать два);
  • ПрописьюЖ/прописьюЖ, ПрописомЖ/прописомЖ — преобразуют число в строку в женском роде (пример: одна, двадцать две);
  • Группы, Групы, Groups — число с разбивкой на разряды с помощью сепаратора, установленного в операционной системе (для русского языка — пробел);
  • РубКоп, ГрнКоп, SenJun — число в формате «ЦелаяЧасть руб. ДробнаяЧасть коп.»;
  • ПрописьюРублейКоп/прописьюРублейКоп, ПрописомГривеньКоп/прописомГривеньКоп, InwordsSeniorJun/inwordsSeniorJun — число в формате «ЦелаяЧасть рублей (рубль, рубля) ДробнаяЧасть коп.» с большой/маленькой буквы;
  • ПрописьюРублейКопеек/прописьюРублейКопеек, ПрописомГривеньКопійок/прописомГривеньКопійок, InwordsSeniorJunior/inwordsSeniorJunior — число в формате «ЦелаяЧасть рублей (рубль, рубля) ДробнаяЧасть копеек (копейка, копейки)» с большой/маленькой буквы.

Функции преобразования даты:

  • ПолнаяДата, ПовнаДата, LongDate — дата в формате «ДД Месяца ГГГГ г.» (месяц в родительном падеже);
  • Day — день даты;
  • Month/month — месяц даты прописью с большой/маленькой буквы в именительном падеже;
  • MonthNumber — числовое значение месяца даты;
  • Year — год даты;
  • ДатаПрописью — строковое представление даты (пример: "Двадцать первого августа две тысячи двенадцатого года");
  • месяца, місяця — название месяца в родительном падеже.

Функции работы со строками:

  • Строчный, Рядковий, Lower — приведение первого символа к нижнему регистру;
  • string(ЕслиПоле=Значению?ТоСтрока:ИначеСтрока) — условная функция для вывода той или иной строки, в зависимости от значения поля.

Другие функции:

  • 1, 2, ... — символ строки/числа/даты/переключателя под указанным номером;
  • -1, -2, ... — символ с конца под указанным номером;
  • image — изображение png (из папки .img) по названию соответствующее значению поля;
  • text — содержание файла txt (из папки .txt) соответствующего по названию значению поля;
  • Штрихкод, Barcode — графическое изображение штрих-кода формата EAN-13 для строки.

Дополнительные условные операторы для функций:

  • image(ЕслиПоле=Значению?ТоИзображение:ИначеИзображение) — если условие равенства значению выполняется, то в документ вставляется изображение из файла с именем ТоИзображение.png, иначе из файла с именем ИначеИзображение.png;
  • text(ЕслиПоле=Значению?ТоФайл:ИначеФайл) — если условие равенства значению выполняется, то в документ вставляется текст из файла с именем ТоФайл.txt, иначе из файла с именем ИначеФайл.png;
  • text(ЕслиПоле=Значению?ТоФайл) — если условие равенства значению выполняется, то в документ вставляется текст из файла с именем ТоФайл.txt, иначе поле шаблона удаляется.

Особенности некоторых функций:

  • выделение символа из даты — имеет 8 вариантов: 1(Дата), 2(Дата), ..., 8(Дата) которые возвращают цифры из даты, представленной в формате ДДММГГГГ;
  • вставка изображения или текста — если файл с требуемым именем не обнаружен в служебном каталоге, то функция в документе не скрывается для того, чтобы пользователь смог обнаружить его отсутствие;
  • вставка текста — при вставке сохраняет формат абзаца (например позволяет продолжить нумерованный или маркированный список в документе);
  • вставка штрих-кода — в случае, если введён некорректной код, добавляется корректная контрольная цифра.

Совместимость с Valon.Doc

Перенос данных из Valon.Doc в Доки 2: Предварительно создать копию config.xml. Поправить в текстовом редакторе файл данных config.xml: в каждом тэге заменить имена тэгов на отличающиеся: string, string1, string2, … Сохранить и открыть его MS Excel-ем используя область задач XML-источника (при этом Excel создаст схему на основе данных). Перетащить из дерева источника папку Values в ячейку A1. Используя панель «Список» импортировать данные повторно открыв файл данных. Переименовать столбцы в соответствии с названиями полей в Доках 2. Сохранить документ в формате *.csv. Теперь данные из него можно импортировать в Доки 2.

Как использовать шаблоны из Valon.Doc в Доках? Шаблоны для документов в Valon.Doc сохранялись с типом файла «Шаблон документа (*.dot)» (поэтому мы и стали использовать слово шаблон). В Доках-же документ, используемый в качестве шаблона, является обычным файлом «Документ Word (*.doc)» и он размещается в папке объекта. Это удобно тем, что любой существующий документ Word можно быстро сделать шаблоном, положив его в папку объекта (аналогично и Excel). При формировании документа Доки открывают соответствующий файл, заменяют в нем поля на данные из программы и сохраняют в папке документов под именем из первого поля записи (поэтому нельзя открыть два документа одной записи). Так что, если необходимо использовать шаблон из Valon.Doc – откройте его правой кнопкой мыши (Открыть) и сохраните как обычный документ в нужную папку. Ну и не забудьте, что поля и функции в новых Доках гораздо разнообразнее.

P.S.
Рекомендуем перейти на конструктор Руну — импорт данных из Valon.Doc в нём полностью автоматизирован.