Рис. 44 – Окно с формой атрибутов фильтра при задании SQL выражения для фильтра документов с персонифицированным доступом

Или с помощью конструктора (как показано на Рис. 45 и Рис. 46), задавая следующие параметры:

USER

TableID='ADM_ViewUser'.KeyPressMode=1

Рис. 45 – Окно с формой атрибутов фильтра, при задании параметров для фильтра документов с конфиденциальным доступом

Рис. 46 – Окно с формой атрибутов фильтра документов с персонифицированным (конфиденциальным) доступом

В документе "LanDocs: ДЕЛОПРОИЗВОДСТВО. Настройка рабочего места" описаны примеры фильтров, которые можно использовать при просмотре документов, а также на их основе создавать новые фильтры.

5.26. Просмотр информации об объекте

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

Для просмотра подробной информации об объекте выполните следующие действия:

Ø  Выберите в меню Пользователь пункт Информация об объекте.

Ø  Откроется окно Введите ID объекта. ID объекта – идентификатор объекта, можно узнать из базы данных. Кроме того, идентификатор объекта (и краткую информацию об объекте) можно увидеть в окне, открывающемся по двойному щелчку левой кнопки мыши на объекте (Рис. 47).

Рис. 47 – Окно отображения краткой информации об объекте

Ø  После задания идентификатора объекта (служебное поле ID), откроется окно Информация об объекте (Рис. 48), содержащее более подробную системную информацию об объекте. Состав информации в этом окне меняется в зависимости от типа объекта.

НЕ нашли? Не то? Что вы ищете?

Рис. 48 – Окно представления информации об объекте

Кнопка Операции служит для просмотра списка операций, совершенных над объектом см. п. 4.27 "Операции с информационными объектамиОперации_с_информационными_объектами_42".

Кнопка Закрыть служит для окончания просмотра информации по объекту.

5.27. Операции с информационными объектами

Система LanDocs, при использовании подсистемы безопасности, может быть сконфигурирована таким образом, что ряд ответственных операций будут заверяться ЭЦП пользователя. К таким операциям могут быть отнесены операции создания и редактирования элемента справочника и другие. Настройку автоматического подписания операций производит администратор системы (см. п. 4.17 Справочник "Операции"Справо_ник_Операции_20 Справо_ник_Операции_20). Подписание операций производится автоматически.

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

Пункт меню Совершенные операции служит для просмотра списка операций, совершенных над информационным объектом системы, например, элементом справочника (Рис. 49).

Рис. 49 – Окно представления информации о совершенных операциях с данным документом

Для проверки ЭЦП операции:

Ø  Выделите запись о совершенной операции в списке.

Ø  Выберите в меню Операция пункт Проверить подпись. Откроется окно, содержащее информацию об электронной цифровой подписи операции (Рис. 50).

Рис. 50 – Окно с информацией об электронной цифровой подписи операции

5.28. Печать иерархических справочников

В системе предусмотрена печать иерархических справочников путем экспорта в файл формата MS Word или MS Excel.

Для экспорта иерархического справочника в меню справочника выберите команду Печать4 Экспорт MS Word или Печать4 Экспорт MS Excel. Откроется соответствующее приложение, в котором будет представлен справочник. Дальнейшие действия по печати или сохранению в файл выполняются из соответствующего приложения.

6. Проектирование отчетов

Система LanDocs позволяет выпускать разнообразные отчеты по базе данных (в том числе, отражающие статистику по документам и сообщениям), любой степени сложности. Для того чтобы создать новый тип отчета, необходимо сформировать шаблон отчета, зарегистрировать его в системе (см. п. 4.18 Справочник "Отчеты"Справо_ник_От_еты_21) и назначить сотрудникам право "Формировать отчеты" в справочнике "Сотрудники" либо в справочнике "Отчеты" (см. п. 4.5 Справочник "Сотрудники"Справо_ник_Сотрудники_23).

В системе предусмотрено создание отчетов двух типов:

·  текстовые документы MS Word;

·  электронные таблицы MS Excel.

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

6.1. Проектирование шаблонов отчетов в среде WinWord

Шаблоны отчетов в среде WinWord состоят из двух частей:

·  Файл формы – файл в формате RTF.

·  Файл инициализации – текстовый файл с расширением INI.

6.1.1. Настройка формы отчета

Для задания формы необходимо с помощью текстового редактора Microsoft Word (генератором отчетов поддерживаются версии 97/2000/XP) создать документ в формате RTF, в котором будут заданы необходимые элементы отчета. Места, куда нужно вставить значения полей баз данных, помечаются специальными символами в формате сNc, где с – специальный символ, а N – номер под которым наименование этого поля хранится в INI файле (INI файл описывается в п. 5.1.2 "Описание структуры отчета в INI файле отчетаОписание_структуры_от_ета_в_INI_файле_от_ета"). Для каждого элемента отчета существует свой специальный символ для выделения ссылок, относящихся к таблице БД именно этого элемента. Таблица 2 представляет список элементов, соответствующих специальных символов и их описание.

Таблица 2 – Виды элементов формы отчета

Название элемента

Спецсимвол

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

Обычный текст

%

Выводит в произвольном месте один раз значение реквизита, запрос к которому определяется в разделах Header и Attributes

Может использоваться в любом месте отчета, ссылки на поля базы данных доступны во всех остальных элементах отчета.

Значение параметра

#

Для вставки в отчет в данном месте значения параметра, передаваемого процедуре генерации отчета (то, что было задано в окне ввода параметров при запуске отчета).

Есть следующие встроенные параметры:

#8# – ID пользователя (чтобы определить его права).

#9#=’<ID1>,<ID2>…<IDN>’, где: ID1, ID2…IDN – идентификаторы выделенных записей в текущей таблице (отчет по которым формируется). Если выделена одна запись, то значения встроенных параметров #9# и #10# должны совпадать.

#10# – ID текущей записи выбранной в текущей таблице

Таблица

$

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

Строка, где указаны параметры с $, множится по количеству отобранных записей. Условие вывода этих значений определяется в разделе Table N Header и Table N Attrubutes.

Блок

~ (знак тильда)

Блок может применяться в двух случаях:

1. Если необходимо повторить несколько раз таблицу. В этом случае начало блока указывается перед таблицей, а конец – после.

2. Если необходимо для одной строки в таблице отчета вывести несколько значений из другой таблицы. В этом случае начало и конец блока указываются внутри той ячейки таблицы, где необходимо вывести несколько значений.

Условие вывода параметров блока определяется запросами в разделах Block N Header и Block N Attributes

Начало блока помечается строкой &BLOCKnBEGIN&, а окончание блока помечается строкой &BLOCKnEND&, где n–номер блока. Спецсимволы, обозначающие начало и конец блока, должны быть скрытыми (Формат–Шрифт–Скрытый)

Сумма по столбцу

!

Хранится только в rtf–файле и используется для подсчёта суммы числовых значений в столбце. При этом значение N равняется соответствующему N в столбце, по которому рассчитывается сумма. Т. е., если в столбце, по которому надо посчитать сумму, стоит параметр $3$, то параметр, вычисляющий сумму по данному столбцу, должен быть следующим: !3!.

6.1.2. Описание структуры отчета в INI файле отчета

INI файл отчета служит для описания таблиц БД и ссылок на форме отчета на поля этих таблиц. Имя INI файла должно совпадать с именем RTF файла.

В начале INI файла рекомендуется вставить строки комментария (начинающиеся с символа .) и записать в них:

название операции (в справочнике операций), для которой может назначаться отчет.

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

другую поясняющую информацию (например, особенности формирования).

INI файл состоит из описаний секций. Описание секции состоит из заголовка секции и описаний переменных. Заголовок секции – это название секции в квадратных скобках, например, [Name]. Описание переменных (см. Таблица 3) – это последовательность строк вида: Переменная = Значение.

Таблица 3 – Формат INI файла.

Наименование секции и ее назначение

Имена переменных секции

Значения по умолчанию

Назначение переменной

[HEADER]

описание таблицы БД для переменных в обычном тексте.

PhysicalView

Пусто

Имя таблицы (представления) БД.

Conditions

Пусто

Условие выбора записей из БД.

ProcParams

Пусто

Параметры хранимой процедуры.

Name

Пусто

Название отчета.

TablesCount

0

Количество таблиц в отчете.

BlocksCount

0

Количество блоков в отчете.

DoLog

0

Нужно ли вести запись в LOG файл отладочных сообщений (если = 1, то будет вестись запись в файл report. log).

VerifyFunction

Пусто

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

Сообщение об ошибке – строка, которую возвращает проверочная функция.

Генератором отчетов поддерживается вызов только одной функции по отчету.

Пример: VerifyFunction=@FUNCVALUE, CHECKREPORT(#10#,#1#,0)

[Parameters]

описание типов параметров отчета

Число

Пусто

Указание типа параметра:

DATE – дата;

INT – число;

STRING– строка.

[Table N Header]

описание таблицы БД для текстовой таблицы, идущей Nой в тексте.

PhysicalView

Пусто

Имя таблицы (представления) БД.

StartRow

1

Номер строки в таблице, которая будет повторяться по записям из БД.

SortField

Пусто

Поле для сортировки при выборке записей.

Conditions

Пусто

Условие выбора записей из БД.

ProcParams

Пусто

Параметры хранимой процедуры.

DBTable

1

Условие обработки таблицы:

1 – в таблицу будут вставляться значения из СУБД;

0 – таблица будет вставлена в отчет без изменений.

Distinct

Пусто

В случае, когда эта строка не пуста будет вызван SelectDistinct по тем полям, которые будут указаны в этой строке.

[Table N Attributes]

задание соответствия полей БД номерам ссылок на эти поля из шаблона, например: $1$

Число.

Например,

1=DocN.

Пусто

Имя поля таблицы (представления) БД (поле с таким именем обязательно должно присутствовать в таблице БД, указанной в соответствующем разделе Header), либо, если в начале стоит символ @ , то это вызов спецфункции (см. далее).

[Block N Header]

описание таблицы БД для блока идущего Nым в тексте.

PhysicalView

Пусто

Имя таблицы (представления) БД

Conditions

Пусто

Условие выбора записей из БД.

ProcParams

Пусто

Параметры хранимой процедуры.

SortField

Пусто

Поле для сортировки при выборке записей.

Distinct

Пусто

В случае, когда эта строка не пуста будет вызван SelectDistinct по тем полям, которые будут указаны в этой строке.

[Block N Attributes]

задание соответствия полей БД номерам

Число.

Например,

1=DocN.

Пусто

Имя поля таблицы (представления) БД (поле с таким именем обязательно должно присутствовать в таблице БД, указанной в соответствующем разделе Header), либо, если в начале стоит символ @ , то это вызов спецфункции (см. далее).

Примечание:

·  Для удобства построения запросов можно использовать промежуточные переменные, т. е. параметры с любыми номерами из тех, что не используются в rtf–шаблоне. Это удобно, например, для запоминания "ID" записи.

·  Для установления связи между таблицей и блоком в запросе в строке Conditions необходимо указывать ссылку на блок для таблицы или ссылку на таблицу для блока. Параметр необходимо указывать в соответствующих значках (~N~ для ссылки на блок и $N$ для ссылки на таблицу) и его номер должен соответствовать номеру параметра, хранящего необходимое значение (например, хранящего ID записи).

·  Существует ограничение на количество таблиц (30), используемых в шаблоне отчёта.

·  В качестве источника данных можно указать хранимую процедуру, возвращающую набор данных. В этом случае переменная секции PhysicalView должна иметь следующий вид: @PROCNAME, где PROCNAME – название хранимой процедуры. Параметры процедуры перечисляются через запятую и записываются в переменную ProcParams.

·  В переменной SortField также можно указывать:

o  Несколько полей. Пример: SortField=””RegDate”,”DocN””.

o  Вызов хранимой функции. Пример: SortField="GRK_SORT("AddIndex",1)".

·  Для того чтобы использовать запятую в названии элемента управления или в переменной Conditions, её следует писать вместе с символом / (слэш).

Пример

#2#=Edit, Должность лица/, утверждающего акт, NotEmpty, NoBreak,1

·  В качестве описания имени поля БД можно использовать специальные функции, они необходимы для получения вычисляемых значений. Параметры для них задаются последовательно через запятую в той же строке. Доступные функции описаны в п. 5.1.3 Список функций, доступных в генераторе отчетовСписок_функций_доступных_в_генераторе_от_етов_44.

6.1.3. Список функций, доступных в генераторе отчетов

Таблица 4 – Список функций, доступных в генераторе отчетов

Имя

Параметры

Пример

1

@ADD – добавляет к первому числу второе

Число 1,Число 2

@ADD,$1$,$2$

2

@ADDDATEVALUE – увеличивает дату на заданное количество дней

Дата, Число

@ADDDATEVALUE,$4$,1

3

@CHECKDUPLICATE – если следующее значение поля в столбце равно предыдущему, то выводится ‘’ (пустая строка), иначе выводится значение поля

Название поля

@CHECKDUPLICATE, Kind

4

@CHECKDUPLICATEM – если следующее значение поля 1 в столбце равно предыдущему, то выводится ‘’ (пустая строка), иначе выводится значение поля 2

Название поля 1,

Название поля 2

@CHECKDUPLICATEM, DossierID, DescrDossier

5

@COUNT – число записей, удовлетворяющих условию

Имя таблицы (view), условие

@COUNT, lderc,"JournalID"=87646 AND "RegDate">=#1#

6

@COUNT_Z – число записей, удовлетворяющих условию. Если число записей равно 0, то выводится ‘’ (пустая строка).

Имя таблицы (view), условие

@COUNT_Z, lderc,"JournalID"=87646 AND "RegDate">=#1#

7

@DECODEMAIL – выводит текст конфиденциальных сообщений (текст сообщения, текст отчета) при формировании отчета пользователем, на которого сообщение зашифровано.

ID сообщения

@DECODEMAIL,$6$

8

@FORMATDATE – выводит дату в формате ‘YYYY–MM–DD’

Дата

@FORMATDATE,$4$

9

@GETCURRENTRECORDNUMBER – выводит номер строки в таблице согласно заданному шаблону

@GETCURRENTRECORDNUMBER–33

Выводит значения: 1–33, 2–33…

10

@GetDateRange – формирует строку условия для отбора документов в указанном диапазоне, если один из параметров не указан – то условие не учитывает этот параметр

Имя поля, на которое налагается условие, Начальная дата, Конечная дата.

@GetDateRange,"ExecDate",#1#,#2#

11

@LDOPTION – выводит значение параметра. Сначала ищет параметр в файле landocs. ini, затем в справочнике "Параметры", если в файле параметр не найден

Название параметра

@LDOPTION, TemplateDir

12

@NOW – текущее время + дата с сервера

@NOW

13

@PERCENT вычисляет процент первого параметра от второго.

Число 1,Число 2

@ PERCENT,%21%,%1%

14

@ROWNUM – выводит порядковый номер строки, начиная с заданного

Число

@ROWNUM,10

15

@SQLTODAY – текущая дата с сервера в формате ‘YYYY–MM–DD’

@SQLTODAY

16

@SubFromDate – вычитает из одной даты другую

Дата1, Дата2

@SubFromDate,$4$,$5$

17

@SubFromNow – вычитает из текущей даты, дату, указанную в параметре.

Дата (обычно срок выполнения)

@SubFromNow,$4$

18

@TODAY – текущая дата с локальной машины

@TODAY

19

@VALUE – значение

Имя таблицы (view), имя столбца, условие

@VALUE, ViewLDMailBoxCombo, "AccountText","ObjectID"=$10$

20

@VALUE_Z – значение. Если значение поля равно 0, то выводится ‘’ (пустая строка).

Имя таблицы (view), имя столбца, условие

@VALUE_Z, LDERC,

"VersionCount","ID"=$10$

21

@Вызов хранимых процедур

Параметры процедуры

Имя процедуры

(см. пример)

[Table 1 header]

ProcParams=100

PhysicalView=@LDF_OBJECTTYPETREE

22

@Вызов хранимых функций

Параметры функции, имя функции

$2$=@FUNCVALUE, LDF_YYYY(#1#,#2#)

6.1.4. Примеры использования основных элементов отчетов

Таблица 5 – Примеры использования основных элементов отчетов

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13