Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Запрос к нескольким документам возвращает данные только по последнему документу
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
Anna77
Добрый день!
Помогите разобраться что не так.
Есть запрос к нескольким документам с одинаковыми реквизитами, но результаты запроса получаю только по последнему документу. если поменять местами документы в строке, то и данные получаю другие. в чем проблема??

необходимо зарегистрироваться для просмотра ссылки
Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "
    |Период с Дата1 по Дата2;
    |ОбрабатыватьДокументы Проведенные;  
    |Фио = Документ.ДоговорТерапия.ПациентСпр,Документ.ДоговорТерапия1.ПациентСпр,
Документ.ДоговорХирургия.ПациентСпр,Документ.ДоговорХирургия1.ПациентСпр,Документ.НаправлениеТерапия.ПациентСпр,Документ.НаправлениеХирургия.ПациентСпр;  
    |ДатаР = Документ.ДоговорТерапия.ДатаРождения,Документ.ДоговорТерапия1.ДатаРождения,Документ.ДоговорХирургия.ДатаРождения, Документ.ДоговорХирургия1.ДатаРождения,Документ.НаправлениеТерапия.ДатаРождения,Документ.НаправлениеХирургия.ДатаРождения;
    |КодКарточки = Документ.ДоговорТерапия.КодКарточки,Документ.ДоговорТерапия1.КодКарточки,Документ.ДоговорХирургия.КодКарточки, Документ.ДоговорХирургия1.КодКарточки,Документ.НаправлениеТерапия.КодКарточки,Документ.НаправлениеХирургия.КодКарточки;
    |ДатаДок = Документ.ДоговорТерапия.ДатаДок,Документ.ДоговорТерапия1.ДатаДок,Документ.ДоговорХирургия.ДатаДок,Документ.ДоговорХирургия1.ДатаДок, Документ.НаправлениеТерапия.ДатаДок,Документ.НаправлениеХирургия.ДатаДок;  
    |Док = Документ.ДоговорТерапия.ТекущийДокумент,Документ.ДоговорТерапия1.ТекущийДокумент,
Документ.ДоговорХирургия.ТекущийДокумент,Документ.ДоговорХирургия1.ТекущийДокумент,Документ.НаправлениеТерапия.ТекущийДокумент,Документ.НаправлениеХирургия.ТекущийДокумент;
    |Группировка ДатаДок;  
    |";

    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Сообщить("Ошибка в запросе!");
        Возврат;
    КонецЕсли;      
    
    Таб = СоздатьОбъект("Таблица");                                        
    Таб.ИсходнаяТаблица("Реестр");    
    Таб.ВывестиСекцию("шапка");

    Пока Запрос.Группировка(1)=1 Цикл        
        ДатаДок = Запрос.ДатаДок;
        НомКарты = СокрЛП(Запрос.КодКарточки);
        ФИО = СокрЛП(Запрос.Фио);
        Возраст = СокрЛП(Формат((ТекущаяДата()-Запрос.ДатаР)/365, "Ч10"));
        Оплата = Запрос.Док;          
        Таб.ВывестиСекцию("строка");
    КонецЦикла;    
    
    Таб.Опции(0, 0, 4, 0);
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Реестр по стационарам", "");
Alegzander
|Группировка ДатаДок;


поміняти на

|Группировка Док;
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.