gifts2017

Идеальная архитектура домашней бухгалтерии

Опубликовал Осипов Сергей (fixin) в раздел Управление - Практика учета

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

Идеальная архитектура домашней бухгалтерии

Начиная, наверное, с 2004 года, я непрерывно веду домашнюю бухгалтерию. Важную роль в этом деле сыграло знакомство с программой SPB Pocket Finance для наладонных компьютеров. Раньше я думал, что причина того, что мне легко вести учет в том, что я веду его на КПК, но потом понял, что важнее принципы архитектуры, положенные в основу этой программы.

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

Программа домашней бухгалтерии кажется настолько простой, что многие начинают ее писать с нуля. Я сам пробовал вести учет в Excel, в Access, в 1с7, но только в SPB Pocket Finance смог вести учет. На рынке очень много программ для домашней бухгалтерии, но многие из них допускают архитектурные ошибки, которые лишают их популярности и удобства.

Основные принципы домашней бухгалтерии

Домашняя бухгалтерия – программа для простого учета. Она должна быть понятна простому пользователю, и не должна быть слишком усложнена. Можно, конечно вести учет денег в классической бухгалтерской программе, но это слишком сложно и не удобно.

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

Идеальная архитектура

Далее будет рассмотрена идеальная архитектура, с комментариями, чем она лучше других архитектур.

Кошельки

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

Кошелек – это и обычный кошелек, где хранятся наличные, и счет в банке, и пластиковая карта.

Перемещение денег

Деньги можно перекладывать из кошелька в кошелек. Если кошельки в разных валютах, то сумма прихода может быть не равна сумме расхода – происходит конвертация по некоторому курсу.

Долги

Долги можно рассматривать как кошельки. При перемещении денег в кошелек долга мы даем в долг, при получении денег из кошелька мы берем в долг (или забираем долг обратно).

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

Инвентаризация

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

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

Учитываемые значения

Для учета оборотов важно знать не только сумму, но еще и количество. Иногда важно точно знать, сколько штук продуктов покупается, сколько поездок делается и т.п.

Аналитика

Для каждого движения можно уточнить:

  1. 1.       В рамках какого проекта осуществляется движение
  2. 2.       Какой контакт участвует в движении
  3. 3.       Статья доходов/расходов – по какой статье осуществляется приход или расход денег.

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

В качестве проектов можно использовать например:

  • ·          «Работа» - расходы, связанные с работой
  • ·         «Командировка в Минск» - расходы, связанные с командировкой в Минск
  • ·         «Аутсорсинг» - доходы, связанные с аутсорсингом

Пересчет валют для отчетов

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

Учет по каждому кошельку ведется в валюте кошелька.

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

