Доброго времени суток.

Задача следующая:
1 получить остатки через Регистр накопления и связать его с Регистром сведений ЦеныНоменклатурыСрезПоследних, и все эту благодать поместить в отчет.

Все хорошо работало, до того как я начал вносить изменения в запрос....

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

    Запрос.УстановитьПараметр("Склад", ФильтрПоСкладу);
    Запрос.УстановитьПараметр("Номенклатура", ФильтрПоНоменклатуре);

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

    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
    ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
    ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
    ОбластьСклад = Макет.ПолучитьОбласть("Склад");
    ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

    ТабДок = ЭлементыФормы.ПолеТабличногоДокумента1;
    ТабДок.Очистить();
    ТабДок.Вывести(ОбластьЗаголовок);
    ТабДок.Вывести(ОбластьШапкаТаблицы);
    ТабДок.НачатьАвтогруппировкуСтрок();

    ВыборкаСклад = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    Пока ВыборкаСклад.Следующий() Цикл
    ОбластьСклад.Параметры.Заполнить(ВыборкаСклад);
    ТабДок.Вывести(ОбластьСклад, ВыборкаСклад.Уровень());

    ВыборкаДетальныеЗаписи = ВыборкаСклад.Выбрать();

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    ОбластьДетальныхЗаписей.Параметры.Цена=ВыборкаДетальныеЗаписи.Цена;
    ОбластьДетальныхЗаписей.Параметры.Артикул1=ВыборкаДетальныеЗаписи.Артикул;
    ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
    ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());
    КонецЦикла;
    КонецЦикла;

    ТабДок.ЗакончитьАвтогруппировкуСтрок();
    ТабДок.Вывести(ОбластьПодвалТаблицы);
    ТабДок.Вывести(ОбластьПодвал);
```

Есть у кого какие соображения???
---
Попробуйте вот этот блок

```1c
    ОбластьДетальныхЗаписей.Параметры.Цена=ВыборкаДетальныеЗаписи.Цена;
    ОбластьДетальныхЗаписей.Параметры.Артикул1=ВыборкаДетальныеЗаписи.Артикул;
    ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
```

заменить на

```1c
    ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
    ОбластьДетальныхЗаписей.Параметры.Цена=ВыборкаДетальныеЗаписи.Цена;
    ОбластьДетальныхЗаписей.Параметры.Артикул1=ВыборкаДетальныеЗаписи.Артикул;
```

к сожалению не помню затирает ли "Заполнить" другие параметры
---
Есть у кого какие соображения??? Есть соображение - оформить свой код надлежащим тэгом, а то читать невозможно...
А потом написать - проблема-то в чем?
---
Прошу прощение...Я просто не знаю как это сделать (это я про тэг.)

А проблема в том что в отчете в колонку цена не выгружается эта самая цена...
---
А проблема в том что в отчете в колонку цена не выгружается эта самая цена... Отчет - это смесь двух вещей: запроса и макета. Где она у вас не выгружается?
---
В отчете в колонке Цена - нет значений.
---
Проанализируй, какие изменения внес. Проверь в отладчике в переменной ВыборкаДетальныеЗаписи.Цена - есть значения?
---
Проверил значения нет.
---
Ну... Значит его нет в регистре.
---
в регистре ЦеныНоменклатуры данные по нужным номенклатурам есть ?
---
Да, конечно
---
в отладке проверьте что в таблице РезультатЗапроса.Выгрузить()
---
И она даже не равна 0?
---
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
| ПО ТоварыНаСкладахОстатки.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатур

а где соединение по дате?
---
А зачем?
---
точно, не проснулся еще
---
А за чем дата? Сдесь просто срезпоследних цен....
---
Ну для начала добавьте даты в параметрах запроса. А то непонятно на какую дату получаете остатки и срез цен.
А так подозреваю срез цен получился на начало периода (что то вроде такой даты 01.01.1900), а там ни каких установок цен нет конечно же.
---
Не пудрите человеку мозг. Если дата не указана то виртуальные таблицы "СрезПоследних" равно как и "Остатки" возвращают самые последние значения.

А если указать дату то это замедлит выполнение запроса. Потому что без указанной даты он берет значения из системных таблиц (которые всегда рассчитаны) а если указать дату, даже текущую то система будет вычислять виртуальную таблицу среза последних.
---
Мне дата не нужна это точно. Выгрузка идет по последним.
---
Попробуйте вот этот блок

```1c
    ОбластьДетальныхЗаписей.Параметры.Цена=ВыборкаДетальныеЗаписи.Цена;
    ОбластьДетальныхЗаписей.Параметры.Артикул1=ВыборкаДетальныеЗаписи.Артикул;
    ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
```

заменить на

```1c
    ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
    ОбластьДетальныхЗаписей.Параметры.Цена=ВыборкаДетальныеЗаписи.Цена;
    ОбластьДетальныхЗаписей.Параметры.Артикул1=ВыборкаДетальныеЗаписи.Артикул;
```

к сожалению не помню затирает ли "Заполнить" другие параметры
---
Спасибо. заработало. Хотя не понимаю почему))))
---
видимо метод "Заполнить" очищает параметры которые не смог заполнить по источнику.
---
Но с артиклом работало и так.... Вообще причуды 1с)))
---
У артикула видимо имя параметра совпадало с именем поля в запросе