V82.ОбщиеМодули.ПроцедурыРасчетаСебестоимостиВыпуска.РаспределитьПрямыеПроизводственныеЗатратыПоБазеРаспределения C# (CSharp) Method

РаспределитьПрямыеПроизводственныеЗатратыПоБазеРаспределения() public method

        public void РаспределитьПрямыеПроизводственныеЗатратыПоБазеРаспределения(/*
	СтруктураШапкиДокумента,
	РезультатЗапросаПоЗатратам,
	РезультатЗапросаПоСпособамРаспределенияЗатрат,
	РезультатЗапросаБазаРаспределения,
	НаборЗаписейЗатратыНаВыпуск,
	НаборЗаписейЗатратыНаВыпускНаработка
	*/)
        {
            /*// Получим построитель запроса по базе распределения.
            */
            /*ПостроительЗапроса = ПолучитьПостроительЗапросаПоБазеРаспределения(
            СтруктураШапкиДокумента,
            РезультатЗапросаБазаРаспределения
            );*/
            //ВыборкаПоСпособамРаспределенияЗатрат = РезультатЗапросаПоСпособамРаспределенияЗатрат.Выбрать();
            //МассивКоэф = Новый Массив;
            //ХарактерЗатрат = Перечисления.ХарактерЗатрат.ПроизводственныеРасходы;
            //ВыборкаПоЗатратам = РезультатЗапросаПоЗатратам.Выбрать();
            while(true/*ВыборкаПоЗатратам.Следующий()*/)
            {
                /*// Определим способ и характер распределения затрат.
            */
                //СпособРаспределения = Неопределено;
                //ХарактерРаспределенияЗатрат = Перечисления.ХарактерРаспределенияЗатрат.ПустаяСсылка();
                //РаспределятьНаПодчиненныеПодразделения = Ложь;
                /*// ОпределятьПоХарактеруЗатрат
            */
                /*// ПроверятьУказаниеСпособаРаспределения
            */
                /*СпособРаспределения,
            ХарактерРаспределенияЗатрат,
            РаспределятьНаПодчиненныеПодразделения
            );*/
                if(true/*Не РаспределятьЗатраты*/)
                {
                }
                /*// Отберем строки базы распределения.
            */
                /*// НомерПередела
            */
                /*// ЕНВД
            */
                /*// ОпределятьПоЕНВД
            */
                /*// ОпределятьПоСчетуУчету
            */
                /*// ОтборПоПродукции
            */
                /*ПостроительЗапроса
            );*/
                if(true/*УстановленНовыйОтбор*/)
                {
                    //ПостроительЗапроса.Выполнить();
                }
                //РезультатЗапросаБаза = ПостроительЗапроса.Результат;
                //ВсегоБазаРаспределения = 0;
                //ВсегоБазаРаспределенияНЗП = 0;
                //МассивКоэф.Очистить();
                //ВыборкаБаза = РезультатЗапросаБаза.Выбрать();
                while(true/*ВыборкаБаза.Следующий()*/)
                {
                    //МассивКоэф.Добавить(ВыборкаБаза.База);
                    //ВсегоБазаРаспределения = ВсегоБазаРаспределения + ВыборкаБаза.База;
                    //ВсегоБазаРаспределенияНЗП = ВсегоБазаРаспределенияНЗП + ВыборкаБаза.БазаОстатокНЗП;
                }
                if(true/*ВсегоБазаРаспределения = 0*/)
                {
                    /*ОбщегоНазначения.Сообщение("Сумма базы коэф. по " + СпособРаспределения + " равна 0, для:
                |Подразделение: " + ВыборкаПоЗатратам.Подразделение + "
                |Статья затрат: " + ВыборкаПоЗатратам.СтатьяЗатрат + "
                |Заказ: " + ВыборкаПоЗатратам.Заказ + "
                |Номенклатурная группа: " + ВыборкаПоЗатратам.НоменклатурнаяГруппа, СтатусСообщения.Важное);*/
                }
                //КоличествоОстаток = ВыборкаПоЗатратам.КоличествоОстаток;
                //СуммаОстаток = ВыборкаПоЗатратам.СуммаОстаток;
                if(true/*СтруктураШапкиДокумента.ОтражатьВНалоговомУчете*/)
                {
                    //ПостояннаяРазницаОстаток = ВыборкаПоЗатратам.ПостояннаяРазницаОстаток;
                    //ВременнаяРазницаОстаток = ВыборкаПоЗатратам.ВременнаяРазницаОстаток;
                    /*СуммаОстаток = СуммаОстаток + ПостояннаяРазницаОстаток
                + ВременнаяРазницаОстаток;*/
                }
                /*// Пропускаем строки с пустой суммой.
            */
                if(true/*КоличествоОстаток = 0
               И ВыборкаПоЗатратам.СуммаОстаток = 0
               И ПостояннаяРазницаОстаток = 0
               И ВременнаяРазницаОстаток = 0*/)
                {
                }
                if(true/*(ВсегоБазаРаспределения + ВсегоБазаРаспределенияНЗП) <> 0*/)
                {
                    //КоэффициентРаспределения = ВсегоБазаРаспределения / (ВсегоБазаРаспределения + ВсегоБазаРаспределенияНЗП);
                }
                //КоэффициентРаспределения = ?(КоэффициентРаспределения < 0, - КоэффициентРаспределения, КоэффициентРаспределения);
                if(true/*ВыборкаПоЗатратам.ВидЗатрат = Перечисления.ВидыЗатрат.Материальные*/)
                {
                    if(true/*ВыборкаПоЗатратам.КоличествоИнвентаризация <> 0 И КоличествоОстаток <> 0*/)
                    {
                        //СуммаИнвентаризация = Окр(ВыборкаПоЗатратам.КоличествоИнвентаризация * СуммаОстаток / КоличествоОстаток, 2, 1);
                        //КоличествоОстаток = КоличествоОстаток - ВыборкаПоЗатратам.КоличествоИнвентаризация;
                        //СуммаОстаток = СуммаОстаток - СуммаИнвентаризация;
                    }
                }
                //КоличествоОстаток = Окр(КоличествоОстаток * КоэффициентРаспределения, 3, 1);
                //СуммаОстаток = Окр(СуммаОстаток * КоэффициентРаспределения, 2, 1);
                /*// Материальные затраты распределяются по количеству, поэтому нулевые остатки пропускаем.
            */
                if(true/*ВыборкаПоЗатратам.ВидЗатрат = Перечисления.ВидыЗатрат.Материальные
               И КоличествоОстаток = 0*/)
                {
                }
                //МассивКоличество = ОбщегоНазначения.РаспределитьПропорционально(КоличествоОстаток, МассивКоэф, 3);
                //МассивСумма      = ОбщегоНазначения.РаспределитьПропорционально(СуммаОстаток, МассивКоэф, 2);
                if(true/*СтруктураШапкиДокумента.ОтражатьВНалоговомУчете*/)
                {
                    //СуммаОстатокНУ = СуммаОстаток - ПостояннаяРазницаОстаток - ВременнаяРазницаОстаток;
                    //ПостояннаяРазницаОстаток = Окр(ПостояннаяРазницаОстаток * КоэффициентРаспределения, 2, 1);
                    //ВременнаяРазницаОстаток = Окр(ВременнаяРазницаОстаток * КоэффициентРаспределения, 2, 1);
                    //СуммаОстатокНУ = Окр(СуммаОстатокНУ * КоэффициентРаспределения, 2, 1);
                    //МассивПостояннаяРазница = ОбщегоНазначения.РаспределитьПропорционально(ПостояннаяРазницаОстаток, МассивКоэф, 2);
                    //МассивВременнаяРазница  = ОбщегоНазначения.РаспределитьПропорционально(ВременнаяРазницаОстаток, МассивКоэф, 2);
                    //МассивСуммаНУ           = ОбщегоНазначения.РаспределитьПропорционально(СуммаОстатокНУ, МассивКоэф, 2);
                }
                //Индекс = 0;
                //ВыборкаБаза.Сбросить();
                while(true/*ВыборкаБаза.Следующий()*/)
                {
                    //Количество = ?(МассивКоличество = Неопределено, 0, МассивКоличество[Индекс]);
                    //Сумма      = ?(МассивСумма = Неопределено, 0, МассивСумма[Индекс]);
                    if(true/*СтруктураШапкиДокумента.ОтражатьВНалоговомУчете*/)
                    {
                        //ПостояннаяРазница = ?(МассивПостояннаяРазница = Неопределено, 0, МассивПостояннаяРазница[Индекс]);
                        //ВременнаяРазница = ?(МассивВременнаяРазница = Неопределено, 0, МассивВременнаяРазница[Индекс]);
                        //СуммаНУ = ?(МассивСуммаНУ = Неопределено, 0, МассивСуммаНУ[Индекс]);
                        /*// Скорректируем сумму затрат по временной или постоянной разнице для исключения ошибок округления.
            */
                        if(true/*СуммаНУ + ПостояннаяРазница + ВременнаяРазница <> Сумма*/)
                        {
                            if(true/*ВременнаяРазница <> 0*/)
                            {
                                //ВременнаяРазница = Сумма - (СуммаНУ + ПостояннаяРазница);
                            }
                        }
                    }
                    if(true/*ВыборкаБаза.ВидВыпуска = Перечисления.ВидыВыпуска.Наработка
               И Не СтруктураШапкиДокумента.ОтражатьВМеждународномУчете*/)
                    {
                        /*// Формирование движений по регистру "Затраты на выпуск (наработка)".
            */
                        /*СформироватьДвиженияПоРегиструЗатратыНаВыпускПродукцииНаработка(
                    СтруктураШапкиДокумента,
                    ВыборкаПоЗатратам,
                    ВыборкаБаза,
                    Количество,
                    Сумма,
                    НаборЗаписейЗатратыНаВыпускНаработка
                );*/
                    }
                    //Индекс = Индекс + 1;
                }
                //;;
            }
            //;;
        }
ПроцедурыРасчетаСебестоимостиВыпуска