metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-06-24 12:25 pm

Нужна помощь спецов по автоматизации бухучета

Как организовать расчет в случае, если есть документы покупки и документы оплаты, они закрывают друг друга(т.е. формируется связь m:n по мере поступления тех и других и по другим критериям из мозга бухгалтера), но есть необходимость учесть сторнирование документов?

Я что-то за 10 лет автоматизации бухучета этот вопрос теоретически правильно так и не решил - оставил на усмотрение бухгалтерам, чтобы они вручную разбирались.

Кстати тема "закрытие(оплата) одних документов другими" это такой специальный бухгалтерско-программистский фетиш, она выедает мозг просто феноменально.

[identity profile] rssh.livejournal.com 2009-06-24 09:38 am (UTC)(link)
> Кстати тема "закрытие(оплата) одних документов другими" это такой специальный бухгалтерско-программистский фетиш, она выедает мозг просто феноменально.

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

[identity profile] a-lourier.livejournal.com 2009-06-24 09:48 am (UTC)(link)
Если покупатель платит по счету 12345, то тут очевидно, к какой покупке платёж относится, и соответственно можно предпринимать действия - например, разрешать отгрузку по счету. А если покупатель просто "пополняет баланс", то какая разница, за "прошлый месяц интернета" он платит, или за следующий? Если платежей меньше, чем услуг оказано, то этого достаточно знать, чтобы отключить абонента.

В общем случае, у бухгалтеров есть такая вещь - учётная политика. Там и уместнее всего прописывать эти вопросы. Если кому-то зачем-то понадобится такое соответствие (а не просто сумма платежей vs. сумма покупок), то тогда и имеет смысл такое разграничение делать.
Edited 2009-06-24 09:49 (UTC)

[identity profile] metaclass.livejournal.com 2009-06-24 09:53 am (UTC)(link)
Тут речь идет не об одном этапе "выставление счета-оплата-продажа".
Такая проблема возникает всегда в непрерывном предоставлении услуг, типа воды, газа или электричества - клиенту выставляется счет за услуги, он платит за него, а потом оказывается, что счет надо уточнить, сторнируя его, и чтобы информация о связи счетов и платежек за них осталась осмысленной.
Скорее всего тут банально при сторнировании надо показывать бухгалтеру список связанных документов, чтобы она выбрала, какой из них будет отсторнирован вместе с основным.

гы...

[identity profile] az-from-belarus.livejournal.com 2009-06-24 10:15 am (UTC)(link)
А вот нафиг уточнять счет?
Ведь счет уже выставлен. Т.е. совершена юридически значимая операция, причем ее последствия за пределами полномочий бухгалтерии - контрагент счет получил и что-то в связи с этим предположительно начал делать в рамках СВОИХ бизнес-процессов.
Нужно совершать еще одну операцию, выставлять еще один счет.
Если ОЧЕНЬ нужно отслеживать связность счетов и платежей... По умолчанию это "на автомате" не очень просто, если учесть ситуации, когда платеж может осуществляться в несколько заходов (несовпадение суммы), третьим лицом (непонятные реквизиты) и т.п. Посему тут либо вручную нехай корячатся, либо нужно вводить строгий регламент проведения платежей, зафиксированный в договоре с контрагентом (клиентом). И платежи не соответствующие данному регламенту могут, к примеру, попросту не приниматься, а можно и как-то иначе.

[identity profile] metaclass.livejournal.com 2009-06-24 09:56 am (UTC)(link)
А соответствие нужно, например для расчета книги покупок, это фактически она и есть - список соответствия.
И еще есть варианты, когда оплата и отгрузка производятся в разных учетных периодах, а уж если при этом менялись ставки налогов - это ад полный.

[identity profile] a-lourier.livejournal.com 2009-06-24 10:14 am (UTC)(link)
Имхо, проблема совсем не компьютерная. Надо счета-фактуры отдавать клиентам только после обмена подписанными актами, чтобы потом не приходилось что-то уточнять и не было ада с пересчетом налогов. А пока счета-фактуры не выданы, можно спокойно стирать все соответствия между оплатами и покупками с момента регистрации сторнированного документа и заново проводить это соответствие.

[identity profile] metaclass.livejournal.com 2009-06-24 10:16 am (UTC)(link)
Да, в идеале было бы так. А на практике оказывается, что обмениваются актами сверки через 3 года после реально проведенных операций.

[identity profile] a-lourier.livejournal.com 2009-06-24 10:28 am (UTC)(link)
Сверка - чисто техническая операция, ей можно хоть через 3 года обмениваться. А я говорю об актах оказанных услуг. Если покупатель и продавец подписали его, то все - с этого момента услуга полностью оказана, и никаких изменений вноситься не может. Программно надо запретить выписывать счета-фактуры, пока не будут получены подписанные акты, чтобы не было этих исправлений задним числом.

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

