Подтвердить что ты не робот

Rehash: шаблоны проектирования программного обеспечения для бухгалтерского учета

В октябре Кристофер Джонсон спросил о шаблонах проектирования программного обеспечения для отчетности

Он получил несколько ответов, но все они были в основном одинаковыми, указав на Мартин Fowlers Patterns учета.

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

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

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

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

4b9b3361

Ответ 1

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

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

Cyclos является более практичным. Он охватывает учетные записи пользователей и транзакции.

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

Все это открытый исходный код, поэтому вы можете напрямую проверить документы, архитектуру и код.

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

Ответ 2

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

Ответ 3

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

tblTransactions
    - Amount
    - AccountID1
    - AccountID2
    - Type [CR/DR]
    - DateEntered

Тогда у меня также есть tblJournals, который группирует транзакции на очевидной основе. Вы также можете добавить JournalTypes, которые содержат общее описание того, что это за журнал, поэтому вы можете обнаруживать приятные вещи (reverals и т.д.).

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

У tblTransactions есть триггер, и триггер обновляет "CalculatedBalance" в отношении конкретных учетных записей в зависимости от типа. Затем вы также можете запустить отчет за определенный период и т.д.

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

Ответ 4

Поиск Google для двухфазной фиксации

Не шаблон дизайна как таковой, но вам нужно убедиться, что операции, подобные "перевести $amount из $account1 в $account2" никогда не "снимать" без соответствующего "депозита"... т.е. если мощность погаснет до завершения "депозита", "снять" откат (отменен)

Обязательные транзакции состоят из отложенных (откатных) под-транзакций...

  • получить необходимые разрешения: тривиальное отклонение, "недостаточное фондов "
  • запустите "двухфазную фиксацию"
  • добавить суб-транзакции
  • фиксация или откат

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

Ответ 5

Я на самом деле автор MyBanco, если вам нужна помощь, просто напишите мне по электронной почте:)

Ответ 6

Храните деньги в виде центов (целое число) вместо долларов (float). Это не дизайн, но он, вероятно, более полезен.