Движение. Период = Дата;

                       Движение. Номенклатура = ВыборкаДетальныеЗаписи. Номенклатура;

                       Движение. Заказ = Заказ;

                       Движение. Количество = ВыборкаДетальныеЗаписи. Количество;

                       Движение. Сумма = Окр(?(ВыборкаДетальныеЗаписи. КоличествоОстаток = 0, 0, ВыборкаДетальныеЗаписи. СуммаОстаток/ВыборкаДетальныеЗаписи. КоличествоОстаток*ВыборкаДетальныеЗаписи. Количество),2);

               КонецЕсли;

       КонецЦикла;

КонецПроцедуры

Документ: «Заказ»

ТЧ: СписокНоменклатуры (Рекв: Номенклатура, Количество)

Процедура ОбработкаПроведения(Отказ, Режим)

       Движения. ЗаказыПокупателей. Очистить();

       Движения. ЗаказыПокупателей. Записать();

       // регистр ЗаказыПокупателей Приход

       Движения. ЗаказыПокупателей. Записывать = Истина;

       Для Каждого ТекСтрокаСписокНоменклатуры Из СписокНоменклатуры Цикл

               Движение = Движения. ЗаказыПокупателей. Добавить();

НЕ нашли? Не то? Что вы ищете?

               Движение. ВидДвижения = ВидДвиженияНакопления. Приход;

               Движение. Период = Дата;

               Движение. Номенклатура = ТекСтрокаСписокНоменклатуры. Номенклатура;

               Движение. Заказ = Ссылка;

               Движение. Количество = ТекСтрокаСписокНоменклатуры. Количество;

       КонецЦикла;

КонецПроцедуры

Отчет: «АнализЗаказов»

ВЫБРАТЬ

       ЗаказыПокупателейОстатки. Номенклатура,

       ЗаказыПокупателейОстатки. Заказ,

       ЗаказыПокупателейОстатки. КоличествоОстаток КАК НеЗакуплено

ПОМЕСТИТЬ ВТ_Заказы

ИЗ

       РегистрНакопления. ЗаказыПокупателей. Остатки(&Период, ) КАК ЗаказыПокупателейОстатки

;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ

       ОстаткиНоменклатурыОстатки. Номенклатура,

       ОстаткиНоменклатурыОстатки. Заказ,

       ОстаткиНоменклатурыОстатки. КоличествоОстаток КАК НеОтгружено

ПОМЕСТИТЬ ВТ_Отгрузка

ИЗ

       РегистрНакопления. ОстаткиНоменклатуры. Остатки(&Период, ) КАК ОстаткиНоменклатурыОстатки

;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ

       ЕСТЬNULL(ВТ_Заказы. Номенклатура, ВТ_Отгрузка. Номенклатура) КАК Номенклатура,

       ЕСТЬNULL(ВТ_Заказы. Заказ, ВТ_Отгрузка. Заказ) КАК Заказ,

       ВТ_Заказы. НеЗакуплено,

       ЕСТЬNULL(ВТ_Отгрузка. НеОтгружено, 0) КАК НеОтгружено

ИЗ

       ВТ_Заказы КАК ВТ_Заказы

               ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Отгрузка КАК ВТ_Отгрузка

               ПО ВТ_Заказы. Номенклатура = ВТ_Отгрузка. Номенклатура

                       И ВТ_Заказы. Заказ = ВТ_Отгрузка. Заказ

{ХАРАКТЕРИСТИКИ

       ТИП(Документ. Заказ)

       ВИДЫХАРАКТЕРИСТИК ПланВидовХарактеристик. СвойстваОбъектов

       ПОЛЕКЛЮЧА Ссылка

       ПОЛЕИМЕНИ Наименование

       ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения

       ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений. ЗначенияХарактеристик

       ПОЛЕОБЪЕКТА Объект

       ПОЛЕВИДА Характеристика

       ПОЛЕЗНАЧЕНИЯ Значение }

ПВХ «СвойстваОбъектов»

РС «ЗначенияХарактеристик» (непериод, независим)

РН «ОстаткиНоменклатуры» (Остатки)