[identity profile] theiced.livejournal.com 2009-06-24 10:33 am (UTC)(link)
Бухгалтера вас ненавидят и копят на киллера.

[identity profile] az-from-belarus.livejournal.com 2009-06-24 10:53 am (UTC)(link)
Мне нравится то, как вы смотрите на эту тему. Здравый взгляд. :-)

[identity profile] dragon-j.livejournal.com 2009-09-28 05:08 pm (UTC)(link)
Эк вы сурово-то.. Счет сам по себе ничего с точки зрения бухгалтерии не значит. Его можно хоть каждый день выписывать. Ну вот хочет клиент цены актуализировать на сейчас -- нна тебе. Карать за это неправильно.
А вот отгрузки/акты -- это да. Это уже первичный бух.документ начинается.
Ну так введите себе в систему дополнительную сущность под это. В САПе, например, есть понятие Фактура -- оно же признание кредиторской (если покупаем) или дебиторской (если продаем) зазолженности. И пока период не закрыт (и ще кой-какие условия) отсторнировать фактуру можно. И провести потом по новой. Что в принципе правильно.

[identity profile] a-lourier.livejournal.com 2009-09-29 07:46 am (UTC)(link)
А к счету это никакого отношения и не имеет. Разумеется, счета могут и редактироваться, и сторнироваться до того момента, пока по нему не будет совершена хотя бы одна оплата или отгрузка. После этого счет блокируется.

А написанное относилось только к актам. Если уж оба контрагента подписали акт, то все - назад дороги нет.

[identity profile] theiced.livejournal.com 2009-06-24 09:53 am (UTC)(link)
я за нцать лет работы с бухгалтерией (что нашей что буржуйской) понял две очень важные вещи.

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

[identity profile] metaclass.livejournal.com 2009-06-24 09:54 am (UTC)(link)
Я на бухгалтерии давно и серьезно поехал крышей, это сейчас в последние три года как-то отпустило(другие проекты появились, не связанные с ней).

[identity profile] metaclass.livejournal.com 2009-06-24 09:57 am (UTC)(link)
Я предлагаю начать с запрета всех языков программирования, не поддерживающих метапрограммирование :)

[identity profile] a20bostan.livejournal.com 2009-06-24 09:57 am (UTC)(link)
обратитесь к репетитору, который специализируется на бухучете, он вам все разъяснит - http://www.repetitors-moscow.ru/

Бухгалтерский бред.

[identity profile] az-from-belarus.livejournal.com 2009-06-24 10:02 am (UTC)(link)
Если слишком идти на поводу у бухгалтеров, то рано или поздно будешь упираться в тот или иной бред.
Тут надобно пожестче быть. Если бухгалтершам предоставляются ПОЛНОМОЧИЯ по составлению или корректировке ТЗ, то они симметрично должны предполагать и ОБЯЗАННОСТИ, согласно которым в ТЗ все сущности и цепочки операций имели строгие, полные и непротиворечивые дефиниции. Не могут исполнить эти обязанности - браковать все их "требования" как невыполнимые и подрывающие создание/функционирование/развитие учетной системы.
Хорошим решением для таких случаев могло бы быть привлечение мозговитого думающиего консультанта-аудитора, способного выработать учетную политику и четко сформулировать соответствующие политике блоки требований к учетной системе. Бухгалтерам тогда останется лишь строго следовать заданной учетной политике и их нужно бить по голове и по кошельку за любые попытки ее нарушения.
А сторнирование документов - это бред. Сторно - это лишь бухгалтерская учетная операция, проводка. Документ - это более сложная сущность, уровня хозяйственных операций, а не учетных, учетные же операции, проводки лишь отслеживают в учете хозяйственные документы.

Re: Бухгалтерский бред.

[identity profile] metaclass.livejournal.com 2009-06-24 10:10 am (UTC)(link)
Ну тут вполне реалистичная операция - первичный документ за прошлый период оказался ошибочным, его надо уточнить, но так, чтобы при этом выходные отчеты типа книги покупок не превратились в тыкву.
Вот когда к этому какой-нибудь склад окажется прикрученным, это будет страшно, там еще и разбираться в соответствии того что есть на складе и то что есть по учету придется со всеми вытекающими.

Гы....

[identity profile] az-from-belarus.livejournal.com 2009-06-24 10:22 am (UTC)(link)
А вот нефиг ошибки всеми правдами и неправдами покрывать.
Если ошибки неизбежны, то ввести соответствующий момент в учетную политику.

Re: Гы....

[identity profile] a-lourier.livejournal.com 2009-06-24 10:29 am (UTC)(link)
> А вот нефиг ошибки всеми правдами и неправдами покрывать.

+100

Re: Бухгалтерский бред.

[identity profile] theiced.livejournal.com 2009-06-24 10:10 am (UTC)(link)
Тут в чём беда - бухгалтерия принципиально не формализуется.

Фигня.

[identity profile] az-from-belarus.livejournal.com 2009-06-24 10:48 am (UTC)(link)
При желании все прекрасно формализуется.
Ну а беды бухгалтерии идут как правило от того, что в самом начале не проведено четкого разделения функций управления и бухгалтери помимо своей законной учетной функции занимается еще хрен знает чем. И при этом частенько оказывается что главбух - второе (или около того) после директора лицо в принятии управленческих решений. А это эквивалентно неиссякаемому потоку бредовых заморочек.
Просто нужно хорошо понимать следующее.
Типичная бухгалтерия - это дуроватая бабенция, которая очень смутно понимает реальные задачи предприятия, которая довольно противоречиво представляет себе собственные задачи. Она неспособна по уму решить те или иные собственные мелкие затруднения, но совершает попытки их решения, которые порождают другие, более существенные затруднения - чаще для других подразделений. При этом наворотив всяческого бреда она сидит на совещаниях с зачумленным выражением лица, жалобится на то, что ей трудней всего, требует дополнительных ресурсов (компьютеров, бухгалтеров, программистов и т.д.) но не позволяет никому разрулить ею же созданные хитросплетения трудностей. Ибо если она на это согласится, то подтвердит свою собственную некомпетентность. При этом решающим аргументом во всех разборках со стороны бухгалтерии является то, что главбух несет материальную ответственность.
Конечно, мозговые заморочки дурной бабенции формализовать невозможно. Но это еще не значит, что нельзя формализовать бухгалтерию.

зы

[identity profile] az-from-belarus.livejournal.com 2009-06-24 11:01 am (UTC)(link)
Тут, впрочем, еще следует добавить.
Порой хитрожопые заморочки генерируются специально, дабы учетные данные были для посторонних непроходимыми дебрями и в них как-то можно было прятать "теневые" операции.
Типичный пример "сторнируемых документов". Изрядная доля оборота предприятия составляет теневой, серый товар. Но товарно-транспортные документы для него должны быть настоящими, шоб в пути не арестовали. Посему серый товар проходит по документам как чистый (и тоже представленный в обороте предприятия). А затем, когда этот товар дошел до точки доставки или даже рассосался у потребителей, производится уничтожение соответствующих документов или их "сторнирование".

Re: зы

[identity profile] a-lourier.livejournal.com 2009-06-24 11:18 am (UTC)(link)
В книжке про налоговые схемы, за которые посадили Ходора, упоминается об изъятии программной системы, которая помогала осуществлять налоговое планирование в Юкосе. Хотел бы я взглянуть на её алгоритмы :)

Хм...

[identity profile] az-from-belarus.livejournal.com 2009-06-24 11:44 am (UTC)(link)
Ходор работал грамотно.
Он действительно построил довольно белый бизнес.
Его посадили потому, что посадить было надо. А так долго бодались и расследовали потому, что не удавалось найти чего-то, в чем можно было обвинить. Последовательность действий была такая. Поскольку по текущим делам придраться было не к чему, то взяли в оборот по делам старым. При этом Юкос оказался в обезглавленном состоянии, да еще и под прессом всяческих расследований. И уже на фоне этого начали то ли выползать, то ли возникать, то ли создаваться нарушения, за которые можно было зацепиться.
Не исключаю, что на головном уровне что-то и шустрили, но тогда правду об этом знает очень небольшое количество людей.
Но при этом весьма активно прокручивали оптимизацию налогов через дыры в законодательстве, т.е. не нарушая напрямую закон.
А насчет информационной системы...
Вряд ли там было что-то, что можно таковой назвать. Скорее всего набор диаграммок в арисе и прилагающаяся к ним гроздь электронных таблиц. Опять же вряд ли там было что-то действительно криминальное. Сама суть планирования - это выработка предолоагаемых вариантов действий, анализ их и утверждение либо отказ от них. Отказ кстати, может быть обусловлен и незаконностью отдельного варианта. Любая система фиксирующая варианты планов будет содержать что-нибудь сомнительное. Но это еще не говорит о том, что тот, кто эти планы готовил и рассматривал имел преступные намерения или тем более совершил преступление.

Re: Хм...

[identity profile] a-lourier.livejournal.com 2009-06-24 04:37 pm (UTC)(link)
> Ходор работал грамотно.
> Он действительно построил довольно белый бизнес.


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

А по сути, основной способ грабежа государства был такой - фирма, учредителем и директором которой является бомж, покупает нефть и перепродает с большой наценкой белой фирме. Белая фирма делает ещё небольшую наценку и продаёт товар покупателю. Основная налоговая нагрузка ложится на бомжа, который почему-то не торопится заплатить налоги. Таких ситуаций было много найдено в деле Ходорковского. А ещё хуже, когда белая фирма экспортирует товар, тогда она ещё и возврат НДС получает - там вообще весело. Государство финансирует преступников. Зачастую, формально не удаётся доказать даже взаимозависимость бомжа и белой фирмы. Тогда следствие задает вопрос, почему белая фирма покупала товар у бомжа, а не в том месте, где сам бомж брал. Тоже аргументы так себе, с точки зрения закона, но когда на них нет нормальных ответов, то суд выносит определение о взаимозависимости, и соответственно, виновные садятся.

Re: Фигня.

[identity profile] theiced.livejournal.com 2009-06-24 12:29 pm (UTC)(link)
Там некоторые законы/постановления/уточнения мягко говоря нечёткие и противоречат друг другу. Удачи в формализации.

[identity profile] gds.livejournal.com 2009-06-24 10:10 am (UTC)(link)
блядь, как же меня заебала эта хуйня на работе.
дали руками заводить -- вовремя не заводят, "времени нет", никаких актуальных данных в середине месяца нет, постоянно косяки в заведённых данных (которые заводят за пару дней до необходимости получения отчётов).
Сейчас пробуем автоматически -- в пределах периода имеем сальдо на начало (у каждой записи -- своя дата формирования; очевидно, в прошлом), имеем приходы и расходы (каждый из которых может быть как положителен, так и отрицателен). Дальше -- шаманские пляски. Сначала закрываем отрицательные суммы (возвраты продукции и возвраты денег) с соответствующими положительными из той же категории (приход/расход), в случае одинаковой даты. Затем взаимно закрываем положительные приходы с положительными расходами (рассматриваем приходы по возрастанию даты, пытаемся ими закрыть расходы (тоже, в свою очередь, по возрастанию даты)). Затем повторяем первый шаг, но не обращая внимания на даты.
Местечковые особенности состоят ещё в том, что закрытия идут в трёх валютах (учётная фиксирована, остальные -- с вариантами), и в зависимости от некоторых свойств расхода приоритет имеют разные приходы в разной степени.
Как-то так.
Так хуйня в том, что постоянно натыкаюсь на ошибки бухгалтерии в текущих данных, и это длится уже долго. И я ещё не приступал к курсовым/суммовым разницам.
Можно было бы спросить, не ебанулся ли я в процессе работы, эхехе. Но "на все вопросы рассмеюсь я тихо, на все вопросы не будет ответов" :]

[identity profile] bogdanov-m.livejournal.com 2009-06-25 10:04 am (UTC)(link)
Не должны здесь счета закрываться оплатами.
Счет должен быть просто уведомлением клиенту, что он должен такую-то сумму. А клиент может недоплатить, переплатить, разбить платеж на части и черт знает что еще сделать.
То есть вот в этой вот PAYMENT_ON_ACCOUNT должен с одной стороны быть его накопленный долг без разбивки по счетам, а с другой стороны оплаты. Оплата с минусом - возврат.

[identity profile] dragon-j.livejournal.com 2009-09-28 05:04 pm (UTC)(link)
сама постановка мутная. вот и выедает мозг.
в чем проблема-то?
ведется учет в разрезе договоров? Ну и ведите. По оказанным услугам делайте начисления, генерируйте дебеторскую задолженность.
Дебеторская задолженность сворачивается с оплатами. Причем чтоб не страдать излишне, сворачивать рекомендуется по принципу FIFO, а не по бумажке счета (то есть платеж проводить к договору, если учет договорной, или к лицевому счету, если учет по лицевому счету, и закрывать платежом саму старую дебеторскую).
Получилась по каким-то причинам переплата? Ну будет у вас кредиторская задолженность по услугам (товарам)
Надо сделать корректировки в начислениях (вернуть 5 кубов воды.. хмм.. если вы за них со своей стороны кому-то платили могут быть нюансы, решаемые. ну да пусть просто тупо спишем у себя в потери) -- ну делайте. Уменьшайте начисления по конкретному договору (лицевому счету) и соответственно дебиторку (отрицательная дебиторка должна стать положительной кредиторкой :) на требуемую величину.
Возникла переплата после пересчета? Ну оставьте деньги до следующего периода, где начисление и новая дебиторка с ними свернется. Или сразу верните клиенту. Тогда сразу свернется.

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