Не получается вытащить из регистра бухгалтерии в ячейку макета табличной формы оборот по счету 20.01 по статье "Субподряды" (по любой отдельной статье, вообще-то). При этом в справочнике «Статьи затрат» это обычная строка, а не предопределенный элемент. При сравнении с субконто ругается на несоответствие типов. В ячейку не хочет писать. И как с этим бороться, подскажите, пожалуйста?
---
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("Счет", планысчетов.хозрасчетный.найтиПоКоду("20.01");
так надо
---
a4a, дык, текст запроса в студию! Мы же не знаем, как вы там всё написали?
---
В конфигураторе это задаю так:

СписокСтатей=Новый СписокЗначений;
СтатьяСсылка=Справочники.СтатьиЗатрат.НайтиПоКоду("000000010");
СписокСтатей.Добавить(СтатьяСсылка);

ЗапросОборотСтатьиЗатрат = Новый Запрос();
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("Дата1", Дата1);
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("Дата2", КонецДня(Дата2));
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("Организация", Организация);
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("Счет", "20.1");
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("СписокСтатей", СписокСтатей);
ЗапросОборотСтатьиЗатрат.Текст = "ВЫБРАТЬ

 | СУММА(ЕСТЬNULL(ХозрасчетныйОстаткиИОбороты.СуммаОборот, 0)) КАК Сколько
 |ИЗ
 | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
 | &Дата1,
 | &Дата2,
 | ,
 | ,
 | Счет = &Счет,
 | ,
 | Организация = &Организация
 | И Субконто2 В (&СписокСтатей)) КАК ХозрасчетныйОстаткиИОбороты";

Выборка = ЗапросОборотСтатьиЗатрат.Выполнить().Выбрать();
Выборка.Следующий();
ОбластьТаблица.Параметры.Субподряды=Выборка.Сколько;
 Сообщить("Субподряды"+Выборка.Сколько);

и пустота...
---
Может, как-то криво задаю параметр в запросе? Через консоль запросов сумма видна.
---
Добрый вечер.Самое оптимальное это посмотреть в консоле запросов что получается
Допустим для примера
Выбрать *
из
РегистрБугалтерии.НазваниеРегистра.Обороты(Здесь задайте параметры)

примерно такой текст введите в консоле запросов
---
В том-то и дело, что пока пишу запрос в консоли, все получается:
ВЫБРАТЬ
  СУММА(ЕСТЬNULL(ХозрасчетныйОстаткиИОбороты.СуммаОборот, 0)) КАК Сколько
 ИЗ
  РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
    &Дата1,
    &Дата2,
    ,
    ,
    Счет = &Счет,
    ,
    Организация = &Организация

    И Субконто2 В (&СписокСтатей) ) КАК ХозрасчетныйОстаткиИОбороты
Цифру вижу, цифра совпадает с обороткой
---
Запрос = Новый Запрос;

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

 Запрос.УстановитьПараметр("дата1", '20070306120000');
 Запрос.УстановитьПараметр("дата2", '20130301120000');
 Запрос.УстановитьПараметр("статья", );
 Запрос.УстановитьПараметр("счет", ПланыСчетов.Хозрасчетный.);

 Запрос.Текст = Запросы;
 РЗ = Запрос.Выполнить();
---
Параметры Дата1 и Дата2 задаю на форме, организацию временно тоже (на самом деле надо в разрезе организаций - это КОРП), но как этап пытаюсь на одной. То есть эти параметры правильные. Скорее всего, что-то со статьей затрат, мне кажется
---
a4a, у Вас Бухгалтерия 2.0?
Тогда рекомендую:
- счет задавать как ПланыСчетов.Хозрасчетный.<имя счета>
Имя счета посмотреть открыв ветку "Планы счетов", щелкнуть правой кнопкой по плану счетов "Хозрасчетный" - Предопределенные.
- статью задавать не списком, а конкретным элементом, ведь Вам нужно по одной статье. Можно так же по имени, если это предопределенный элемент справочника.
- убрать пока функцию ЕстьNull

Да, и проверить номер субконто - это точно второе?
---
Это не предопределенный элемент, это оговаривалось в (1). Справочник статей затрат заполнен в режиме пользователя. Так что обращение по имени не проходит. Проверка вместо списка из одного элемента на сам конкретный элемент вызывала нарекание программы на несоответствие типов.
А ЕСТЬNULL может чем-то помешать?
---
Что касается "счет задавать как ПланыСчетов.Хозрасчетный.<имя счета>", то изначально так и делалось. Но запись по номеру счета в кавычках казалась более короткой и вполне работала при расчете других ячеек. Там, где не было необходимости в детализации по субконто.
По совету (9)я заменила прямое указание "20.1", и, удивлена, но, возможно, дело в этом, сейчас проверяю
---
ЗапросОборотСтатьиЗатрат.УстановитьПараметр("Счет", планысчетов.хозрасчетный.найтиПоКоду("20.01");
так надо
---
Счет я для других ячеек отчета( для которых не требуется выбор конкретной статьи затрат), задаю так же как в запросе и вполне успешно, меня смущает больше статья затрат. Но сейчас проверю, конечно.
---
Да, получилось. Всем большое спасибо!