Набор документов

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

  1. 1.       Поступление денег в кошелек
  2. 2.       Расход денег из кошелька
  3. 3.       Перемещение денег между кошельками

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Сергей Жемойтель (djam_arttek) 06.12.11 16:26
Использую Skrooge и насколько понял эта программа близка к идеалу :)
2. Осипов Сергей (fixin) 06.12.11 16:40
(1) бог в помощь. Я использую самописную на 1с, реализованную по моим же принципам.
3. Сергей Жемойтель (djam_arttek) 07.12.11 02:17
Я так отказался от мысли использования 1С в качестве базы для домашней бухгалтерии. Попробовал несколько программ. И остановился на skrooge как наиболее интересной.
4. Ivan Petrochenko (ipetrochenko) 07.12.11 02:55
Еще неплоха идея тегов как это реализовано в сервисе drebedengi.ru.
5. Лариса Девятова (Lara9owa) 07.12.11 05:11
Использую 1С:Деньги, полностью соответствует этим принципам + можно еще планировать бюджет на месяц.
XoloD; Thror; +2 Ответить
6. Юлия Малышева (unis) 07.12.11 08:08
7. Игорь Братунец (brigi) 07.12.11 12:52
Самопальную бухию на основе 1С 7.7, веду уже с 2000 года.
Конечно архитектура отличается от изложенной в теме,
но как грится на вкус и на цвет, фламастеры разные.
Но не давно всетаки ввел понятие кошелька и занялся перепиской её на 8.2,
с переносом данных из 7ки.
По поводу валют, все таки хорошо знать текущую сумму общей налички в национальной валюте, без дополнительных отчетов, пересчет суммы во время операции, особой нагрузки на ИБ не представляет.
8. Дорошкевич Петр (alfanika) 07.12.11 15:06
Все это есть в 1С:Деньги 8, и даже больше!!!
9. Александр Рытов (Арчибальд) 07.12.11 15:11
От того, что истина банальна, она не перестает быть истиной.
10. Сергей Жемойтель (djam_arttek) 07.12.11 18:53
Прошу прощения. Вопрос выбора упирался в несколько требований к софту.
1. Программа должна быть легкой. И в плане использования и в плане требований к ресурсам
2. Программа не должна зависеть от какой-либо платформы. К сожалению, иметь дома 1С ради учета своих финансов посчитал нерациональным.
3. По возможности, программа должна быть межплатформенной. Увы 1С кроме как на Windows не работает. Я имею ввиду толстый клиент. На базе 8.2 Учебной версии что-то пробовал сваять. И даже сделал, так как мне это удобно. Но ограничения на учебную версию не позволяют полнофункционально использовать программу. А покупать Базовую бухгалтерию для этой цели или ПРОФ как-то глупо.

