Рес: Номенклатура, партия; Изм: количество, сумма
РН «Продажи» (обороты)
Рес: Номенклатура; Изм: количество, сумма
Бухгалтерский учет
Необходимо создать документ «Операция», с помощью которого пользователь должен иметь возможность ввести проводки с произвольной корреспонденцией счетов. При решении задачи следует учесть возможность наличия проводок, сформированных с помощью данного документа.
Необходимо реализовать учет дополнительных затрат, связанных с рекламой продаваемого товара.
Факт передачи товара со склада (отгрузки) покупателю регистрируется документом «Расходная накладная». Данный документ формирует следующие проводки:
Дт «Прибыли и убытки» - Кт «Товары» на сумму себестоимости.
Себестоимость определяется как средняя для каждой номенклатурной позиции по всей компании.
Дт «Покупатели» - Кт «Прибыли и убытки» на сумму в продажных ценах;
Кроме этого в документе «Расходная накладная» заполняется дополнительный реквизит «Проект», т. е. все продажи осуществляются в разрезе проектов (пустым данный реквизит быть не может).
Дополнительные затраты на продажу вводятся в систему с помощью документа «Затраты». В табличной части этого документа указывается проект, и сумма, затраченная на затраты в рамках данного проекта. Документы вводятся по мере поступления затрат в течение дня. Считается, что все затраты должны быть отнесены в счет продаж текущего дня. Контролировать наличие продаж по данному проекту при проведении документа «Затраты» не нужно.
При распределении по товарам затраты распределяются пропорционально их проданному количеству.
При проведении документ «Затраты» формируют следующие проводки:
Дт «Прибыли и убытки» - Кт «Общехозяйственные затраты» на сумму затрат
Необходимо построить отчет о продажах с учетом затрат.
Продажи за период с 01.01.2010 по 31.01.2010
Проект | Товар | Кол-во | Себест-сть | Сумма продажи | Сумма затрат |
проект №1 | |||||
Карандаши | 100 | 100 | 300 | 75 | |
Авторучки | 500 | 5 000 | 10 000 | 150 | |
проект №2 | 3 | 18 | |||
Карандаши | 50 | 60 | 200 | 60 |
*****************************************************************************************
Справочник «Номенклатура»
Справочник «Проекты»
Документ: «Приходная накладная»
Процедура ОбработкаПроведения(Отказ, Режим)
Движения. Основной. Очистить();
Движения. Основной. Записать();
// регистр Основной
Движения. Основной. Записывать = Истина;
Для Каждого ТекСтрокаСписокНоменклатуры Из СписокНоменклатуры Цикл
Если Не ТекСтрокаСписокНоменклатуры. Номенклатура. ЭтоУслуга Тогда
Движение = Движения. Основной. Добавить();
Движение. СчетДт = ПланыСчетов. Управленческий. Товары;
Движение. СчетКт = ПланыСчетов. Управленческий. Поставщики;
Движение. Период = Дата;
Движение. КоличествоДт = ТекСтрокаСписокНоменклатуры. Количество;
Движение. Сумма = ТекСтрокаСписокНоменклатуры. Сумма;
Движение. СубконтоДт[ПланыВидовХарактеристик. ВидыСубконто. Номенклатура] = ТекСтрокаСписокНоменклатуры. Номенклатура;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Документ: «Расходная накладная»
Реквизит: Проект
Процедура ОбработкаПроведенияБух(Отказ, Режим)
Блокировка = Новый БлокировкаДанных;
ЭБ = Блокировка. Добавить("РегистрБухгалтерии. Основной");
ЭБ. Режим = РежимБлокировкиДанных. Исключительный;
ЭБ. УстановитьЗначение("Счет",ПланыСчетов. Управленческий. Товары);
ЭБ. ИсточникДанных = СписокНоменклатуры;
ЭБ. ИспользоватьИзИсточникаДанных(ПланыВидовХарактеристик. ВидыСубконто. Номенклатура,"Номенклатура");
Блокировка. Заблокировать();
Движения. Основной. Очистить();
Движения. Основной. Записать();
Движения. Основной. Записывать = Истина;
Запрос = Новый Запрос;
Запрос. Текст =
"ВЫБРАТЬ
| РасходнаяНакладнаяСписокНоменклатуры. Номенклатура,
| СУММА(РасходнаяНакладнаяСписокНоменклатуры. Количество) КАК Количество,
| СУММА(РасходнаяНакладнаяСписокНоменклатуры. Сумма) КАК Сумма
|ПОМЕСТИТЬ ВТ_ТЧ
|ИЗ
| Документ. РасходнаяНакладная. СписокНоменклатуры КАК РасходнаяНакладнаяСписокНоменклатуры
|ГДЕ
| РасходнаяНакладнаяСписокНоменклатуры. Ссылка = &Ссылка
| И НЕ РасходнаяНакладнаяСписокНоменклатуры. Номенклатура. ЭтоУслуга
|
|СГРУППИРОВАТЬ ПО
| РасходнаяНакладнаяСписокНоменклатуры. Номенклатура
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ОсновнойОстатки. Субконто1 КАК Номенклатура,
| ОсновнойОстатки. КоличествоОстаток,
| ОсновнойОстатки. СуммаОстаток
|ПОМЕСТИТЬ ВТ_Остатки
|ИЗ
| РегистрБухгалтерии. Основной. Остатки(
| &МоментВремени,
| Счет = ЗНАЧЕНИЕ(ПланСчетов. Управленческий. Товары),
| ,
| Субконто1 В
| (ВЫБРАТЬ
| ВТ_ТЧ. Номенклатура
| ИЗ
| ВТ_ТЧ КАК ВТ_ТЧ)) КАК ОсновнойОстатки
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВТ_ТЧ. Номенклатура,
| ВТ_ТЧ. Количество,
| ВТ_ТЧ. Сумма,
| ЕСТЬNULL(ВТ_Остатки. КоличествоОстаток, 0) КАК КоличествоОстаток,
| ЕСТЬNULL(ВТ_Остатки. СуммаОстаток, 0) КАК СуммаОстаток
|ИЗ
| ВТ_ТЧ КАК ВТ_ТЧ
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Остатки КАК ВТ_Остатки
| ПО ВТ_ТЧ. Номенклатура = ВТ_Остатки. Номенклатура";
Запрос. УстановитьПараметр("МоментВремени", МоментВремени());
Запрос. УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос. Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса. Выбрать();
Пока ВыборкаДетальныеЗаписи. Следующий() Цикл
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 |


