пользователям программных продуктов Scala 5.1, iScala 2.1, iScala 2.2, iScala 2.3, iScala 3.0, iScala 3.1, iScala 3.2, iScala 3.3 (и так далее)

Что такое проводки 07 типа модуля «Управление Запасами»?

Эта статья в свое время была написана мною для закрытого раздела сайта scala.ru. Файл, содержимое которого я привожу ниже, датирован 4 октября 2000 года. Антиквариат, можно сказать. 🙂

Проводки типа 07 модуля Управление Запасами

Что такое проводки 07 типа модуля «Управление Запасами» и в каких случаях они создаются?

Проводки 07 типа создаются программой автоматически для корректировки себестоимости запаса. Рассмотрим это на примере:

На складе запаса нет.
Вы закупили запас в количестве 100 штук по цене 100 рублей за штуку.
Через некоторое время получили счёт за транспортировку вышеуказанных запасов от транспортной компании на 500 рублей.
Затем выяснилось, что поступивший на ваш склад запас оказался бракованным и Вы возвращаете запас обратно поставщику по той же цене, по которой Вы его купили (так указано в договоре).
В результате на складе запаса снова нет.
Что при этом получается, как следовало бы действовать и какие могли бы быть созданы проводки?
Рассмотрим наш сценарий более подробно:

Приход 100 штук по 100 рублей, всего на сумму 10000 рублей. На складе в результате этого оказывается 100 единиц запаса по 100 рублей на сумму 10000 рублей.
Затраты 500 рублей, распределяемые на полученные запасы. Итого на складе 100 штук запаса по цене: (10000 рублей + 500 рублей)/100 штук = 105 рублей, всего на сумму 10500 рублей.
Возврат запаса поставщику: 100 единиц запаса по 100 рублей, всего на сумму 10000 рублей. В результате на складе остается 0 единиц запаса на сумму 500 рублей. Правильно ли это? Конечно нет! Мы должны списать эту сумму (в данном примере я не рассматриваю ни НДС, ни куда надо списывать):
Списание затрат на транспортировку: 500 рублей.
В результате на складе остается 0 единиц запаса на сумму 0 рублей.
Вот примерно, как это будет выглядеть в Scala (разумеется, я чуть-чуть подредактировал этот и все нижеследующие отчеты, чтобы они поместились на странице):

Код валюты: РУБ 
 КОМПАНИЯ 01 Фин.Год 00============================================================/Scala-Client/SC0061/5 
КОД ЗАПАСОВ--------- ОПИСАНИЕ-----------------          ----ТЕКУЩАЯ ОПЕРАЦИЯ--- -САЛЬДО (НАКОПИТ. ИТОГ)- 
ДАТА-- СКЛАД  ТП ТЗ ПАРТИЯ-----  ЗАКАЗ-----  ССЫЛКА       СУММА КОЛ-ВО  ЦЕНА/ЕД КОЛ-ВО  СУММА   ЦЕНА/ЕД 
======================================================================================================== 
070707070707070707   Запас для демонстрации 
                     аналит. проводок 07 типа
 031000 45АВО  00    000000000225 0000001063 1000000001  10000.00   100   100.00  100  10000.00  100.0000 
 031000 45АВО  03 02 000000000225 0000001063 1000000007    500.00         500.00  100  10500.00  105.0000 
 031000 45АВО  07    000000000225 0000001064 1000000001    500.00-        500.00  100  10000.00  100.0000 
 031000 45АВО  00    000000000225 0000001064 1000000001  10000.00-  100-  100.00    0      0.00    0.0000 
                                                                                  ---  --------  -------- 
                                                        ПРОМЕЖУТ. ИТОГ :           0      0.00    0.0000

Обратите внимание: Scala создает проводку 07 типа (списывает затраты) непосредственно перед возвратом запаса поставщику, приводя его стоимость в соответствие с той ценой, по которой запас будет возвращен поставщику (3-я строка проводок, последний столбец).

Теперь рассмотрим другой сценарий:

На складе запаса нет.
Приход 100 штук по 10 долларов США, всего на сумму 1000 долларов США, дата 23.09.2000, курс: 1 USD = 27.79 рублей.
Затем выяснилось, что поступивший на ваш склад запас оказался бракованным и Вы возвращаете запас обратно поставщику по той же цене, по которой Вы его купили, дата 26.09.2000, курс: 1 USD = 27.85
В результате на складе запаса снова нет
Что при этом получается, как следовало бы действовать и какие могли бы быть созданы проводки?