Ранее использовал программу "Домашние финансы"Проф версию. Всем бы она была бы хороша да только не работает в моем любимом линуксе... А под wine запускать не хотелось. В линуксах просмотрел несколько программ. Все они по своему хороши. Но остановился на Skrooge как наиболее оптимальной софтине...
11. Осипов Сергей (fixin) 07.12.11 22:43
(10) Конечно, все мы хотели бы перестать жрать 1С, но что поделать. Если хочется возможности заточить под себя, лучше 1с ничего не придумано. Так что Линукс, Линуксом, а покамись, пока не видно "убийцы 1С", она - лучшая для любых баз данных.
(8) Я смотрел 1с:Деньги 7.7, тогда еще восьмерки не было. Даже вел там расходы месяца, но не сложилось. Такая программа, которую часто юзаешь под себя, должна быть идеально под тебя заточена.
12. Anatolii Karasev (KapasMordorov) 07.12.11 22:57
Вел учет когда надо было в Inesoft Cash Organizer. Удобно было.
Сейчас бы смотрел в сторону Sanuel Family, у которой есть мобильная и ПК-шная части.
13. Алексей Фурманов (Aleksey-29) 08.12.11 10:31
Еще нужен быстрый запуск (т.е. кликнул по ярлыку, сразу открылось) и заставить вводить свои расходы других членов семьи (в этом тоже есть сложность). А то получается я свои ввожу, а остальные не вводят.
14. Алексей Фурманов (Aleksey-29) 08.12.11 10:35
И интересно было бы автоматом как-то их в базе фиксировать. Н-р, как по пластиковой карте. На сервере лежит база, у меня есть ID и карта. Я делаю покупку в магазине и предъявляю эту карту, продавец по терминалу связывается с сервером и фиксирует мои расходы. А уж доходы я сам введу он-лайн.
15. Жека Moscow (SpartakM) 08.12.11 11:30
(2) а выложить здесь эту конфу не желаете?
16. Осипов Сергей (fixin) 08.12.11 11:44
(15) желаю. Это конфа PIM, скоро выложу, я только приехал на инфостарт, ждите.
17. Осипов Сергей (fixin) 08.12.11 11:45
(14) практика показывает, что по налу достаточно 5 минут в день для вбивания расходов, по безналу - 30-60 минут в месяц. Главное регулярность.
18. Сергей Жемойтель (djam_arttek) 08.12.11 12:14
(14) По данной схеме необходимо что бы магазины поддерживали подобную технологию. Думаю это на уровне фантастики. Единственное что могло бы как-то автоматизировать учет это взаимосвязь бух.программы с он-лайн банкингом где отображаются движения по карте.
19. Алексей Фурманов (Aleksey-29) 08.12.11 12:22
(18) djam_arttek, сейчас же магазины пласт. карты поддерживают - и это не фантастика (хотя давным-давно...). Думаю скоро и это будет реализовано, а предпосылки уже есть - решения на базе SaaS.
А вот банки не дадут свои данные таким способом.
PS: а в каком он-лайн банке есть движения приход-расход, которые можно выгрузить?
20. Сергей Жемойтель (djam_arttek) 08.12.11 12:23
(13) вот skrooge как раз достаточно быстрый или "Домашние финансы".
для отдельных пользователей можно вбить как отдельные статьи расходов. Принуждать наверное к забивки не стоит, а вот самостоятельно учитывать расходы членов семьи вполне под силу.
21. Сергей Жемойтель (djam_arttek) 08.12.11 12:27
(19) Магазины не пластиковые карточки поддерживают, а возможность производить оплату по безналу списывая средства со счета пластиковой карты. Любая операция проводится через банк-оператор такой услуги.
Я не готов утверждать, но в случае присутствия в он-лайн банкинге возможности формирования выписки (Банк Открытие), то это и есть вариант получения движений по счету.
22. Александр Топольский (AlexanderKai) 12.02.12 20:14
В таких разработках, по моему мнению должен быть анализ расходов и доходов с предложением программы вариантов как это все дело оптимизировать.
23. Осипов Сергей (fixin) 12.02.12 22:13
(22) видимо, да.
я из практики понял что нужно:
1. Делить расходы на регулярные и по отедльным проектам.
2. Относить расходы к определенному периоду, например если квартплата за январь платится в феврале, то это период январь.
24. Лаура Лаура (Лаура) 13.02.12 12:41
А можно поинтересоваться на такой счет? А оправданны ли ваши затраты времени на обработку-ввод данных в программу. Опишите пожалуйста все плюсы и "изюм" от использования учета домашних финансов. На мой взгляд кроме затрат времени я ничего не поимею: примерный объем средств на оплату расходов на питание, коммуналку я и так могу прикинуть за месяц, заработок мой от использования программы напрямую больше не станет, дети меньше ботинок рвать не станут...
25. Сергей Жемойтель (djam_arttek) 13.02.12 14:22
(24) Лаура, учет домашних финансов не стоит сравнивать с тем меньше или больше будут дети рвать ботинки. Программа позволяет упорядочить расходы. Если у вас есть кредиты, или накопления, акции и т.п. то программное обеспечение упростит вам отслеживание движений. Более того если вы планируете крупную покупку а денег сейчас нет, то программа сможет подсказать по каким статьям можно сэкономить...
К примеру, можно понаблюдать за тем как расходуются "карманные" и от чего вдруг у ребенка повысились запросы... Можно оценить какие статьи расходов в жизни не столь важны но отнимают массу средств... Также можно распланировать бюджет на ближайшую перспективу, попробовать спрогнозировать бюджет на будущее... А сэкономленные на этом средства пустить в более нужное русло :)
26. qweasd qweasdzc (serega3333) 13.02.12 14:36
интерфейс домашней бухгалтерии намного сложней сделать, чем архитектуру
27. Сергей Жемойтель (djam_arttek) 13.02.12 15:23
28. Осипов Сергей (fixin) 13.02.12 15:31
(24) для меня важно еще знать, что деньги я не потратил в никуда, т.е. не потерял.
Хотя оптимизации не получается. больше всего денег я трачу на жилье и жрачку. и тут никуда не денешься.
Расходы по вводу данных в систему минимальны. Ввожу по чекам из кошелька, на что нет чека - записываю как заметки в КП. Использую крупные статьи, например, Продукты, чтобы не мелочиться.
Опять же, можно цены посмотреть и когда что покупал, например ту же стиралку... ;-)