Рес: Номенклатура, Заказ; Изм: Количество, Сумма

РН «ЗаказыПокупателей» (Остатки)

Рес: Номенклатура, Заказ; Изм: Количество


Бухгалтерский учет

Необходимо создать документ «Операция», с помощью которого пользователь должен иметь возможность ввести проводки с произвольной корреспонденцией счетов. При решении задач следует учитывать возможность наличия проводок, сформированных с помощью данного документа.

Организация занимается сборкой и продажей персональных компьютеров. Сборка готовых компьютеров происходит из отдельных комплектующих. Учет комплектующих ведется на счете «Материалы», а готовых изделий на счете «Товары». Сборка и хранение всех материалов происходят в головном офисе, а готовая продукция развозится на разные склады, поэтому складской учет ведется только по счету «Товары».

Продажа отражается документом «Расходная накладная», причем продаваться могут как готовые компьютеры; так и отдельные комплектующие, которые указываются в одной табличной части. В документе обязательно должен быть указан склад, с которого будет произведена отгрузка готовых компьютеров.

При проведении документ «Расходная накладная» формирует проводки:

Дт «Прибыли и убытки» - Кт «Товары»

на количество и себестоимость компьютеров. Себестоимость рассчитывается как средняя по номенклатурной позиции на складе;

Дт «Прибыли и убытки» - Кт «Материалы»

на количество и себестоимость комплектующих. Себестоимость рассчитывается как средняя но номенклатурной позиции;

Дт «Покупатели» - Кт «Прибыли и убытки» на сумму в продажи.

Необходимо создать отчет о продажах товаров.

Продажи товаров за период с 01.01.2010 по 31.01.2010

Товар

Количество

Себестоимость

Сумма продажи

Монитор NEC

5

100 000

210 000

Комп. «Чайник»

2

37 500

50 000


Справочник «Номенклатура»

Рекв: ЭтоКомплектующая

Справочник «Склады»

Документ: «Приходная накладная»

Рекв: Склад

Процедура ОбработкаПроведенияБУ(Отказ, Режим)

       

       Движения. Основной. Очистить();

       Движения. Основной. Записать();

       Движения. Основной. Записывать = Истина;

       

       Запрос = Новый Запрос;

       Запрос. Текст =

       "ВЫБРАТЬ

       |        ПриходнаяНакладнаяСписокНоменклатуры. Номенклатура,

       |        СУММА(ПриходнаяНакладнаяСписокНоменклатуры. Количество) КАК Количество,

       |        СУММА(ПриходнаяНакладнаяСписокНоменклатуры. Сумма) КАК Сумма,

       |        ПриходнаяНакладнаяСписокНоменклатуры. Номенклатура. ЭтоКомплектующая КАК ЭтоКомплектующая

       |ИЗ

       |        Документ. ПриходнаяНакладная. СписокНоменклатуры КАК ПриходнаяНакладнаяСписокНоменклатуры

       |ГДЕ

       |        ПриходнаяНакладнаяСписокНоменклатуры. Ссылка = &Ссылка

       |

       |СГРУППИРОВАТЬ ПО

       |        ПриходнаяНакладнаяСписокНоменклатуры. Номенклатура,

       |        ПриходнаяНакладнаяСписокНоменклатуры. Номенклатура. ЭтоКомплектующая";

       

       Запрос. УстановитьПараметр("Ссылка", Ссылка);

       РезультатЗапроса = Запрос. Выполнить();

       

       ВыборкаДетальныеЗаписи = РезультатЗапроса. Выбрать();

       

       Пока ВыборкаДетальныеЗаписи. Следующий() Цикл

               Если ВыборкаДетальныеЗаписи. ЭтоКомплектующая Тогда

                       Движение = Движения. Основной. Добавить();

                       Движение. СчетДт = ПланыСчетов. Управленческий. Материалы;

                       Движение. СчетКт = ПланыСчетов. Управленческий. Поставщики;

                       Движение. Период = Дата;

                       Движение. КоличествоДт = ВыборкаДетальныеЗаписи. Количество;

                       Движение. Сумма = ВыборкаДетальныеЗаписи. Сумма;

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11