Рассмотрим наш сценарий более подробно:

Приход 100 штук по 10 USD (277.9 рубля), всего на сумму 1000 USD (27790 рублей). На складе в результате этого оказывается 100 единиц запаса по 277.9 рубля на сумму 27790 рублей (одновременно это 1000 USD).
Возврат запаса поставщику: 100 единиц запаса по 10 USD (278.5 рубля), всего на сумму 1000 USD (27850 рублей). В результате на складе остается 0 единиц запаса на сумму 0 USD (правильно) и -60 рублей. Правильно ли это? Конечно нет! Мы должны списать эту сумму:
Списание разницы: -60 рублей.
В результате на складе остается 0 единиц запаса на сумму 0 USD и 0 рублей. Заметьте, мы списываем только рублевую сумму, проводку по USD мы делать не должны.
Вот как это будет выглядеть в Scala

Код валюты: РУБ 
 КОМПАНИЯ 01 Фин.Год 00============================================================/Scala-Client/SC0061/5 
КОД ЗАПАСОВ--------- ОПИСАНИЕ-----------------          ----ТЕКУЩАЯ ОПЕРАЦИЯ--- -САЛЬДО (НАКОПИТ. ИТОГ)- 
ДАТА-- СКЛАД  ТП ТЗ ПАРТИЯ-----  ЗАКАЗ-----  ССЫЛКА       СУММА КОЛ-ВО  ЦЕНА/ЕД КОЛ-ВО  СУММА   ЦЕНА/ЕД 
======================================================================================================== 
070707070707070707   Запас для демонстрации 
                     аналит. проводок 07 типа 
 230900 123456 00    000000000226 0000001065 1000000001  27790.00   100   277.90  100  27790.00  277.9000 
 260900 123456 07    000000000226 0000001066 1000000001     60.00          60.00- 100  27850.00  278.5000 
 260900 123456 00    000000000226 0000001066 1000000001  27850.00-  100-  278.50    0      0.00    0.0000 
                                                                                  ---  --------  -------- 
                                                        ПРОМЕЖУТ. ИТОГ :           0      0.00    0.0000

То же самое в валюте:

КОМПАНИЯ 01 Фин.Год 00============================================================/Scala-Client/SC0061/5 
КОД ЗАПАСОВ--------- ОПИСАНИЕ-----------------          ----ТЕКУЩАЯ ОПЕРАЦИЯ--- -САЛЬДО (НАКОПИТ. ИТОГ)- 
ДАТА-- СКЛАД  ТП ТЗ ПАРТИЯ-----  ЗАКАЗ-----  ССЫЛКА       СУММА КОЛ-ВО  ЦЕНА/ЕД КОЛ-ВО  СУММА   ЦЕНА/ЕД 
======================================================================================================== 
070707070707070707   Запас для демонстрации 
                     аналит. проводок 07 типа 
 230900 123456 00    000000000226 0000001065 1000000001   1000.00   100    10.00  100   1000.00   10.0000 
 260900 123456 07    000000000226 0000001066 1000000001      0.00-          0.00  100   1000.00   10.0000 
 260900 123456 00    000000000226 0000001066 1000000001   1000.00-  100-   10.00    0      0.00    0.0000 
                                                                                  ---  --------  -------- 
                                                        ПРОМЕЖУТ. ИТОГ :           0      0.00    0.0000

Здесь, как и в предыдущем сценарии Scala создает проводку 07 типа (списывает разницу) непосредственно перед возвратом запаса поставщику, приводя его стоимость в соответствие с той ценой, по которой запас будет возвращен поставщику (2-я строка проводок, последний столбец), но так как в валюте количество и стоимость находящегося на складе запаса соответствует количеству и стоимости запаса, возвращаемого поставщику, программа не корректирует валютную стоимость, т.е. сумма проводки типа 07 равна нулю, однако проводка все равно выводится в отчете. Это происходит потому, что программа создает не две отдельные проводки для локальной валюты и валюты консолидации (так они правильно называются), а одну проводку с двумя разными суммами: одна сумма для локальной валюты, другая – для валюты консолидации. В нашем случае это проводка 07 типа с суммой для локальной валюты (рублей) равной 60 и с суммой для валюты консолидации (USD) равной нулю.

Таким образом мы с Вами и получили ответ на вопрос в заголовке этой страницы.

Я буду рад, если Вы оставите здесь свои отзывы или вопросы.

С уважением,

Алексей Васильев

Все материалы раздела iScala «для чайников»: