Глава 1. ИНСТРУМЕНТАЛЬНОЕ СРЕДСТВО ALLEGRO
Общие сведения о системе
Система Allegro предназначена для ввода, хранения и автоматической обработки
учетной информации. Система Allegro относится к разряду конфигурируемых (
гибких) систем. Это означает, что логика и
интерфейсы, с которыми работает конечный пользователь, зависят от
используемой конфигурации. Конфигурация может быть разработана на заказ или
быть одной из тиражируемых специализированных стандартных конфигураций. Сами конфигурации
создаются непосредственно в системе Allegro и не требуют для своей
разработки дополнительных средств, хотя и не исключают их использование
. Система Allegro устроена таким образом, что «средства
разработки конфигурации» и «исполняющая система» совмещены в
одном приложении Allegro.exe. Это позволяет разработчику не
расходовать дополнительное время на переключение из режима разработки в режим
исполнения и обратно. Каждая конфигурация состоит из двух,
полностью отделенных друг от друга частей - метаданных базы и
модулей оконного интерфейса. Такое разделение позволяет вести разработку конфигурации
(например, добавление новых отчетов) параллельно с работой
пользователей, что значительно упрощает бесконфликтное внедрение и развитие конфигурации
на действующем предприятии. База данных Allegro имеет открытый формат
, не существует никаких специальных «конфигурационных» файлов или
функций, которые бы вклинивались между разработчиком и базой данных
. Разработчик сам назначает имена таблицам и полям. Это
дает ему возможность полностью опереться на технологию SQL-запросов
и тем самым добиться чрезвычайно высоких скоростных показателей конечного продукта
. Большинство отчетов (если не все) удается получать
за считанные секунды. Клиент-серверная классическая «двухзвенная
» архитектура позволяет реализовать расчеты на больших массивах данных в
хранимых процедурах, исполняющихся непосредственно сервером баз данных и избежать
перекачки больших массивов данных по сети на клиент. Еще
одним преимуществом открытого формата базы является возможность использования других приложений
или утилит, непосредственно обращающихся к базе данных, например
, PHP-скриптов для организации интранет-сетей.
В качестве базовых технологий при создании Allegro использовались сервер баз
данных InterBase (Firebird, Yaffil) и скриптовая система
Dream Controls, использующая библиотеку VCL Delphi в качестве компонентов
для создания оконных интерфейсов. В качестве построителя отчетов используется
Microsoft Office, с которым Allegro взаимодействует с помощью компонента
XL Report от AfalinaSoft. В качестве ячеистой сетки используется
компонент DbAltGrid от Quasidata. Также в систему добавлены две
палитры компонентов RX Controls и палитра специализированных компонентов Allergo.
Для работы с сервером баз данных InterBase используются компоненты прямого
доступа IBX. В качестве языка программирования используется Delphi Script
(чрезвычайно близкий по синтаксису с Object Pascal), скриптовые
модули хранятся в файлах *.pas, *.dfm и
совместимы с Delphi 6.0. Также возможно программирование
на языках VB Script, JavaScript и Active Perl (
если он установлен на компьютере-клиенте).
Система Allegro содержит мощную систему справочников, образующих классы с
наследованием атрибутов. Система Allegro позволяет создавать структуры для хранения
документов разных типов. Поддерживается одновременно несколько подчиненных таблиц одного
уровня в каждом типе документов. Система позволяет также создавать
таблицы настроек для хранения настроечной информации.
Система Allegro содержит в себе бухгалтерию (в стиле,
напоминающем GAAP). Бухгалтерская подсистема устроена так, чтобы в
любой момент времени обеспечивать полный двусторонний бухгалтерский баланс компании on
-line. Система управления счетами баланса в Allegro сильно
отличается от аналогичных систем в других бухгалтерских программах и содержит
массу принципиально новых подходов. Двусторонний иерархический баланс компании (
со всеми развернутыми сальдо) рассчитывается практически мгновенно (со
скоростью порядка 50 тысяч проводок в секунду) при помощи
одного SQL-запроса. Окно баланса является одновременно навигатором
по счетам - выбрав любой счет можно сразу видеть все
записи по нему (Т-счет), выбрав любую
запись в Т-счете, можно видеть бухгалтерскую операцию
, которая породила данную запись и документ, породивший эту
операцию. Всеми бухгалтерскими операциями управляют «шаблоны», настраиваемые
в процессе разработки конфигурации. Изменение любого шаблона позволяет изменить
способ проведения документа, к которому шаблон прикреплен. В
шаблоне указывается, из каких полей документа будут браться цифры
и как проводиться. После создания (изменения) шаблона
, Allegro автоматически формирует текст хранимой процедуры в базе данных
, которая будет отвечать за формирование проводок в формате журнала
операций. При сохранении документа, к которому привязан шаблон
, происходит автоматическое перепроведение документа при помощи этой хранимой процедуры
. Используются «вертикальные» или, как их еще
называют, «смешанные» проводки. В бухгалтерии Allegro
счета, как правило, создаются непосредственно в балансе компании
или в так называемых аналитических регистрах счетов. Возможны также
и забалансовые регистры счетов. Все счета в составе аналитического
регистра привязываются к одному справочнику. Балансовые аналитические регистры имеют
обязательное вхождение в баланс либо в виде двух счетов развернутого
сальдо, либо в виде одного счета простого сальдо.
Все счета в Allegro могут свободно перемещаться между каталогами в
процессе учета, имеют произвольные названия и не требуют нумерации
(хотя нумерация и не исключается). Это позволяет не
только получить максимально адекватное изображение баланса для конкретной компании,
но и постепенно развивать его в процессе учета.
|