Був час, коли проект «1C» щойно розроблявся, а програма «Фінанси без проблем» вже здобула популярність і сильно впливала на розробників. ФБП і сьогодні, через 15 років, виокремлюється своєю унікальністю та простотою на тлі супермодних облікових програм.
У проект ФБП1 з самого початку (а це було ще влітку 1991 року) були закладені принципи, що збереглися і донині. Основна ідея, покладена в основу програми, — створення системи автоматизації обліку й управління, максимально гнучкої та відкритої для настроювання самим користувачем.
По суті, користувачеві пропонуються зрозуміла для конструювання власного обліку платформа (середовище програмування) і приклади готових рішень на її основі. І що особливо важливо — таке програмування не потребує спеціальних знань і «професійного» підходу.
Унікальність програми полягає у тому, що відбувається інтерактивне «навчання» користувачем самої програми, у процесі якого їй передаються знання про види господарських операцій підприємства, тобто що і як ви робите з вашими грошима, майном, товарами. Ці знання формалізуються у вигляді дерева, гілки якого детально, крок за кроком, описують операції, що вводяться. Коли деталізацію операцій закінчено, автоматично створюється листок дерева з проведеннями (рахунками, що дебетуються та кредитуються, формулами, викликами підпрограм).
Проведення — листя облікового дерева
Як це відбувається на практиці, розглянемо на прикладі побудови дерева опису операцій. На будь-якому підприємстві є розрахунковий рахунок і гроші у касі. Відображаємо це створенням гілок Касса і Расчетный счет (поз. 1 на мал. 1). Як ви бачите на мал. 1, меню сконструйоване з перших рівнів гілок дерева. Гроші, як і належиться, «надходять» з різних джерел і «йдуть» на різні потреби (поз. 2, мал. 1). Якщо вибрати гілку Касса, програма зробить ще один крок і запропонує меню з двох гілок дерева (приход, расход).
Далі нам треба деталізувати статті витрат на підприємстві, виокремивши оплату товарів, видачу зарплати, витрати на ремонт тощо. Вибираємо рядок расход, і програма автоматично запропонує створити кілька статей витрат, створивши ще одне розгалуження на дереві (поз. 3, мал. 1).
Якщо деталізацію витратних операцій по касі закінчено, можна створити перший листок — проведення выдача зарплаты. Першим у листку дерева вказується дебетований рахунок 70 «Співробітники», наступним — кредитований рахунок 50 «Каса» (поз. 4, мал. 1). Символ «@» перед рахунком 70 означає, що цей рахунок має субрахунки і програма покаже меню, що містить їх список.
У загальному випадку листя дерева може містити рахунки, що не тільки дебетуються і кредитуються, тут можна використовувати складні схеми запам’ятовування та витягання інформації, формули (наприклад розрахунок податку на додану вартість).
Коли програма «Фінанси без проблем» навчена таким чином, вона готова приймати й інтерпретувати господарські операції у вигляді фраз природної мови. Ці фрази утворюються шляхом проходження по послідовно пропонованих меню. Легко зрозуміти, що для формування меню й однозначного розпізнавання змісту фраз використовується створене під час навчання дерево видів операцій. Приклад такої фрази показано на мал. 2 «Каса: витрата: видача зарплати: 70-1».
Програма дозволяє змінити листок дерева, наприклад, вказати інші рахунки, додати проведення або змінити формулу розрахунку податку, тоді інтерпретація раніше введених операцій цього типу буде автоматично змінена. Мало того, гілки дерева можуть бути не тільки словами або комбінаціями слів. У гілці дерева можна організовувати діалоги для введення числових та рядкових змінних, вибір з меню, циклічну обробку даних.
Як працює програма
Отже, ви «навчили» програму розуміти специфіку обліку на вашому підприємстві. Тепер це відображено у створеному вами дереві, листя якого — ті самі проведення, що формалізують облік. Тепер час скористатися ресурсами «навченої» програми. Як вона працює?
Усе так само інтуїтивно зрозуміло, як і під час її «перепідготовки». Введення конкретної господарської операції повністю відповідає логіці дій бухгалтера.
Спочатку вказується дата операції, після чого програма автоматично запропонує меню, сконструйоване з перших рівнів гілок створеного дерева. Із пропонованого меню послідовно вибирається одна з гілок дерева, наприклад, касса — расход — выдача зарплаты. У результаті в графі Операция (мал. 2) ви бачите фразу, яка описує господарську операцію крок за кроком вбудованою природною мовою. Після вибору выдача зарплаты програма побачить у листку дерева символ «@» перед рахунком «70» і покаже меню, що містить список цих субрахунків. Залишиться тільки вибрати потрібний рядок субрахунка, ввести необхідну суму, і операція сформована.
Що вміє програма
Розробники під час створення програми заклали у неї здатності, що значно розширюють її функціональність.
Динамічний перерахунок під час внесення змін до правил або до операцій. Це означає, що проведення й інші маніпуляції з даними щодо операції не зберігаються, а автоматично з високою швидкістю перераховуються заново. Для кожної введеної операції програма автоматично виконає всі проведення й інші дії (наприклад, розрахунок податку), які описано у листку дерева.
Мова звітів, що дозволяє вставляти до макета форми, намальованого звичайним текстовим редактором, результати обчислень за формулами, що звертаються до сальдо й оборотів рахунків та до інших даних.
Власний формат зберігання даних, орієнтований на швидкий динамічний перерахунок. Відмова від використання СУБД загального призначення. Відмова від зберігання індексів на диску. Наголос на використання оперативної пам’яті: всі проведення, рахунки, дані-наслідки операцій та індексні структури — тільки там. На диску є лише необхідний мінімум файлів. Такий підхід дає одночасно надійність зберігання та високу швидкість.
Внутрішня мова програми, що дозволяє створювати спеціальні бази даних: для статичної інформації (реквізити, імена) і для динамічної інформації, яка буде віртуально перерахована багато разів.
Експорт даних до інших програм. Наприклад, ви можете написати формули мовою програми «Фінанси без проблем» в комірках MS Excel (зі спеціальним префіксом).
Ці комірки будуть динамічно перераховуватися щоразу, коли відбуватимуться зміни у списку операцій або дереві опису типів операцій у ФБП.
Звіти на будь-який смак
Програма «Фінанси без проблем» має вбудовані звітні форми, такі як: «Оборотная ведомость», «Актив и Пассив», «Анализ счета» тощо. Коли ви створюєте звітні форми, у них автоматично відображаються результати введених раніше господарських операцій.
Є можливість створення нових форм. У комплекті постачання програми є приклади форм, що полегшують освоєння мови. Незалежні розробники додатків для програми «Фінанси без проблем» допоможуть користувачам, які не хочуть конструювати форми самостійно. Хоча для цього у програмі є синтаксичне підсвічування, яке автоматично вкаже на синтаксичні та смислові помилки, допущені під час складання форми.
Одні правила для всіх користувачів
Крім однокористувачевої версії програми «Фінанси без проблем», є також мережна клієнт-серверна версія. Уявіть собі, що ви, використовуючи однокористувацьку версію, навчили програму ваших господарських операцій. По суті, ви створили власну програму обліку й управління мовою ФБП. І тепер ця програма може стати розрахованою на багато користувачів і також швидко працювати у різних операційних системах майже без додаткових зусиль.
Найважливіша характерна особливість системи — відмова від використання SQL-серверів та введення власного спеціалізованого ФБП:Сервера. Щоб перетворити однокористувацьку версію на розраховану на багато користувачів, достатньо запустити ФБП:Сервер (далі — Сервер). Він є ядром програми «Фінанси без проблем» (спрощена версія такого ядра є також в однокористувацьких версіях).
Є друга частина клієнт-серверної моделі — ФБП:Клієнт (далі — Клієнт), яка обслуговується сервером. Призначений для користувача інтерфейс Клієнта схожий на інтерфейс однокористувацьких версій, але практично весь обсяг обчислень робить сервер — централізовано.
Ви можете вводити операції так само, як і в однокористувацькій версії, будуючи фрази з меню. Клієнт готує з цих фраз запити до Сервера на введення операції, надсилає ці запити і потім показує новий список операцій, що прийшов від Сервера.
Можна також наказати Клієнтові заповнити форму і вказати, що ця форма повинна бути у режимі автооновлення. Як результат, Клієнт отримуватиме оновлений вміст форми щоразу, коли список операцій змінюється. І все це у реальному часі.
Програма дозволяє встановлювати різні права користувачів на доступ до конкретних форм і гілок дерева. Із Клієнта багатокористувацької версії програми можна створювати нові форми та модифікувати деякі з наявних форм так само просто, як і в однокористувацькій версії. Клієнт реалізований для операційних систем DOS і Windows. Спеціальний вбудований у програму інструмент — DDE-міст —обслуговує електронні таблиці. Можна також побудувати шлюз між сервером та веб-сервером, використовуючи спеціальні інтернет-клієнти, або побудувати інтернет-додаток.
Є версії ФБП:Сервера для всіх випусків операційної системи Windows (навіть для Windows x64 Edition), Linux, розроблено модифікації від 2-х до 30-ти користувачів. Сервер ефективно використовує всю потужність сучасних процесорів і ОЗУ 32 ГБ. Він зберігає дерево видів операцій і форми у спеціальному внутрішньому форматі, який може бути швидко розпізнаний та виконаний.
Вражає швидкодія багатокористувацької версії програми. Сервер робить перерахунки внутрішнього стану після змін в операціях зі швидкістю тисяч і десятків тисяч операцій за секунду. Це означає, що можна вводити і редагувати операції у минулому і відразу бачити всі наслідки цих змін.
Висока швидкість та надійність ФБП доведена використанням на підприємствах, де відбуваються сотні тисяч господарських операцій на місяць: не простих проведень, а складних операцій, кожна з яких містить до десятка проведень плюс додаткові дії.
Сервер показує мнемосхему свого стану, тож користувачі легко зрозуміють, що і як він робить. Можна оптимізувати продуктивність додатків для програми «Фінанси без проблем», використовуючи профілер, який графічно показує «вузькі» місця у дереві видів операцій та звітних формах.
Цікаво, що багато людей, уперше почувши про надшвидку роботу програми, сприймають таку інформацію як жарт або обман. І навіть побачивши, як вона працює, все одно спочатку відчувають недовіру. А відтак ставлять запитання: то чому ж менш довершені технічні рішення є набагато поширенішими? Але це вже інша історія.
1 Програму розроблено фірмою «Хакерс Дизайн» (м. Маріуполь).
Ланки одного ланцюга. Функціональні модулі системи BS Integrator Не «1С»-ОМ єдиним Чимало підприємств уже не задовольняє використання лише облікових функцій автоматизованих систем. Комплексне розв’язання завдань управління підприємством стає дедалі актуальнішим. Сьогодні на ринку автоматизованих систем представлено продукти у 3-х...