0
antihacker
16.07.14
✎
12:34
|
Добрый день ! Вот код. Он работает если в регистре сведении счета учета указаны на товар. А если счета учета указаны на группу товаров, что и есть правильно, то он не работает. Как переделать функцию ?
Функция СчетаУчетаНоменклатуры(Знач вхТовар)
//-----Структура для возвращения результата---------
СтруктураРезультата = Новый Структура("СчетБУ","СчетНУ","СчетДоходовОтРеализацииБУ","СчетДоходовОтРеализацииНУ","СчетСебестоимостиПриРеализацииБУ","СчетСебестоимостиПриРеализацииНУ");
//СтруктураРезультата.Вставить("СчетБУ",0);
//---Ищем в регистре счета товара---------
Запрос=Новый Запрос;
Запрос.УстановитьПараметр("вхТоварКод", вхТовар.Код);
Запрос.УстановитьПараметр("вхОрганизация", Справочники.Организации.НайтиПоКоду("000000002"));
Запрос.Текст=
"ВЫБРАТЬ
| СчетаУчетаНоменклатуры.Номенклатура.Код КАК НоменклатураКод,
| СчетаУчетаНоменклатуры.Номенклатура КАК Организация,
| СчетаУчетаНоменклатуры.СчетУчетаБУ,
| СчетаУчетаНоменклатуры.СчетУчетаНУ,
| СчетаУчетаНоменклатуры.СчетДоходовОтРеализацииБУ,
| СчетаУчетаНоменклатуры.СчетДоходовОтРеализацииНУ,
| СчетаУчетаНоменклатуры.СчетСебестоимостиПриРеализацииБУ,
| СчетаУчетаНоменклатуры.СчетСебестоимостиПриРеализацииНУ
|ИЗ
| РегистрСведений.СчетаУчетаНоменклатуры КАК СчетаУчетаНоменклатуры
|ГДЕ
| СчетаУчетаНоменклатуры.Номенклатура.Код = &вхТоварКод и СчетаУчетаНоменклатуры.Организация = &вхОрганизация";
ВыборкаСчета = Запрос.Выполнить().Выбрать();
//Результат=Запрос.Выполнить().Выгрузить();
Если Запрос.Выполнить().Выбрать().Количество()>0 Тогда
Пока ВыборкаСчета.Следующий() Цикл
СтруктураРезультата.Вставить("СчетБУ",ВыборкаСчета.СчетУчетаБУ);
СтруктураРезультата.Вставить("СчетНУ",ВыборкаСчета.СчетУчетаНУ);
СтруктураРезультата.Вставить("СчетДоходовОтРеализацииБУ",ВыборкаСчета.СчетДоходовОтРеализацииБУ);
СтруктураРезультата.Вставить("СчетДоходовОтРеализацииНУ",ВыборкаСчета.СчетДоходовОтРеализацииНУ);
СтруктураРезультата.Вставить("СчетСебестоимостиПриРеализацииБУ",ВыборкаСчета.СчетСебестоимостиПриРеализацииБУ);
СтруктураРезультата.Вставить("СчетСебестоимостиПриРеализацииНУ",ВыборкаСчета.СчетСебестоимостиПриРеализацииНУ);
КонецЦикла;
КонецЕсли;
Возврат СтруктураРезультата;
КонецФункции
|
|