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