:: Игры Разума
Сальдо по кол-ву = 0, а сальдо по сумме не = 0
LUCIAN

Сообщений: 343
Откуда: Лида Беларусь
Дата регистрации: 25.03.2008
Для учета товаров на складе используется таблица движения и таблица остатков.
Сумма не хранится в этих таблицах ,а вычисляется на основании цены и кол-ва.
Для однозначного определения товара в этих таблицах используется код товара и
номер цены. Формат: кол_во N(15,3),цена N(16,8)
Из таблицы движения видно ,что товар поступил на склад 07.05.2009
в кол-ве 19,500 по цене 11447,00 далее товар расходовался
при этом этом соблюдается такой баланс :
(остаток*цена) в таблице остатков =SUM(кол_во*цена) в таблице движения
Т.е. при таком ведении учета ,если остаток по кол-ву = 0,то и остаток в сумме будет
равен 0 (с точностью до копеек)

В таблице движения товаров
дата_________кол_во__ цена___________Сумма
07.05.2009 19,500 11447,00000000 223216,5
19.05.2009 -0,611 11447,00000000 -6994,12
26.05.2009 -1,833 11446,99984118 -20982,35
11.06.2009 -1,222 11446,99988274 -13988,23
15.06.2009 -0,611 11447,00012631 -6994,12
13.07.2009 -0,611 11446,99993431 -6994,12
15.07.2009 -0,611 11446,99972625 -6994,12
15.07.2009 -0,611 11446,99950004 -6994,12
24.07.2009 -0,611 11446,99925317 -6994,12
05.08.2009 -0,611 11446,99922125 -6994,12
13.08.2009 -1,222 11446,99898271 -13988,23
Итого 10,946 125298,85

В таблице остатков
Остаток Цена Сумма
10,946 11446,99890371 125298,85

В предлагаемой новой программе не равные 0 суммы по нулевым количественным
остаткам предлагают заносить на определённый бухг. счёт для списания.
Вопрос: какой алгоритм формирования цены в старой программе(я не знаю).



Исправлено 2 раз(а). Последнее : LUCIAN, 25.08.09 16:29
Ratings: 0 negative/0 positive
Re: Сальдо по кол-ву = 0, а сальдо по сумме не = 0
ry

Сообщений: 2113
Дата регистрации: 24.09.2007
Для каждой строки цена = текущее сальдо суммы разделить на текущее сальдо количества:
1 строка - учетная цена прихода
2 строка - 223216,5/19,5=11447
3 строка - (223216,5-6994,12)/(19,5-0,611)=11446,99984118 (округление до 8 знаков)
4 строка - (223216,5-6994,12-20982,35)/(19,5-0,611-1,833)=11446,99988274 (округление до 8 знаков)
...
Ratings: 0 negative/0 positive
Re: Сальдо по кол-ву = 0, а сальдо по сумме не = 0
LUCIAN

Сообщений: 343
Откуда: Лида Беларусь
Дата регистрации: 25.03.2008
ry
Для каждой строки цена = текущее сальдо суммы разделить на текущее сальдо количества:
1 строка - учетная цена прихода
2 строка - 223216,5/19,5=11447
3 строка - (223216,5-6994,12)/(19,5-0,611)=11446,99984118 (округление до 8 знаков)
4 строка - (223216,5-6994,12-20982,35)/(19,5-0,611-1,833)=11446,99988274 (округление до 8 знаков)
...
Спасибо,попробую этот алгоритм реализовать в своей программе.
Ratings: 0 negative/0 positive
Re: Сальдо по кол-ву = 0, а сальдо по сумме не = 0
LUCIAN

Сообщений: 343
Откуда: Лида Беларусь
Дата регистрации: 25.03.2008
Обобщая получается такой алгоритм:

цена в таблице остатков =ROUND( SUM(ROUND(цена*кол_во,2)) / SUM(кол_во) , 8 ) в таблице движения



цена в таблице движения = IIF(кол_во>0 , цена прихода , цена в таблице остатков)
Ratings: 0 negative/0 positive
Re: Сальдо по кол-ву = 0, а сальдо по сумме не = 0
Mitchman

Сообщений: 9978
Откуда: Николаев
Дата регистрации: 24.05.2002
LUCIAN
Обобщая получается такой алгоритм:
цена в таблице остатков =ROUND( SUM(ROUND(цена*кол_во,2)) / SUM(кол_во) , 8 ) в таблице движения



цена в таблице движения = IIF(кол_во>0 , цена прихода , цена в таблице остатков)

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

понятие цены в бухгалтерии это вспомогательная информация - не подвергающаяся учету как таковому


------------------
-
«свидомые украинцы озабочены не столько созданием украинской культуры, сколько уничтожением русской»
-
Олесь Бузина
Ratings: 0 negative/0 positive
Re: Сальдо по кол-ву = 0, а сальдо по сумме не = 0
Prudivus
Автор

Сообщений: 4283
Откуда: Кишинев
Дата регистрации: 14.12.2006
Mitchman
...бухгалтерия это точная наука...
шютка?
Ratings: 0 negative/0 positive
Re: Сальдо по кол-ву = 0, а сальдо по сумме не = 0
Prudivus
Автор

Сообщений: 4283
Откуда: Кишинев
Дата регистрации: 14.12.2006
LUCIAN
В предлагаемой новой программе не равные 0 суммы по нулевым количественным
остаткам предлагают заносить на определённый бухг. счёт для списания.
Вопрос: какой алгоритм формирования цены в старой программе(я не знаю).
Я бы предложил не только в этом случае сбрасывать отклонения от нормальной цены на специальный счет, а также во всех случаях когда остатки не соответствуют цене. Цена с 8 знаками после запятой - это не нормально, имхо. В учете наименьшей единицей суммы является копейка. Когда происходит расчет суммы мы умножаем количество на цену, результат округляется до копейки. В итоге в общем случае возникает ошибка округления (то ли количество было дробным, то ли цена имеет более двух знаков после запятой). Эта ошибка может накапливаться и её в конце концов приходится списывать на счет отклонений. Если этого не делать, то могут возникать самые неожиданные и неприятные казусы. Например, если мы вычисляем себестоимость динамически, не придерживаясь некоторой назначеннной цены, и остаток близок к нулю, а сумма, хотя и небольшая, но есть, то может возникнуть ситуация когда цена в итоге будет совершенно не соответствовать реальности. В некоторых случаях цена может даже стать отрицательной! Вот чтобы этого не происходило и нужно учитывать отклонения на отдельном счете. Что потом делать с этими отклонениями - не принципиально. По идее эти суммы должны болтаться где-то около нуля (вероятность отклонения в положительную или орицательную сторону одинакова).
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 3 (Гостей: 3)

© 2000-2024 Fox Club 
Яндекс.Метрика