Тренинг по подготовке к аттестации.
Второй поток – Задача 11 “Плановая себестоимость”
Приветствуем!
Сегодня публикуем задания двух задач по второй части сборника. Первая задача совпала с моим выбором, это задача “Плановая себестоимость“.
К сожалению, у Вас недостаточно прав для просмотра этой записи. Если Вы еще не залогинены на сайте — залогиньтесь.
Если не активировали токен — посмотрите видео-инструкцию (видео N5)
Если вы залогинены, у Вас активирован токен доступа, но вы все равно видите эту запись — напишите нам на e-mail поддержки.
Здравствуйте. Задание решил следующим образом. Создал регистр сведений ПлановаяСебестоимость (измерение номенклатура, ресурс себестоимость) Приходная формирует проводки на количество и сумму документа. Расходная накладная формирует проводки на количество из документа и сумму из регистра “ПлановаяСебестоимость” . Т.к. в задании есть условие “также следует считать, что весь купленный товар будет продан в этом же месяце”, то в конце месяца при вводе документа “Корректировка себестоимости” получаю остатки из виртуальной таблицы “Остатки ” количество будет нулевым (т.к весь купленный товар будет продан) а в ресурсе сумма и будет разница между Плановой себестоимостью и Реальной себестоимостью. В зависимости от положительной или отрицательной суммы формируем проводки. Но данное решение кажется мне слишком простым.
А как формируете отчет? Как делите там информацию о плановой и фактической стоимостью?
Отчет формирую следующим образом. В запросе из виртуальной таблицы ОборотыДтКт (параметры виртуальной таблицы Дт «Прибыли и убытки» – Kт «Товары») получаю данные расхода: количествоКт и суммуКт плановой себестоимости. Так же из виртуальной таблицы ОборотыДтКт (параметры виртуальной таблицы Дт «Товары» – Kт «Поставщики») получаю данные прихода: количествоДт и суммуДт. Соединяю эти таблицы по номенклатуре. А разница расчитывается по формуле:
КоличествоКт*(СуммаКт/количествоКт-СуммаДт/КоличествоДт)
Оборот между Товары-Поставщики – это поступление товара, а никак не продажа!
Вам нужно делить списанную себестоимость на план/факт.
Выручку как берете?
У меня так и написано: ОборотыДтКт (параметры виртуальной таблицы Дт «Товары» – Kт «Поставщики») получаю данные прихода. В отчете же не нужна выручка. Или я что то не так понимаю? Для чего мне брать выручку?
Про выручку проморгал :) Извините, на днях решал другую задачу там была.
Но хотелось бы еще раз обратить внимание на то что Дт Товары – Кт Поставщики – эта проводка к продаже не имеет никакого отношения.
Наверное я что то не понимаю можете посмотреть запрос которым я строю отчет. Правильно ли так получать данные <сode>ВЫБРАТЬ
УправленческийОборотыДтКт.СубконтоКт1 КАК Номенклатура,
СУММА(УправленческийОборотыДтКт.КоличествоОборотКт) КАК Количество,
СУММА(УправленческийОборотыДтКт.СуммаОборот) КАК ПлановаяСебестоимость
ПОМЕСТИТЬ ВТ_Расход
ИЗ
РегистрБухгалтерии.Управленческий.ОборотыДтКт(, , Регистратор, СчетДт = &Счет_ПрибыльУбытки, , СчетКт = &Счет_Товары, , ) КАК УправленческийОборотыДтКт
ГДЕ
НЕ УправленческийОборотыДтКт.Регистратор ССЫЛКА Документ.КорректировкаСебестоимости
СГРУППИРОВАТЬ ПО
УправленческийОборотыДтКт.СубконтоКт1
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
УправленческийОборотыДтКт.СубконтоДт1 КАК Номенклатура,
СУММА(УправленческийОборотыДтКт.СуммаОборот) КАК ФактическаяСебестоймость,
СУММА(УправленческийОборотыДтКт.КоличествоОборотДт) КАК КоличествоПриход
ПОМЕСТИТЬ ВТ_Приход
ИЗ
РегистрБухгалтерии.Управленческий.ОборотыДтКт(, , , СчетДт = &Счет_Товары, , СчетКт = &Счет_Поставщики, , ) КАК УправленческийОборотыДтКт
СГРУППИРОВАТЬ ПО
УправленческийОборотыДтКт.СубконтоДт1
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТ_Расход.Номенклатура,
ВТ_Расход.Количество,
ВТ_Расход.ПлановаяСебестоимость,
ВТ_Приход.ФактическаяСебестоймость,
ВТ_Приход.ФактическаяСебестоймость – ВТ_Расход.ПлановаяСебестоимость КАК Поле1
ИЗ
ВТ_Расход КАК ВТ_Расход
ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Приход КАК ВТ_Приход
ПО ВТ_Расход.Номенклатура = ВТ_Приход.Номенклатура </сode>
Да, вроде я уже свою точку зрения сказал. Нет не правильно. Поступление товаров к продаже никак не относится. К продаже относится списание товаров в счет ПрибылиИУбытки и все. Только этот оборот.
Можете подсказать где у меня ошибка?
При проведении корректировки минусовой остаток не закрывается
Мой код
Движения.Хозрасчетный.Записывать = Истина;
Движения.Хозрасчетный.Очистить();
Запрос = Новый Запрос;
Запрос.Текст =
“ВЫБРАТЬ
| ХозрасчетныйОстатки.Субконто1,
| ХозрасчетныйОстатки.Субконто2,
| ХозрасчетныйОстатки.Валюта,
| ХозрасчетныйОстатки.ВалСуммаОстаток * ЕСТЬNULL(КурсыВалютСрезПоследних.Курс, 1) – ХозрасчетныйОстатки.СуммаОстаток КАК Отклонение
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(&МоментВремени, Счет = &Счет, &МассивСубконто, ) КАК ХозрасчетныйОстатки
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних(&МоментВремени, ) КАК КурсыВалютСрезПоследних
| ПО ХозрасчетныйОстатки.Валюта = КурсыВалютСрезПоследних.Валюта
|ГДЕ
| (ХозрасчетныйОстатки.СуммаОстаток – ХозрасчетныйОстатки.ВалСуммаОстаток * ЕСТЬNULL(КурсыВалютСрезПоследних.Курс, 1) > 0.01
| ИЛИ ХозрасчетныйОстатки.СуммаОстаток – ХозрасчетныйОстатки.ВалСуммаОстаток * ЕСТЬNULL(КурсыВалютСрезПоследних.Курс, 1) < -0.01)”;
Массив = Новый Массив(2);
Массив[0] = ПланыВидовХарактеристик.ВидыСубконто.Контрагенты;
Массив[1] = ПланыВидовХарактеристик.ВидыСубконто.Договоры;
Запрос.УстановитьПараметр(“МассивСубконто”, Массив);
Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда
Движения.Хозрасчетный.Записать();
КонецЕсли;
Запрос.УстановитьПараметр(“МоментВремени”, МоментВремени());
Запрос.УстановитьПараметр(“Счет”, ПланыСчетов.Хозрасчетный.Покупатели);
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Движение = Движения.Хозрасчетный.Добавить();
Движение.Период = Дата;
Если Выборка.Отклонение > 0 Тогда
Движение.СчетДт = ПланыСчетов.Хозрасчетный.Покупатели;
Движение.СчетКт = ПланыСчетов.Хозрасчетный.ПрибылиИУбытки;
Движение.ВалютаДт = Выборка.Валюта;
Субконто = Движение.СубконтоДт;
Иначе
Движение.СчетКт = ПланыСчетов.Хозрасчетный.Покупатели;
Движение.СчетДт = ПланыСчетов.Хозрасчетный.ПрибылиИУбытки;
Движение.ВалютаКт = Выборка.Валюта;
Субконто = Движение.СубконтоКт;
КонецЕсли;
Субконто[ПланыВидовХарактеристик.ВидыСубконто.Контрагенты] = Выборка.Субконто1;
Субконто[ПланыВидовХарактеристик.ВидыСубконто.Договоры] = Выборка.Субконто2;
Движение.Сумма = Макс(Выборка.Отклонение, -Выборка.Отклонение);
КонецЦикла;
Пришлите базу на pavel@spec8.ru и копию на pavel@chistov.spb.ru, так по коду, вроде, все ОК.
я отправил Вам на почту базу
Получил. в течении 26го июля посмотрю и отвечу.
У Вас в запросе анализируются обороты (еще и корреспондирующие), что не есть хорошо.
Реальная себестоимость товара это остаток на начало месяца + поступление за месяц (это остаток и оборот Дт по счету Товары)
То что списали (плановая стоимость) – это оборот Кт по счету Товары.
Корреспондирующего оборота тут нет.
Формула по корректировке себестоимости такая:
(КоличествоПроданного / (КоличествоОстаток+КоличествоОборотДт) * (СуммаОстаток+ СуммаОборотДт) ) – СуммаОборотКт
Где Остаток – это остаток на начало месяца. Все данные получаем по счету Товары.
Как то так…