Версия для печати темы (https://pro1c.org.ua/index.php?s=c206862d1b7327b2e6a4c75a15df9962&showtopic=47294)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Составить правильно запрос

Автор: uri 17.08.18, 14:41

Есть отчет, который выводит данные ввиде "лесенки", а надо чтобы вместе, как подправить запрос, или удалить верхние пустые строки, чтобы меньше места занимали данные? Вот в таком виде сейчас оно, а надо как бы подтянуть все позиции вверх. Связь есть через заказ.

http://pro1c.org.ua/redirect.php?https://drive.google.com/open?id=1sKQSyvePxb05o0vRythh26vG9HuoOi5H


Автор: ed.kharkov 17.08.18, 14:43

uri @ Сегодня, 15:41 * ,
Добрый день.

Попробуйте сгруппировать по номеру плавки/партии.

Автор: uri 17.08.18, 15:49

ed.kharkov @ Сегодня, 15:43 * ,
Добрый день! А как это сделать, там же данные совсем разные, если бы выше были те же данные, они бы свернулись, а так.., может пятница уже не соображаю)

Автор: ed.kharkov 19.08.18, 15:24

uri @ 17.08.18, 16:49 * ,
Пришлите текст запроса.

Автор: uri 20.08.18, 18:28

ed.kharkov @ 17.08.18, 15:43 * ,

Добрый вечер!

Запрос

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

СГРУППИРОВАТЬ ПО
    ОтчетПроизводстваЗаСменуПродукция.НоменклатурнаяГруппа,
    ОтчетПроизводстваЗаСменуПродукция.ЕдиницаИзмерения,
    ЗаказыНаПроизводствоОбороты.ЗаказНаПроизводство.НомерПлавки,
    ЗаказыНаПроизводствоОбороты.Номенклатура,
    ТребованиеНакладнаяМатериалы.Номенклатура,
    ТребованиеНакладнаяМатериалы.СерияНоменклатуры,
    ОтчетПроизводстваЗаСменуПродукция.Номенклатура,
    ТребованиеНакладнаяМатериалы.ЕдиницаИзмерения,
    ОтчетПроизводстваЗаСменуПродукция.СерияНоменклатуры,
    ЗаказыНаПроизводствоОбороты.Номенклатура.ЕдиницаХраненияОстатков
;

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

СГРУППИРОВАТЬ ПО
    ОтчетПроизводстваЗаСменуПродукция.НоменклатурнаяГруппа,
    ОтчетПроизводстваЗаСменуПродукция.ЕдиницаИзмерения,
    ЗаказыНаПроизводствоОбороты.ЗаказНаПроизводство.НомерПлавки,
    ЗаказыНаПроизводствоОбороты.Номенклатура,
    ТребованиеНакладнаяМатериалы.Номенклатура,
    ТребованиеНакладнаяМатериалы.СерияНоменклатуры,
    ОтчетПроизводстваЗаСменуПродукция.Номенклатура,
    ТребованиеНакладнаяМатериалы.ЕдиницаИзмерения,
    ОтчетПроизводстваЗаСменуПродукция.СерияНоменклатуры
;

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

СГРУППИРОВАТЬ ПО
    ОтчетПроизводстваЗаСменуПродукция.НоменклатурнаяГруппа,
    ОтчетПроизводстваЗаСменуПродукция.ЕдиницаИзмерения,
    ЗаказыНаПроизводствоОбороты.ЗаказНаПроизводство.НомерПлавки,
    ЗаказыНаПроизводствоОбороты.Номенклатура,
    ТребованиеНакладнаяМатериалы.Номенклатура,
    ТребованиеНакладнаяМатериалы.СерияНоменклатуры,
    ОтчетПроизводстваЗаСменуПродукция.Номенклатура,
    ТребованиеНакладнаяМатериалы.ЕдиницаИзмерения,
    ОтчетПроизводстваЗаСменуПродукция.СерияНоменклатуры,
    ОтчетПроизводстваЗаСменуПродукция.НоменклатурнаяГруппа.Код
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВремТабЗаказыНаПроизводство.ЗаказНаПроизводствоНомер КАК ЗаказНаПроизводствоНомер,
    ВремТабЗаказыНаПроизводство.НоменклатураЗаказНаПроизводство КАК НоменклатураЗаказНаПроизводство,
    ВремТабЗаказыНаПроизводство.КолвоЗаказНаПроизводство КАК КолвоЗаказНаПроизводство,
    ВремТабЗаказыНаПроизводство.ЕдИзмЗаказНаПроизводство КАК ЕдИзмЗаказНаПроизводство,
    NULL КАК НоменклатураСписание,
    NULL КАК СерияНоменклатурыСписание,
    0 КАК КолвоСписание,
    NULL КАК ЕдИзмСписание,
    NULL КАК НоменклатураВыпуск,
    NULL КАК СерияПродукцииВыпуск,
    NULL КАК НоменклатурнаяГруппаВыпуск,
    "" КАК КодНоменклатурнаяГруппаВыпуск,
    0 КАК КолвоВыпуск,
    NULL КАК ЕдИзмВыпуск
ИЗ
    ВремТабЗаказыНаПроизводство КАК ВремТабЗаказыНаПроизводство

ОБЪЕДИНИТЬ

ВЫБРАТЬ
    Списание.ЗаказНаПроизводствоНомер,
    NULL,
    0,
    NULL,
    Списание.НоменклатураСписание,
    Списание.СерияНоменклатурыСписание,
    Списание.КолвоСписание,
    Списание.ЕдИзмСписание,
    NULL,
    NULL,
    NULL,
    "",
    0,
    NULL
ИЗ
    Списание КАК Списание

ОБЪЕДИНИТЬ

ВЫБРАТЬ
    Выпуск.ЗаказНаПроизводствоНомер,
    NULL,
    0,
    NULL,
    NULL,
    NULL,
    0,
    NULL,
    Выпуск.НоменклатураВыпуск,
    Выпуск.СерияПродукцииВыпуск,
    Выпуск.НоменклатурнаяГруппаВыпуск,
    Выпуск.КодНоменклатурнаяГруппаВыпуск,
    Выпуск.КолвоВыпуск,
    Выпуск.ЕдИзмВыпуск
ИЗ
    Выпуск КАК Выпуск



 ! 

http://pro1c.org.ua/index.php?act=announce&id=2: 3, 9
 

Автор: uri 21.08.18, 14:41

uri @ Вчера, 19:28 *
Спасибо! Правила учту.

Автор: Brutok 27.08.18, 19:35

Нужно отрыть запрос в конструкторе и перейти во вкладку "Объединения/Псевдонимы" и там указать соответсвия

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua