Научная статья на тему 'Механизм метассылок в моделировании аналитической схемы бухгалтерского учета'

Механизм метассылок в моделировании аналитической схемы бухгалтерского учета Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
76
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Механизм метассылок в моделировании аналитической схемы бухгалтерского учета»

С учетом изложенных соображений была разработана структура СЭС (см. рисунок).

Блок инициализации служит для настройки системы на определенную предметную область. При этом задается множество из всех подлежащих включению в базу знаний характеристик ожидаемых событий и описывается множество из допустимых событий-исходов.

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

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

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

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

причине своей плохой информированности. По мере совершенствования базы знаний вероятность правильных ответов будет все более возрастать, стремясь достигнуть 100% отметки. Уровень качества знаний системы может ограничиваться лишь степенью компетентности самого создающего систему эксперта, так как именно он осуществляет контроль правильности ответов (шаг 4), вводя при необходимости поправки к выбранным системой вариантам.

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

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

На основании описанного алгоритма автором был разработан пример СЭС. Система прошла несколько инициализаций, самая значительная из которых - определение вида загрязнения буровых растворов в зависимости от их физических показателей.

В заключение хотелось бы отметить, что главные достоинства СЭС - их несомненная универсальность и простота заполнения. Хотя, возможно, они и не слишком подходят для создания узкоспециализированных глубинных ЭС; СЭС могут широко использоваться при создании небольших по объему ЭС или же в учебных целях.

Список литературы

1. Уотермен Д. Руководство по экспертным системам. -М.: Мир, 1989. - 388 с.

2. Попов Э.В. Экспертные системы: Решение неформализованных задач в диалоге с ЭВМ. - М.: Наука, 1987. - 283 с.

3. Нейлор К. Как построить свою экспертную систему. -М.: Энергоатомиздат, 1991. - 286 с.

МЕХАНИЗМ МЕТАССЫЛОК В МОДЕЛИРОВАНИИ АНАЛИТИЧЕСКОЙ СХЕМЫ БУХГАЛТЕРСКОГО УЧЕТА

И.П. Колпаков

Основной проблемой, которую решают при автоматизации процедур бухгалтерского учета, является эффективное построение аналитической схемы, когда для детализации учетных данных, собираемых на синтетических счетах, вводятся аналитические уточнения, имеющие для каждого счета определенный экономический смысл [1]. Например, счет 10 «Материалы» обычно содержит два аналитических уточнения «Подразделение» и «Материально-ответственное лицо», а счет 51 «Расчетный счет» - «Банк» и «Контрагент».

Проблема автоматизированной поддержки аналитической схемы в программных средствах решается по-разному. На практике часто применяются следующие подходы.

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

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

Второй подход является эволюционным развитием первого и позволяет моделировать аналитическую схему с произвольным количеством (в рамках разумного) аналитических уточнений для каждого счета. Суть заключается в том, что счету ставится в соответствие несколько строк (от 1 до N3, каждая из которых содержит шифр аналитического уточнения и обрабатывается самостоятельно. Возможность использования более гибких алгоритмов обработки аналитик устраняет ограничения на ширину аналитической схемы. Однако по существу данный подход повторяет все основные недостатки первого метода и непригоден для целей всестороннего анализа учетных данных, требуемого в современных условиях хозяйствования.

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

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

Использование современных объектно-ориентированных методов [2] при разработке бухгалтерских систем и технологий работы в архитектуре клиент-сервер требуют новых проектных решений для ведения аналитического учета, обеспечивающих многоканальный доступ к учетной информации и сквозной анализ аналитических данных по всем уровням управленческого учета.

В качестве универсального средства для построения аналитической схемы любой сложности и с высоким уровнем презентативности учетных данных предлагается использовать механизм метассылок, в настоящее время реализованный в автоматизированной системе ОЛИМП [3] и апробированный при автоматизации бухгалтерских задач на ряде крупных промышленных предприятий. Механизм метассылок реализован на инструментальном уровне и является свойством среды программирования, а не прикладной программы.

Под метассылкой в данном контексте подразумевается динамическая связь, устанавливаемая между таблицами базы данных (БД) в процессе заполнения полей конкретными значениями, в отличие от простой связи, установленной при проектировании логической структуры БД и контролируемой средствами СУБД. В терминах объектно-ориентированного проектирования (ООП) метассылка является объектом, отражающим динамическую связь между двумя плоскими таблицами БД. Механизм метассыл-ки на уровне взаимодействия с СУБД обеспечивает реализацию существенной идеи ООП: возможность одинаковой работы с объектами разной природы -полиморфизм (перегрузка методов) и наследование (в том числе множественное).

В настоящее время объектно-ориентированные СУБД распространены слабо, а СУБД, обеспечивающие полиморфизм, вообще отсутствуют. С другой стороны, для решения задач бухгалтерского учета наиболее подходят и в основной массе применяются реляционные СУБД [4]. Поэтому данный механизм реализуется в рамках реляционной СУБД и с точки зрения разработчиков и пользователей программного обеспечения является универсальным средством построения динамических связей, в частности, идеально подходящих для моделирования аналитической схемы бухгалтерского учета.

Остановимся более подробно на практической реализации механизма метассылок и способах обеспечения целостности БД, которые содержат динамические связи, порождаемые данным механизмом и не контролируемые средствами СУБД.

В интерфейс между прикладной программой и СУБД встраивается класс - метатаблица (МТаЬ), обеспечивающая работу с метассылкой как информационным объектом.

МТаЬ = < {А1...Ап},{М1...Мк} >, где МТаЬ - базовый класс, обеспечивающий реализацию механизма метассылок; А1=1,п - атрибут, характеризующий некоторое свойство метассылки; М^1;к -метод, обеспечивающий взаимодействие с таблицами БД.

В рассматриваемой реализации множество атрибутов МТаЬ включает пять элементов, отражающих необходимые для работы свойства метассылок, а именно:

А = { ]ЧМТа\Н,]^Т,0,С(]Чс,Ес),8(]Ч8,Е8) },

