Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 06:01

Выборка Оптовой и Розничной цены

Автор Vlad-on, 03 дек 2023, 13:45

0 Пользователей и 1 гость просматривают эту тему.

Vlad-on

Есть необходимость доработать выгрузку, что бы выгружалось две цены. Всю выгрузку выкладывать смысла не вижу, выкладываю тестовый кусок, где пытаюсь выбрать Опт и Розницу.

Процедура КнопкаВыполнитьНажатие(Кнопка)

Запрос= Новый запрос;
Запрос.Текст=
"ВЫБРАТЬ Первые 100
| Номенклатура.Код,
| Номенклатура.Наименование,
    | Номенклатура.Артикул,                   
| Номенклатура.Бренд,
| РозничныеЦены.Цена,
| ОптовыеЦены.Цена
|   ИЗ
| Справочник.Номенклатура КАК Номенклатура,
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаЦены, ТипЦен = &ТипЦеныРозничная) КАК РозничныеЦены,
| РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаЦены, ТипЦен = &ТипЦеныОптовая) КАК ОптовыеЦены";

Запрос.УстановитьПараметр("ТипЦеныРозничная", Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Розница"));
Запрос.УстановитьПараметр("ТипЦеныОптовая", Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Опт"));
    Запрос.УстановитьПараметр("ДатаЦены", ТекущаяДата());


Результат = Запрос.Выполнить().Выбрать();

Пока Результат.Следующий() Цикл

Сообщить(Результат.Код + " : " + Результат.Артикул + " : " +  Результат.Наименование + ": " + Результат.Бренд + ": " + Результат.РозничныеЦены + ": " + Результат.ОптовыеЦены);

КонецЦикла;
КонецПроцедуры;


Данный код не рабочий. Требуется помощь с доведением до рабочей версии.

Ну и стоит оговориться, что с 1С программирванием сталкиваюсь впервый, есть только общее представление.

antoneus

Запрос.Текст =
"ВЫБРАТЬ Первые 100
|    спрНоменклатура.Код,
|    спрНоменклатура.Наименование,
|    спрНоменклатура.Артикул,                   
|    спрНоменклатура.Бренд,
|    РозничныеЦены.Цена КАК РозничнаяЦена,
|    ОптовыеЦены.Цена КАК ОптоваяЦена
|   ИЗ
|    Справочник.Номенклатура КАК спрНоменклатура
|ЛЕВОЕ СОЕДИНЕНИЕ
|    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаЦены, ТипЦен = &ТипЦеныРозничная) КАК РозничныеЦены
|ПО
|    спрНоменклатура.Ссылка = РозничныеЦены.Номенклатура
|ЛЕВОЕ СОЕДИНЕНИЕ
|    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаЦены, ТипЦен = &ТипЦеныОптовая) КАК ОптовыеЦены
|ПО
|    спрНоменклатура.Ссылка = ОптовыеЦены.Номенклатура";

..........

Пока Результат.Следующий() Цикл
       
        Сообщить(Результат.Код + " : " + Результат.Артикул + " : " +  Результат.Наименование + ": " + Результат.Бренд + ": " + Результат.РозничнаяЦена + ": " + Результат.ОптоваяЦена);
       
    КонецЦикла;

Vlad-on

antoneus, огромнейшее спасибо. Работает.

Особенно порадовало, что без пафоса, не как на другом тематическом форуме.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск