Имя: Пароль:
1C
1С v8
Выгрузка результата запроса в табличную часть документа
0 mark05
 
12.08.14
21:17
Здравствуйте. Недавно начал учиться работать в 1С. Просмотр чужих тем с похожими на мою проблемами мне не помог. Я создал кнопку для автоматического заполнения полей табличной части документа и создал необходимый запрос, но не могу полученные данные заполнить в табчасть. Табличная часть имеет реквизит с ссылкой на справочник СтатьиОтчета, в котором указаны заполняемые поля.

Запрос:

Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА РАЗНОСТЬДАТ(&Сегодня, ФизическиеЛица.ДатаРождения, ГОД) < 35
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК До35,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Занятость = &Работающий
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК Работающих,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА РАЗНОСТЬДАТ(&Сегодня, МестоПрофУчетаСрезПоследних.Период, ГОД) <= 1
        |                    И МестоПрофУчетаСрезПоследних.Действие = &ПринятНаУчет
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК ЗаОтчетныйГод,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Пол = &Женский
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК Женщин,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ФизическиеЛица.Ссылка) КАК Всего,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Занятость = &Учащийся
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК ВсегоУчащихся,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Занятость = &Пенсионер
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК ВсегоПенсионеров,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Занятость = &Работающий
        |                    ИЛИ ФизическиеЛица.Занятость = &Учащийся
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК РаботающиеИУчащиесяЧленыПрофсоюза,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Занятость = &Учащийся
        |                    И МестоПрофУчетаСрезПоследних.Действие = &ПринятНаУчет
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК УчащиесяЧленыПрофсоюза,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Занятость = &Аутсорсинг
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК Аутсорсинг,
        |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ВЫБОР
        |            КОГДА ФизическиеЛица.Пол = &Женский
        |                    И МестоПрофУчетаСрезПоследних.Действие = &ПринятНаУчет
        |                ТОГДА ФизическиеЛица.Ссылка
        |        КОНЕЦ) КАК ЖенщиныЧленыПрофсоюза
        |ИЗ
        |    Справочник.ФизическиеЛица КАК ФизическиеЛица
        |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестоПрофУчета.СрезПоследних КАК МестоПрофУчетаСрезПоследних
        |        ПО (МестоПрофУчетаСрезПоследних.ЧленПрофсоюза = ФизическиеЛица.Ссылка)
        |ГДЕ
        |    ФизическиеЛица.Владелец = &ППО";
    
    Запрос.УстановитьПараметр("Аутсорсинг", Перечисления.Занятость.Аутсорсинг);
    Запрос.УстановитьПараметр("Женский", Перечисления.ПолФизическогоЛица.Ж);
    Запрос.УстановитьПараметр("ППО", Справочники.ТипОрганизации.ППО);
    Запрос.УстановитьПараметр("ПринятНаУчет", Перечисления.ПринятСнят.Принят);
    Запрос.УстановитьПараметр("Работающий", Перечисления.Занятость.Работающий);
    Запрос.УстановитьПараметр("Сегодня", Объект.Дата);
    Запрос.УстановитьПараметр("Пенсионер", Перечисления.Занятость.Пенсионер);
    Запрос.УстановитьПараметр("Учащийся", Перечисления.Занятость.Учащийся);

    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    
    КонецЦикла;
1 jsmith82
 
12.08.14
21:55
Объект.Товары.Загрузить(Запрос.Выполнить().Выгрузить());
2 mark05
 
12.08.14
22:14
Товары? Под этим подразумевается табличная часть? Если сделать так, то таблица на форме просто стирается.
3 Фокусник
 
12.08.14
22:20
(2) если таблица стирается, значит в неё грузится пустой результат запроса...
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.