Интерфейс у меня идеален - типа Excel таблицы. ткнул в нужный день и вводи расходы, не парясь с документами, как это делают остальные.

(26)(27) да, интерфейс сложно сделать удобный. Для меня удобный вот такой:
29. Сергей Жемойтель (djam_arttek) 13.02.12 15:51
Немного об интерфейсах

Skrooge
Windows/Linux;
бесплатно, открытые исходные коды;


kMyMoney
Linux/Windows;
бесплатно, открытые исходные коды;


Домашние финансы
Только Windows;
Free - бесплатно, урезан функционал;
Другие варианты - платно от 400 р.;
код недоступен;


Домашняя бухгалтерия от keepsoft
Только Windows, есть версия для КПК;
Lite - бесплатная;
Различные лицензии, платно, от 500 р.;
Код закрыт;


1С: Деньги 8
Только Windows;
Только платная 600 р;
Код закрыт;
30. qweasd qweasdzc (serega3333) 13.02.12 16:30
1c деньги на мой взгляд самые приятные глазу
31. Осипов Сергей (fixin) 13.02.12 18:26
(29) все они академичны, эти интерфейсы. Если задаться целью минимизации времени ввода транзакций, придешь к моему интерфейсу или подобному + использование шаблонов повторяющихся операций в полклика мышью. ;-)

(30) в семере я с них соскочил, т.к. нельзя было менять дату операции без распроведения... Не знаю, ничего особо удобного там не встречал.
32. Сергей Жемойтель (djam_arttek) 14.02.12 01:07
(31) Экселевский вариант интерфейса тоже как-то не слишком подходящий для простых пользователей. Более того, теряется смысл использования какого-то софта... Т.е. получается возврат к экселю через 1с...
33. Осипов Сергей (fixin) 14.02.12 07:26
(32) ну там в Excel-подобной таблице все же документы расположены, но подробно расписаны...
34. Александр Доровских (Requiem) 14.02.12 07:44
Лучше вести не бухгалтерию, а бюджет. Остаток на счетах вы и так знаете например, зачем он вам.
35. Осипов Сергей (fixin) 14.02.12 08:00
(34) с чего вы взяли, что знаю? благодаря учету порой находил косяки. например, отложил деньги и забыл про них и т.п. для меня знание остатков по программе - важнейшая часть учета.
36. qweasd qweasdzc (serega3333) 14.02.12 10:27
(30) fixin, на 8.1 хороший интерфейс без косяков
37. Сергей Жемойтель (djam_arttek) 14.02.12 10:40
(36) serega3333, ну на 8.2 с управляемыми формами был бы еще лучше :)
38. Осипов Сергей (fixin) 14.02.12 10:57
(36)(37) я не про косяки веду речь, а про удобство. Как забивается операция?
Создаешь новый документ и вколачиваешь строки? это прошлый век. Я через это прошел и ушел к эксель-подобному интерфейсу в PIM.
40. Сергей Жемойтель (djam_arttek) 14.02.12 12:48
если заинтересует хотя бы кого-нибудь, то распишу более подробно работу и вкусности каждой программы в отдельности :)
41. Осипов Сергей (fixin) 14.02.12 13:10
(40) да, расписывай. надо знать конкурентов.
42. zavsom1 zavsomovich (zavsom) 25.10.12 17:55
Абсолютно все верно - только я свою прогу писал на учебной конфе по платформе 8-0 в 2006 году и уже в 2010 я купил с ее помощью квартиру - у меня кошельки это счета бух учета - статьи затрат такие: еда, бытовые нужды, телефон, лекарства, развлечения, квартплата и т.п, статьи поступления такие поступления зп и на телефон (так как мне клиенты кидают на телефон , а потом я их вывожу на карту) перемещение между счетами и документ-инвентаризация - называется пересчет валютных средств - так как когда копил то хранил деньги в разных валютах, в золоте и серебре и на металлических счетах, в МММ и акциях. Документ пересчет валютных средств был еще и калькулятором, приводящим все к одной валюте, по текущему на данный момент курсу.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа