Руководство разработчика

Определения для журналов

Раздел предназначен для работы с журналами операций из языка.

Считывание операций из базы и их сохранение производится с помощью методов объектного типа ЖУРНАЛ. Журналы идентифицируются по названию.

Типы операций делятся на собственные (относящиеся к конкретному журналу) и разделяемые (относящиеся к нескольким журналам). Все типы операций являются производными от базового типа ОПЕРАЦИЯ. Типы операций проецируются во внутренний язык как объектные типы времени выполнения (RunTime типы), а признаки и табличные признаки операции – как поля типа. При этом наследование типов операций также проецируется во внутренний язык: если в редакторе типов операций тип Т2 является дочерним типом типа Т1 – объектный тип Т2 также является потомком объектного типа Т1 и наследует его поля. Чтобы добавленный в редакторе типов признак или табличный признак стал доступен из внутреннего языка как поле типа – необходима перекомпиляция проекта. Признаки и табличные признаки операции, полученные во время выполнения алгоритма и не являющиеся полями объявленного объектного типа, записываются в поля признаки и таб_признаки операции. Например, если считать из журнала операцию конкретного типа, задав переменную базового типа ОПЕРАЦИЯ, то все значения признаков и табличных признаков запишутся в поля признаки и таб_признаки, если же при считывании операции задать в качестве типа переменной нужный RunTime-тип операции – признаки и табличные признаки будут получены как поля типа. При получении ручных операций все ее признаки записываются в поле признаки, и добавление новых значений в поле приведет к добавлению новых признаков у операции.

Тип ФИЛЬТР предназначен для задания критериев фильтрации операций в журнале.

Исходные остатки в журнале привязаны к ссылкам на объекты аналитики. Для задания исходных остатков служит тип ОСТАТОК.

Тип МАССИВ_ОПЕР предназначен для получения произвольного доступа к операциям некоторой выборки.

Мертвое множество операций можно сортировать. Для задания критериев сортировки операций в выборке служит тип СОРТ_ОПЕР. Тип СОРТ_ПРОВ служит для задания критериев сортировки выборки проводок.

Тип ГРУП_ОСОБ предназначен для группировки (свертки) проводок в выборке по заданным условиям. Условия группировки задаются в типе ГРУП_ССЫЛОК.

Тип ОТБОР_ПРОВОДОК предназначен для отбора проводок по заданным критериям с целью расчета остатков и оборотов. Критерии отбора задаются в типе ОТБОР_ССЫЛОК.

Кроме того, предусмотрен два тип для управления отображением окна журнала – КАРТА_СТРОК.

Определено три цикла для перебора операций, проводок и исходных остатков – ОПЕРАЦИИ, ПРОВОДКИ и ОСТАТКИ.

Перечень типов:

КАРТА_СТРОК может хранить любые соответствия строковых значений строковым идентификаторам.
ОПЕР_ПРОГ_ФИЛЬТР предназначен для задания программируемого фильтра.
ФИЛЬТР предназначен для задания условий фильтрации операций в журнале.
ЖУРН_ИНФО предназначен для хранения информации о журнале.
ТИПОП_ИНФО предназначен для хранения информации о типе операций в журнале.
ТИП_ПРИЗНАКА представляет во внутреннем языке объявление аналитического признака операции.
ТИПЫ_ПРИЗНАКОВ является контейнером для объявлений признаков операции.
ТИП_ТАБ_ПРИЗНАКА представляет во внутреннем языке определение табличного признака операции.
ТИПЫ_ТАБ_ПРИЗНАКОВ является контейнером для определений табличных признаков операции.
ПРОВОДКА представляет собой проводку в соответствии с правилом двойной записи.
ПРИЗНАК представляет во внутреннем языке аналитический признак операции.
ТАБ_ПРИЗНАК представляет во внутреннем языке табличный признак операции.
ОПЕРАЦИЯ является базовым предком всех операций и содержит поля, общие для операций всех типов.
СПИСОК_ОПЕРАЦИЙ предназначен для передачи в алгоритмы списка операций, которые могут иметь разный тип.
ЭЛЕМ_ОСТАТОК предназначен для представления исходного остатка в разрезе одной единицы измерения.
ОСТАТОК предназначен для представления исходных остатков для объекта аналитики в контексте журнала.
ПРОВ_ЭЛЕМ используется для перебора проводок в цикле ПРОВОДКИ.
МАССИВ_ОПЕР предназначен для получения произвольного доступа к операциям некоторой выборки.
КОЛЛЕКЦИЯ_ОПЕР предназначен для получения обновляемой выборки операций.
ЖУРНАЛ содержит методы для работы с журналом операций.
Получение остатков и оборотов
ОСОБ предназначен для получения остатков и оборотов по одному объекту аналитики.
СТРОКА_ОСОБ предназначен для получения данных для строки в таблице остатков и оборотов.
ТАБЛИЦА_ОСОБ предназначен для получения остатков и оборотов сразу для нескольких строк в таблице остатков и оборотов.
СТРОКА_ОБОРОТКИ представляет отдельную строку оборотной ведомости.
ОБОРОТКА предназначен для представления оборотной ведомости.
ОТБОР_ОБОРОТКИ_АНАЛИТ позволяет задать условия отбора по ссылкам.
ГРУП_ОБОРОТКИ_АНАЛИТ позволяет задать условия группировки по ссылкам.
ПАРАМ_ОБОРОТКИ_АНАЛИТ позволяет задать параметры построения оборотной ведомости с аналитикой.
ОБОРОТКА_АНАЛИТ позволяет построить оборотную ведомость с аналитическими признаками.
ОТБОР_ОСОБ_АНАЛИТ позволяет задать условия отбора по ссылкам.
ГРУП_ОСОБ_АНАЛИТ позволяет задать условия группировки по ссылкам.
ПАРАМ_ОСОБ_АНАЛИТ позволяет задать параметры построения таблицы остатков и оборотов с аналитикой.
ОСОБ_АНАЛИТ позволяет построить таблицу остатков и оборотов с аналитическими признаками.
Связь операций в журналах
СВЯЗЬ_ОПЕР хранит данные о какой-либо конкретной операции в журнале.
ТАБЛИЦА_СВЯЗЕЙ предназначен для реализации механизма, позволяющего связывать журналы между собой.
СВЯЗИ позволяет выбирать связи операции в пределах одного журнала.
ВЕКТОР_СВЯЗИ описывает направленную связь между двумя операциями.
Типы для группировки ссылок
ГРУП_ССЫЛОК задает условия группировки ссылок.
ГРУП_ИТОГОВ задает условия для группировки записей при получении таблицы итогов.
ГРУП_ОСОБ задает условия для группировки записей в таблице проводок.
Типы для задания маски
МАСКА_ТАБ задает условия маски для колонок табличного признака операции.
МАСКА_ОПЕР задает маску операции.
Типы для задания сортировки
СОРТ_ОПЕР_УСЛ предназначен для задания условия сортировки операций в выборке.
СОРТ_ОПЕР предназначен для задания способа сортировки операций в выборке.
СОРТ_ПРОВ задает способ сортировки проводок.
Типы для отбора ссылок
ПЕРЕЧИСЛЕНИЕ_ССЫЛОК Вспомогательный тип для задания произвольных перечислений ссылок.
ОТБОР_ССЫЛОК служит для отбора ссылок.
ОТБОР_ПРОВОДОК задает условия для отбора проводок по заданным критериям.
ОТБОР_ИТОГОВ задает условия для отбора итоговых записей по заданным условиям на ссылки итога.
Хранение итогов
ИТОГ предназначен для представления одной строки в таблице итогов.
ТАБЛИЦА_ИТОГОВ предназначен для представления таблицы итогов.

Перечень функций:

СЧИТАТЬ_ИТОГИ считывает итоги и помещает результат в таблицу итогов.
КОНВ_ОПЕРАЦИЯ позволяет преобразовать значения типа ОПЕРАЦИЯ в значения производного типа времени выполнения.
СЧИТАТЬ_ЖУРНАЛЫ считывает имя и комментарий для всех журналов.
СЧИТАТЬ_ВЕКТОРА_СВЯЗЕЙ считывает направленные связи операций по заданным критериям.
УДАЛИТЬ_МАССИВ_ОПЕР удаляет именованную выборку операций.
УДАЛИТЬ_КОЛЛЕКЦИЮ_ОПЕР удаляет именованную коллекцию операций.

См. также: