Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Много лет работаю с бухгалтерией,
вроде все там знаю, проблем не было. И сальдо тоже писал многократно. Но некоторые программы остались по наследству от ушедших на пенсию коллег. Есть у меня такое свойство, может и плохое. Если добились нужной цифры из чужого кода, я это в упор не понимаю, пытаюсь написать свой вариант. После неких реформ нужно среди прочего изменить кода расчета сальдо на начало года. Вчера коллега исправила чужой код, и он дает верные цифры. Не понимаю я там сбор из разных таблиц и использование древнего оператора total По смыслу сбор сальдо должен идти из всего одной таблицы проводок в которой в начале года и лежит входящее сальдо на год, накопившееся за предыдущий год. А запускать его мне. Пытался написать свой вариант, процентов на 95 дает все верно. Но есть строки, которые в упор не идут. И так , в таблице проводок поля debschet,credschet,andeb,ancread, smr, mesatz В обычной не сальдовой проводки как правило есть все комбинации полей. Во входящем сальдо должно быть заполнено или debschet,andeb,smr или credschet, ancread smr. mesatz=0 Сумма в итоге должна быть всегда положительная . Если в варианте debschet,andeb сумма получилась с минусом, ставим ей плюс обеляем поля debschet,andeb и ставим вместо них credschet, ancread Или если в варианте credschet, ancread сумма получилась отрицательная, меняем ей знак , обеляем credschet, ancread и переносим их в debschet,andeb Весь код написал в нескольких select c group by Ньюанс , бывают исходные не сальдовые проводки с перебросом, где debschet и credschet равны друг другу. Обычно они встречаются парами , где сумма сначала с плюсом, а потом с минусом. Может кто писал такое. Код конечно могу тут привести, но там полно не нужных деталей Делаю сначала select только по debschet,credschet, sum(smr) group by debschet,credschet потом такой же по credschet, ancread Из двух получившихся курсоров создаю курсор с уникальной комбинацией select distinct debschet,credschet union all credschet, ancread Нf него с помощью двух left join навешиваю два предыдущих курсора В результирующем курсоре меняю по описанному правилу debschet,andeb - credschet, ancread оставляя только одну пару и меняя где нужно знак суммы. Все. Исходого тз или документации нет. Был вчера у двух замов главбуха, пытаясь получить формулу для исходящего годового сальдо, лучше бы не ходил. |
Re: Входящее сальдо | |
---|---|
Simple777 Сообщений: 33855 Дата регистрации: 05.11.2006 |
Описание процесса выглядит... не совсем полно. Если дипломатично выразиться.
Когда-то, ну просто очень давно, пришлось заниматься чем-то подобным. После общения с главбухом и замом (обе весьма толковые попались, что бывает редко) понял, что надо отказываться от SELECT-SQL при обработке, поскольку существует с добрый десяток неочевидных нюансов, о которых знают бухи, но они их просто не помнят. Я же знаю, что "что-то есть", но не знаю, что, и как это "что" проводится. Поэтому приходилось брать помесячные формы и сверять с тем, что было когда-то сформировано бухами без моего софта. Обработка велась по отдельным записям в циклах. Так постепенно и "всё всплыло". Насчёт расчёта сальдо. Вопрос где и как его хранить - вопрос интересеый, конечно. Идеальным представляется такой вариант. Есть таблица с итоговым сальдо, хранящимся на начало текущего отчётного периода (как правило, месяца). В этой таблице также может накапливаться движение в разрезе счетов (субсчетов), контрагентов и т. д. Например, при бюджетном финансировании сальдо ведётся ещё в разрезе статей финансирования. Так что сальдо может быть и трех, и четырехуровневым, если можно так выразиться. При расчёте сальдо на следующий месяц можно ограничиться обработкой оборотов в таблице сальдо. Или сделать пересчёт из таблицы бухгалтерских проводок. Припоминаю, что есть нюансы насчёт проводок со знаком минус, то есть "по-красному". Далеко не во всех случаях проводка по-красному эквивалентна проводке со знаком плюс и со сменой дебета на кредит (или кредита на дебет). Что же касаемо того, что бухи не смогли дать ответы на вопросы, то, возможно, это связано с тем, что они просто не поняли, что именно у них спрашивают. Так частенько бывает. Но если вопросы им задавать "с выходными формами в руках" и числами, то они обычно понимают. |
Re: Входящее сальдо | |
---|---|
po2 Сообщений: 2864 Откуда: Иркутск Дата регистрации: 22.12.2001 |
Бухгалтерия - не математика. Например, сальдо учитывает тип счета. Потому, нельзя произвольно поменять знак и утащить значение в противоположную колонку. Следует искать ошибку в аналитике счета, разбираясь в причинах появления отрицательного результата. |
Re: Входящее сальдо | |
---|---|
Sawradym Сообщений: 2244 Откуда: Винница Дата регистрации: 15.05.2007 |
Єто опечатка, или я нашел в чем проблема? |
Re: Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Ньюансы- как раз есть учет по плану счетов активности или пассивности счета. Это меняет простое правило замены суммы, которое я описал. Но его учет ничего н исправил. Это в коде тоже есть. И общие суммы, если плюнуть на аналитику верные. Но у меня некоторые строчки разделились на несколько по аналитике, а в исходном варианте нет. Повторюсь, есть работающее решение, которое коллега вчера быстро подогнала под нужный результат. Мне этого мало. Хочу понять, а код написан на древнефоксовом, таблицы откуда тянут нужное я знаю, но принцип их наполнения не понимаю. С точки зрения математики одной таблицы проводок с начальным сальдо в начале месяце 0 достаточно. |
Re: Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Это только вершина айсберга Я привел не код, а описание того, что он делает Построение курсора с уникальным набором счет, аналитика, на который потом навешиваются суммы. Конечно кода даже два запроса select distinct debschet,credschet from curdeb union all select credschet, ancread from curcred потом из результата еще раз запрос с distinct И потом еще три запроса Первый клеит к курсору счет-аналитика суммы из curdeb второй из curcred и потом общую склейку в результирующий курсор. Сейчас тупо ищу расхождения в результате с тем, что должно быть Я просто хотел не код, а формулу расчета сальдо как таковую Исправлено 2 раз(а). Последнее : boba, 22.12.21 10:01 |
Re: Входящее сальдо | |
---|---|
po2 Сообщений: 2864 Откуда: Иркутск Дата регистрации: 22.12.2001 |
Возможно, здесь и подвох. При подсчете итогового сальдо, по бухгалтерским правилам, при переходе на следующий пункт аналитики передается свернутое сальдо. Т.е. по каждому конкретному пункту подсчитываются дебетовые и кредитовые суммы и сворачиваются, в таблице остается либо дебет, либо кредит. Хотя, может я и не о том. |
Re: Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
я же и сказал, в сально всегда только одна пара счет-аналитика,
а не исходные 4 из проводок. Ни документации ни ТЗ, есть только чужой код аборигенки, ушедший на пенсию в 80 лет. Конечно по анекдоту ( сын пришел к папе программисту тот сидит в глубоком дебагере папа , а правда, что Солнце каждый день встает? Сынок, ты проверил, тогда ничего не трогай.) Можно поступить так, оставить как есть и забыть. Но опять таки, не могу чужую шпору взять и переписать себе, если сам думаю по-другому. Исправлено 1 раз(а). Последнее : boba, 22.12.21 10:44 |
Re: Входящее сальдо | |
---|---|
Sawradym Сообщений: 2244 Откуда: Винница Дата регистрации: 15.05.2007 |
Даже после моего замечания, для дебета в качестве аналитики упорно берется не то поле.
И еще хочу уточнить, что именно не получается: а) правильно собрать табличку с начальным сальдо? или б) по правильно собранной сальдовой табличке получить начальный баланс? |
Re: Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Да странная штука.
Сверяю свой вариант расчета с реальным сальдо При разнице лажу в проводки и ищу причину. Два раза уже нашел, что вроде я прав, а не фирменный расчет. То есть нахожу проводку, которая неизвестно почему не учтена в сальдо. С другой стороны все сальдо каждый месяц сверяются с другой независимой задачей Баланс предприятия. Там если даже копейка уйдет, кричат караул. В пятницу буду на месте, кого-то стану трясти, но пока непонятно кого. Может я чего-то не знаю, но странно, сижу на этом уже не первый год. Всего разниц -12 строчек, что от общего числа просто ничтожный процент. Но не должно быть вообще никакой разницы. |
Re: Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
вроде нашел причину большинства , но не всех расхождений
Есть счета, где не должно быть аналитики. Но по-видимому по ошибке она проставлена По моему алгоритму сальдо разбивается на две строки вместо одной- в одной строке нет аналитики, в другой есть Общая сумма верна. |
Re: Входящее сальдо | |
---|---|
akvvohinc Сообщений: 4202 Откуда: Москва Дата регистрации: 11.11.2008 |
И какое отношение ко всему этому имеет Фокс?
|
Re: Входящее сальдо | |
---|---|
boba Автор Сообщений: 6269 Откуда: Медвежьи озера- Дата регистрации: 26.03.2001 |
Да никакого абсолютно.
Просто единственным рецептом снова оказывается анализ существующего кода на отклонения. Напрямую там этого нет. Но есть где-то правило разложения в таблицы, в которые кроме проводок раскладываются данные, а из них уже потом сальдо Хрень, писать по прототипу, не понимая что и почем. |
© 2000-2024 Fox Club  |