NMtab тт

- имя метассылки; Н - заголовок мета-ссылки; ]Т - имя таблицы БД; 0 - ограничения доступа (фильтр); С - шифр, содержание которого определяется полем таблицы БД N° и форматом отображения Ес; 8 - комментарий, содержание которого определяется полем таблицы БД N и форматом отображения

Множество методов в зависимости от потребностей решаемых задач может быть различным и включать механизмы создания и модификации ме-тассылок, групповых операций над объектами. В системе ОЛИМП реализован один метод, обеспечивающий доступ к записям соответствующей таблицы БД и получение значения метассылки. При необходимости множество методов можно легко расши-

рить: M -г Z*= ф (Z,C,H,O), где ф - функция, реализующая доступ к записям таблицы БД; Z - старое значение метассылки; Z* - значение метассылки, полученное после применения метода; C - шифр (в случае с аналитической схемой является шифром аналитики); H - заголовок метассылки; O - фильтр, определяющий подмножество записей таблицы БД.

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

Важным моментом является то обстоятельство, что каждой метатаблице соответствует одна и только одна таблица БД. С другой стороны, две разные ме-татаблицы могут ссылаться на одну и ту же таблицу БД. Это обстоятельство на практике можно использовать для организации многоканального доступа к одной таблице БД. Например, в таблице «Внешние организации» хранятся все контрагенты, включая поставщиков, покупателей, фискальные органы, банки и т.д. Можно создать соответствующие мета-таблицы, которые ссылаются на таблицу «Внешние организации», но имеют разные ограничения доступа и методы обработки.

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

Пусть запись Rq таблицы Tq имеет структуру, содержащую поля {P1,... , Pn}. Первичный ключ таблицы в общем случае включает подмножество полей записи и представляется как Kq={p}c{Pj. Чтобы использовать таблицу Tq для определения аналитической таблицы, необходимо и достаточно выполнить два условия: первичный ключ Kq должен быть простым, то есть состоять из одного поля Pk, и поле Pk должно быть целого типа (Integer):

Kq = Pk е { P }, Type( Pk ) = Integer.

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

Следующим этапом реализации механизма ме-тассылок является его внедрение в средства построения логической структуры БД. Для этого необходимо определить два новых типа данных, позволяющих запустить данный механизм. Стандартное множество типов данных, применяемых в современных СУБД, включает в свой состав более десятка разных типов, в том числе типы Integer (целое число) и String (строка).

Первый тип данных MetaRef (указатель мета-ссылки) базируется на типе String и определяет, что в процессе работы с данным полем подключается механизм загрузки метассылки. Поле Pi таблицы T является указателем метассылки U(ATab), если Pi - Pi е { P }, Type(Pj) = MetaRef, Value(Pj) е 0 и { NMTab }.

Второй тип данных MetaValue (значение мета-ссылки) базируется на типе Integer и определяет, что поле данного типа должно заполняться в соответствии с указателем метассылки. Поле Pj таблицы T является значением метассылки Z(U), которая определяется указателем метассылки U(ATab), если Pj - Pi , Pj е { P }, Type(Pj) = MetaValue, Pi = U(MTab), Value(Pj) е 0 и { Z (U)}.

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

Метассылка Пк представляет собой совокупность значений поля Р1 (указатель метассылки) и Pj (значение метассылки) записи К4 таблицы Тч, непустые значения которых однозначно устанавливают связь между конкретной записью К4 таблицы Тч и множеством записей {таблицы Тт, где Р1 = и(МТаЬк), 1Мта' = №те(Тт) и р = К4.

Множество записей {К } содержит одну запись, если ключ К4 является уникальным для таблицы Тт, и несколько записей, если ключ К4 не уникальный и определяет некоторую совокупность записей. На

MTab,

Имя 14"', Заголовок Н, Имя таблицы БД Ограничения доступа О, Шифр С, -

Комментарий S} -

Метод доступа ffl(Zi,Ci,Hi,Oi)

Фильтр для T1: SQL-строка

Ишерф( доступа к

Таблица БД T1 И

Поле P1 i (Первичный к люч)

Поле P12

Поле P1g

Поле P1q

MTabi

Имя <

Заголовок Н Имя таблицы БД ЫТс

Ограничения доступа Oi _

Шифр СС -

Комментарий Б,-

Метод доступа Щ2ьСц,НьО ¡)

Фильтр для T: SQL-строка

Таблица БД T' |i

Поле Pi 1 (Первич»1й кл юч)

Поле P'2

Поле P'g

Поле Piq

Имя т

Заголовок Нт Имя таблицы БД ЫТт

Ограничения доступа От _

Шифр Ст-

Комментарий Бт

Метод доступа Щ2т,Ст,Н т,О т)

Фильтр для T": SQL-строка

Интерфейс доступа к

Таблица БД T" Iм

Поле Pm 1 (Первичный к люч)

Поле Pm2

Поле Pmg

Поле Pmq

Таблица БД T х

Экземпляры записей таблицы T'

ID1 ключ 1-й записи Pol ' Po Po

e y _Val - значение метассылки

e1n

ключ 3-й записи

e y _Val - значение метассылки

ключ d-й записи

e y _Val - значение метассылки

IDx ключ x-й записи | Rx

Polext _Ref - указатель метассылки

Polexy _Val - значение метассылки

Polexn

R

e t _Ref - указатель метассылки

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

e3n

Интерфей доступа к

edt _Ref - указатель метассылки

e

практике данное свойство метассылки можно использовать следующим образом. Например, мета-ссылка «Контрагент», определяющая первую аналитику 62 счета, по своей сути однозначно идентифицирует конкретную внешнюю организацию, а мета-ссылка «Товарная спецификация» к счету 45 определяет несколько записей, которые являются строками спецификации, указанной в накладной на отпуск товаров.

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

После присвоения указателю метассылки Ро1е"\ _КеГ имени метассылки ]МТаЬт через функцию фт(2т,Ст,Н т,0т) становится доступной для работы таблица БД Тт, в результате выполнения которой полю Ро1еау _Уа1 присваивается значение первичного ключа Рт1. Формирование метассылки как объекта завершается, появляется прямой доступ к соответствующей записи таблицы и заполняются свойства ме-тассылки «Шифр» и «Комментарий». Изменение указателя метассылки влечет за собой очистку поля со значением и повторный запуск механизма мета-ссылок.

Механизм метассылок является надстройкой над СУБД, поэтому проверка целостности данных, участвующих в динамических связях, на уровне СУБД не осуществляется, что требует разработки дополнительных средств анализа и контроля целостности ме-тассылок.

Пусть {МТаЬ1=1,т} - множество метатаблиц, определяющих метассылки как информационные объекты инструментальной среды проектирования; {Тч=1;а} - множество таблиц БД, участвующих в построении метассылок; {Пк=1;П} - множество метассы-лок, заданных в логической структуре БД.

Тогда для обеспечения целостности метассылок необходимо и достаточно обеспечить целостность связей по следующим направлениям:

1. {МТаЬ} о {и(МТаЬ)} - между множеством метатаблиц и указателями метассылок.

2. {МТаЬ} о {Т} - между множеством метатаб-лиц и множеством таблиц БД.

3. {К е Т} о {/(и)} - между записями таблиц БД и значениями метассылок.

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

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

• привязка разнородных типов документов к договору (ссылка на документ по которому произошла оплата - вексель, платежное поручение, кассовый ордер, акт зачета взаимных требований);

• формирование спецификации, содержащей разнородные материальные ценности (материалы, малоценные и быстроизнашивающиеся предметы, основные средства, услуги);

• создание в интерактивном режиме информационных объектов с произвольными характеристиками.

Наиболее наглядно и эффективно механизм ме-тассылок можно использовать для организации и ведения аналитического учета по синтетическим счетам бухгалтерского учета.

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

Список литературыг

1. Кондраков Н.П. Бухгалтерский учет: Учебное пособие - М.: ИНФОРА-М, 1998.

2. Буч Г. Объектно-ориентированный анализ и проектирование, 2-е изд. /Пер. с англ. - М.: Изд-во "Бином", СПб.: Невский диалект, 1999.

3. Система ОЛИМП: Бухгалтесркий учет - Руководство разработчика. - М.: Росэкспертиза, 1999.

4. Мейер Д. Теория реляционных баз данных. - М.: Мир, 1987.

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ МНОГОКРИТЕРИАЛЬНОЙ ОПТИМИЗАЦИИ НА ОСНОВЕ МЕТОДА ЗОНДИРОВАНИЯ

Л.В. Азарова, A.A. Полтавцев

Использование современных компьютеров дает возможность принимать решения на основе расчетов для соответствующей модели явления. Такой подход требует методов построения адекватных моделей, а также алгоритмов и программ для решения возникающих задач, поскольку математические методы невозможно применять непосредственно к изучае-

мой деятельности, а лишь к математическим моделям того или иного круга явлений. Результаты исследования математической модели представляют практический интерес, когда она достаточно совершенна и адекватно отражает реальную ситуацию.

Задачи количественного анализа экономики многочисленны и разнообразны: микроэкономиче-

i Надоели баннеры? Вы всегда можете отключить рекламу.