8.х Объединение запроса

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем v0233, 22 мар 2011.

  1. TopicStarter Overlay
    v0233
    Offline

    v0233 Опытный в 1С

    Регистрация:
    23 авг 2010
    Сообщения:
    167
    Симпатии:
    0
    Баллы:
    26
    Добрый день.
    Подскажите пожалуйста как реализовать эту задачу:

    Имею Форму которая при открытии заполняет ТаблицуЗначений (Мастера) списком

    Код:
    Запрос=Новый запрос;
    Запрос.Текст="Выбрать ссылка, Наименование как мастер
    |из Справочник.СпециалистыЛидер Где Уволен=ЛОЖЬ Упорядочить по Наименование ВОЗР";
    В1=Запрос.Выполнить().Выбрать();
    Пока  В1.Следующий()>0 Цикл
    Б1=Мастера.Добавить();
    Б1.Мастер=В1.Ссылка;
    КонецЦикла;
    
    Работает, Список заполняется:

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

    Побывал несколько вариантов самостоятельно, туго что то у меня с объединением и соединением.
    В прикрепленном файле я в фотошопе сделал "объединение"

    Вложения:

  2. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Попробуйте так:
    Код:
    Запрос = Новый Запрос;
    Запрос.Текст = "
    |ВЫБРАТЬ
    |   ЗапросКСправочнику.Мастер,
    |   ЗапросКРегистру.ДатаВыезда,
    |   ЗапросКРегистру.КоличествоЗаказов
    |ИЗ
    |(ВЫБРАТЬ
    |   Ссылка КАК Мастер
    |ИЗ
    |   Справочник.СпециалистыЛидер
    |ГДЕ
    |   Уволен = ЛОЖЬ) ЗапросКСправочнику
    |
    |ПОЛНОЕ СОЕДИНЕНИЕ
    |
    |(ВЫБРАТЬ
    |   КоличествоЗаказовМастеров.ДатаВыезда,
    |   СУММА(КоличествоЗаказовМастеров.КоличествоЗаказов) КАК КоличествоЗаказов,
    |   КоличествоЗаказовМастеров.Мастер
    |ИЗ
    |   РегистрНакопления.КоличествоЗаказовМастеров КАК КоличествоЗаказовМастеров
    |ГДЕ
    |   КоличествоЗаказовМастеров.Мастер.Уволен = ЛОЖЬ
    |   И КоличествоЗаказовМастеров.ДатаВыезда МЕЖДУ &ДатаНачала И &ДатаОкончания
    |СГРУППИРОВАТЬ ПО
    |   КоличествоЗаказовМастеров.ДатаВыезда,
    |   КоличествоЗаказовМастеров.Мастер) ЗапросКРегистру
    |
    |ПО ЗапросКСправочнику.Мастер = ЗапросКРегистру.Мастер
    |
    |УПОРЯДОЧИТЬ ПО
    |   ЗапросКСправочнику.Мастер.Наименование ВОЗР";
    
    Запрос.УстановитьПараметр("ДатаНачала", НачалоДня(ТекущаяДата()));
    Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ТекущаяДата()));
    
    В1 = Запрос.Выполнить().Выбрать();
    
    Пока В1.Следующий() > 0 Цикл
    Б1 = Мастера.Добавить();
    Б1.Мастер = В1.Мастер;
    Б1.ЗаказыСделанные = В1.КоличествоЗаказов;
    КонецЦикла;
    
    

Поделиться этой страницей