Имя: Пароль:
1C
1C 7.7
v7: Создание отчета и вывод результата
0 Pewit
 
11.11.16
12:46
Добрый день! Хочу вывести данные из справочника в таблицу, но используя код, вижу только пустую таблицу. Подскажите, пожалуйста, что делаю не так?
    Перем Запрос, ТекстЗапроса, Таб;
    //Создание объекта типа Запрос
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)
    |Ссылка = Справочник.Контрагенты.ТекущийЭлемент;
    |Код = Справочник.Контрагенты.Код;
    |Родитель = Справочник.Контрагенты.Родитель;
    |ОсновнойДоговор = Справочник.Контрагенты.ОсновнойДоговор;
    |ОсновнойСчет = Справочник.Контрагенты.ОсновнойСчет;
    |АдресПроживания = Справочник.Контрагенты.ТСЖ_АдресПроживания;
    |Квартиросъемщик = Справочник.Контрагенты.ТСЖ_Квартиросъемщик;
    |КолВоПроживающих = Справочник.Контрагенты.ТСЖ_КолВоПроживающих;
    |Характеристика = Справочник.Контрагенты.ТСЖ_Характеристика;
    |ДействуетС = Справочник.Контрагенты.ТСЖ_ДействуетС;
    |ДействуетПо = Справочник.Контрагенты.ТСЖ_ДействуетПо;
    |"//}}ЗАПРОС
    ;
    // Если ошибка в запросе, то выход из процедуры
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;

    // Подготовка к заполнению выходных форм данными запроса
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Сформировать");
    // Заполнение полей "Заголовок"
    Таб.ВывестиСекцию("Заголовок");
    Состояние("Заполнение выходной таблицы...");
    Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
    // Вывод заполненной формы
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Сформировать", "");
1 Ёпрст
 
11.11.16
12:49
добавь группировку в текст запроса
2 sonne666
 
11.11.16
12:49
(0) обязательно нужна группировка в запросе.
Да и в таблицу ничего не выводишь, кроме заголовка.
3 АЛьФ
 
11.11.16
12:50
2(0) Нет обхода результатов запроса и вывода в таблицу.
4 Slypower
 
11.11.16
13:19
судя по коду, тут и запрос не нужен, зря время только теряете, все равно потом не используете его.
В запрос Группировку, а потом:

Пока Запрос.Группировка()=1 Цикл
Таб.ВывестиСекцию("Строка");
КонецЦикла;
5 Chameleon1980
 
11.11.16
13:35
откройте форму списка справочника

зайдите в конструкторы

там есть конструктор печати

воспользуйтесь им

там и найдете свою ошибку по сформированному тексту и макету.
6 Chameleon1980
 
11.11.16
13:36
только там без запроса текст получится
но вам подойдет и он

а прозапрос - да - группировку надо и обход запроса
7 Это_mike
 
11.11.16
13:40
(6) ну так добавив группировку ТекущийЭлемент - оно и получит что надо.
все делается конструкторами...
8 Chameleon1980
 
11.11.16
13:42
(7) да не первый раз замужем-то.

ему так-то уже пять раз про группировку сказали.

я просто контрольный выстрел сделал :)

я ему вообще простейший путь показал где вообще все мышкой делается (даже макет сам рисуется) :)

в том числе перебор элементов руками не нужно писать.
9 Chameleon1980
 
11.11.16
13:43
а все равно тс ушел :)
10 Это_mike
 
11.11.16
13:44
(8) "контрольное изнасилование в голову..."©
11 Pewit
 
11.11.16
14:16
спасибо больше за помощь! Буду реализовывать :)
Программист всегда исправляет последнюю ошибку.