Добрый день.
Такой вопрос (платформа 8.1).
Есть следующий фрагмент кода:
Запрос=Новый Запрос();
Запрос.УстановитьПараметр("Ссылка",ЭтотОбъект);
Запрос.УстановитьПараметр("Дата",Дата);
Запрос.Текст="
|ВЫБРАТЬ
| РасходнаяТовары.Номенклатура,
| РасходнаяТовары.ХарактеристикаНоменклатуры,
| СУММА(РасходнаяТовары.Количество) КАК КоличествоДок,
| СУММА(ПартииТоваровНаСкладахОстатки.КоличествоОстаток) КАК КоличествоРег,
| СУММА(ПартииТоваровНаСкладахОстатки.СтоимостьОстаток) КАК СтоимостьРег
|ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК РасходнаяТовары
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&Дата) КАК ПартииТоваровНаСкладахОстатки
| ПО РасходнаяТовары.ХарактеристикаНоменклатуры = ПартииТоваровНаСкладахОстатки.ХарактеристикаНоменклатуры
| И РасходнаяТовары.Номенклатура = ПартииТоваровНаСкладахОстатки.Номенклатура
| И РасходнаяТовары.Ссылка.Склад = ПартииТоваровНаСкладахОстатки.Склад
|
|ГДЕ РасходнаяТовары.Ссылка=&Ссылка
|
|СГРУППИРОВАТЬ ПО
| РасходнаяТовары.ХарактеристикаНоменклатуры,
| РасходнаяТовары.Номенклатура
|";
ТабРез=Запрос.Выполнить().Выгрузить();
Для Каждого Стр Из Товары Цикл
Структура=Новый Структура();
Структура.Вставить("Номенклатура",Стр.Номенклатура);
Структура.Вставить("ХарактеристикаНоменклатуры",Стр.ХарактеристикаНоменклатуры);
Массив=ТабРез.НайтиСтроки(Структура);
Если Массив.Количество()>0 Тогда
Для Каждого СтрМ Из Массив Цикл
Если СтрМ.КоличествоРег=NULL Тогда
КолРег=0;
Иначе
КолРег=СтрМ.КоличествоРег;
КонецЕсли;
Если СтрМ.СтоимостьРег=NULL Тогда
СтоимостьРег=0;
Иначе
СтоимостьРег=СтрМ.СтоимостьРег;
КонецЕсли;
Если КолРег>0 Тогда
Стр.ЦенаПоставки=Окр(СтоимостьРег/КолРег,2);
Стр.СуммаПоставки=Стр.ЦенаПоставки*Стр.Количество;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Он обрабатывает ТЧ док. РТУ, и расчитывает себестоимость для каждой позиции ТЧ товары. Я его хочу перенести в отчет, т.е. вызывать вне документа.
Как нужно изменить код, чтобы получать себестоимость не для всей ТЧ, а для одной пары Номенклатура/ХарактеристикаНоменклатуры?
Т.е. входной параметр, вместо "Ссылка", будет перем. Номенклатура и перем. ХарактеристикаНоменклатуры.
Такой вопрос (платформа 8.1).
Есть следующий фрагмент кода:
Запрос=Новый Запрос();
Запрос.УстановитьПараметр("Ссылка",ЭтотОбъект);
Запрос.УстановитьПараметр("Дата",Дата);
Запрос.Текст="
|ВЫБРАТЬ
| РасходнаяТовары.Номенклатура,
| РасходнаяТовары.ХарактеристикаНоменклатуры,
| СУММА(РасходнаяТовары.Количество) КАК КоличествоДок,
| СУММА(ПартииТоваровНаСкладахОстатки.КоличествоОстаток) КАК КоличествоРег,
| СУММА(ПартииТоваровНаСкладахОстатки.СтоимостьОстаток) КАК СтоимостьРег
|ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК РасходнаяТовары
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&Дата) КАК ПартииТоваровНаСкладахОстатки
| ПО РасходнаяТовары.ХарактеристикаНоменклатуры = ПартииТоваровНаСкладахОстатки.ХарактеристикаНоменклатуры
| И РасходнаяТовары.Номенклатура = ПартииТоваровНаСкладахОстатки.Номенклатура
| И РасходнаяТовары.Ссылка.Склад = ПартииТоваровНаСкладахОстатки.Склад
|
|ГДЕ РасходнаяТовары.Ссылка=&Ссылка
|
|СГРУППИРОВАТЬ ПО
| РасходнаяТовары.ХарактеристикаНоменклатуры,
| РасходнаяТовары.Номенклатура
|";
ТабРез=Запрос.Выполнить().Выгрузить();
Для Каждого Стр Из Товары Цикл
Структура=Новый Структура();
Структура.Вставить("Номенклатура",Стр.Номенклатура);
Структура.Вставить("ХарактеристикаНоменклатуры",Стр.ХарактеристикаНоменклатуры);
Массив=ТабРез.НайтиСтроки(Структура);
Если Массив.Количество()>0 Тогда
Для Каждого СтрМ Из Массив Цикл
Если СтрМ.КоличествоРег=NULL Тогда
КолРег=0;
Иначе
КолРег=СтрМ.КоличествоРег;
КонецЕсли;
Если СтрМ.СтоимостьРег=NULL Тогда
СтоимостьРег=0;
Иначе
СтоимостьРег=СтрМ.СтоимостьРег;
КонецЕсли;
Если КолРег>0 Тогда
Стр.ЦенаПоставки=Окр(СтоимостьРег/КолРег,2);
Стр.СуммаПоставки=Стр.ЦенаПоставки*Стр.Количество;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Он обрабатывает ТЧ док. РТУ, и расчитывает себестоимость для каждой позиции ТЧ товары. Я его хочу перенести в отчет, т.е. вызывать вне документа.
Как нужно изменить код, чтобы получать себестоимость не для всей ТЧ, а для одной пары Номенклатура/ХарактеристикаНоменклатуры?
Т.е. входной параметр, вместо "Ссылка", будет перем. Номенклатура и перем. ХарактеристикаНоменклатуры.
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Приветствую всех!!!
Хочу написать обработку по загрузке внешних обработок в базы 1С 8. Может кто нибудь подобное делал? Очень интересно посмотреть мнения
Я имею ввиду у меня есть список баз я в них посредством OLE СТАРТЕРА хочу загрузить обработку автоматом.
если скажем у меня 100 баз и мне нужно загрузить в них 20 обработок
Хочу написать обработку по загрузке внешних обработок в базы 1С 8. Может кто нибудь подобное делал? Очень интересно посмотреть мнения
Я имею ввиду у меня есть список баз я в них посредством OLE СТАРТЕРА хочу загрузить обработку автоматом.
если скажем у меня 100 баз и мне нужно загрузить в них 20 обработок
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот