Найти тему
АПЕКС

Про показатели

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

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

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

Моя чуда не справилась с этим всем - не для того была сделана. Любой генератор работает просто - проходит по записям и обрабатывает данные по этой одной записи, и подводит итого, всего и прочие подсуммировки. А здесь в каждой ячейке этой матрицы нужно полностью прогонять как минимум сальдо по всем счетам. Т.е. по каждой ячейке - обработка кучи записей, число проходов по записям было равно количеству ячеек. Тормоза жуткие.

Настало время чуду мою чинить под новые задачи. Сделал просто. В каждой ячейке был прописан набор правил (формул), довольно таки в необычном виде – что-то типа собственного языка. Упрощенного и специализированного конечно. Но все-таки.

Так вот, ходила чуда по балансу один раз. Только каждое значение прогонялось на предмет применимости к каждой ячейке. Улов значений такой. Типа сачка для ловли бабочек. В каждой ячейке - своя метода. Удовлетворяет условиям - значение в ячейке просуммировалось. Засада была еще и в том, что надо было многие вещи ещё по дням отдельным бить, или неделям, или месяцам, или декадам. Т.е. это уже не матрица такая двумерная, а трехмерный куб. Где третье измерение - время. OLAP кубы понимаешь родились. Типа.

Написал все эти периоды отчетности и вспомнил одну историю. Знакомый делал программу бухгалтерского учета. И всё никак не мог подписать акт приёма передачи. Никак не мог застать на месте главного бухгалтера, точнее получить у неё аудиенцию. Почти в отчаянии, после очередного отлупа произнес - "Ну у всех женщин бывают критические дни. Раз в месяц. Но у этой - пятидневные, недельные, декадные, месячные, квартальные, полугодовые, годовые. Я уж молчу про ежедневки и оперативки." Сплошные критические дни. Переходящие одни в другие. Да простят меня дамы. Мда. Нелегка ноша главного бухгалтера. Тяжела, я бы сказал. Но это я отвлекся.

Захотелось еще махать сачком этим один раз, а не скажем 30 - по числу дней в месяце. Махание - это прохождение по сальдо всех балансовых счетов, а иногда ещё и по оборотам. Чем меньше маханий - тем быстрее работает. Доделал, отладили всё это безобразие на пару с начальником кредитного отдела (у неё самые измудрённые отчеты насчет отнесения сальдо по счетам к той или иной строке были) и главбухшей - отчеты по кассе по символам так называемым и пятидневкам с нарастанием за каждый день, а также ежемесячные с нарастанием итогов по пятидневкам, да ещё и в тысячах - со всеми прелестями округления.

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

А еще использовалась в банке программа операционного дня, которая взбрыкивала регулярно. Но я на нее повлиять особо не мог - не я её делал. Через пару недель эксплуатации выдала такое огромадное окно - красный фон на нем желтыми буквами написано - "Этого не может быть". Нажмите любою клавишу для продолжения. Я нажал. И всё. Больше она не запускалась... Починка могла быть только своими силами - разработчики этой программы уже исчезли вместе с лопнувшим банком. Так что только подручные средства. Хлопать багажником и пинать бампер. И прочие хороводы с бубном.

Помогло только восстановление данных за предыдущий день. Индекс слетел и восстанавливаться не хотел. Это я потом раскопал. От нечего делать. Банковская деятельность вообще-то приучает к оперативности принятия решений. Выбирается не самое правильное - а самое быстрое по реализации. Чтобы всё работало. А круто это или полого - никого не интересует. И это правильно. Результат важнее процесса. Как мне кажется. Может я и не прав.