В чем собственно проблема? к чему приведен данный запрос? Конфигурация?
Проблема в создании правильного запроса, что б тип цены брался из склада получателя, соотвественно цена. Запрос приведен как исходник, вот что уже из него получается (часть), конф УПП
Если делаю подобный запрос не в цикле то все нормально, получаю нужную цену, а вот если хочу в цикле выборкипервого запроса добавляю свой запрос, ничего не получается, а делаю вот такой вот запрос
Пока ВыборкаСтрокТовары.Следующий() ЦиклЕслиНЕ ЗначениеЗаполнено(ВыборкаСтрокТовары.Номенклатура) Тогда
Сообщить(НСтр("ru='В одной из строк не заполнено значение номенклатуры - строка при печати пропущена.';uk='В одному з рядків не заповнене значення номенклатури - рядок під час друку буде пропущений.'"), СтатусСообщения.Важное);
Продолжить;
КонецЕсли;
ОбластьНомера.Параметры.НомерСтроки = НС;
ТабДокумент.Вывести(ОбластьНомера);
Если ВыводитьКоды ТогдаЕсли Колонка = "Артикул"Тогда
ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Артикул;
Иначе
ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Код;
КонецЕсли;
ТабДокумент.Присоединить(ОбластьКодов);
КонецЕсли;
ОбластьДанных.Параметры.Заполнить(ВыборкаСтрокТовары);
ЗапросПоЦенам = Новый Запрос;
ЗапросПоЦенам.УстановитьПараметр("ТекущийДокументЦена", СсылкаНаОбъект);
ЗапросПоЦенам.УстановитьПараметр("ТоварЦена", ВыборкаСтрокТовары.Товар);
ЗапросПоЦенам.Текст =
"ВЫБРАТЬ
| ЦеныНоменклатуры.Цена КАК ЦенаРозн
|ИЗ
| Документ.ПеремещениеТоваров КАК ПеремещениеТоваров
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
| ПО ПеремещениеТоваров.СкладПолучатель.ТипЦенРозничнойТорговли.Ссылка = ЦеныНоменклатуры.ТипЦен.Ссылка
|ГДЕ
| ПеремещениеТоваров.Ссылка = &ТекущийДокументЦена
| И ЦеныНоменклатуры.Номенклатура.Ссылка = &ТоварЦена";
РезультатЗапроса = ЗапросПоЦенам.Выполнить();
Сообщить (РезультатЗапроса.ЦенаРозн);
//ОбластьЦены.Параметры.Цена = РезультатЗапроса.ЦенаРозн;
ОбластьДанных.Параметры.Товар = СокрЛП(ВыборкаСтрокТовары.Товар);
ТабДокумент.Присоединить(ОбластьДанных);
// Если ЕстьЦена Тогда
ТабДокумент.Присоединить(ОбластьЦены);
ТабДокумент.Присоединить(ОбластьСуммы);
// КонецЕсли;
НС = НС + 1;
КонецЦикла;
В цикле получается получать цену но ровно столько раз сколько у меня строк в документе, попытался условием сделать, но почему то оно не выполняется
ЗапросПоЦенам = Новый Запрос;
ЗапросПоЦенам.УстановитьПараметр("ТекущийДокументЦена", СсылкаНаОбъект);
ЗапросПоЦенам.УстановитьПараметр("ТоварЦена", ВыборкаСтрокТовары.Товар);
ЗапросПоЦенам.Текст =
"ВЫБРАТЬ
| ЦеныНоменклатуры.Цена КАК ЦенаРозн,
| ПеремещениеТоваров.Товары.(
| Номенклатура
| ) КАК Ном
|ИЗ
| Документ.ПеремещениеТоваров КАК ПеремещениеТоваров
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
| ПО ПеремещениеТоваров.СкладПолучатель.ТипЦенРозничнойТорговли.Ссылка = ЦеныНоменклатуры.ТипЦен.Ссылка
| И ПеремещениеТоваров.Товары.Номенклатура.Ссылка = ЦеныНоменклатуры.Номенклатура.Ссылка
|ГДЕ
| ПеремещениеТоваров.Ссылка = &ТекущийДокументЦена";
РезультатЗапроса = ЗапросПоЦенам.Выполнить().Выбрать();
Пока РезультатЗапроса.Следующий() ЦиклЕсли ВыборкаСтрокТовары.Товар = РезультатЗапроса.Ном Тогда
Сообщить (РезультатЗапроса.ЦенаРозн);
КонецЕсли;
КонецЦикла;
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!