|
Как вывести значение отдельной колонкой в Универсальном отчете | ☑ | ||
---|---|---|---|---|
0
nemoxp
25.08.16
✎
11:09
|
Платформа 8.2.19.106, УТ 10.3.2.11
Пишу свой отчет на базе универсального. Нужно чтобы каждое поле выводилось отдельной колонкой: Контрагент, Транспортная Компания, Экспедитор, Комментарий и Комментарий для склада. Почему поле Контрагент (и любое другое поле если его сделать первым в списке) выводится не в отдельной колонке а как строка группировки? Что не так? И как избавиться от пустых строк (группировок)? Скриншот отчета (интересующее выделил красной рамочкой): http://s017.radikal.ru/i444/1608/29/42eadf41956b.png ================================================================= Код процедуры УстановитьНачальныеНастройки: Процедура УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт // Настройка общих параметров универсального отчета // Содержит название отчета, которое будет выводиться в шапке. // Тип: Строка. // Пример: // УниверсальныйОтчет.мНазваниеОтчета = "Название отчета"; УниверсальныйОтчет.мНазваниеОтчета = СокрЛП(ЭтотОбъект.Метаданные().Синоним); // Содержит признак необходимости отображения надписи и поля выбора раздела учета в форме настройки. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь; УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь; // Содержит имя регистра, по метаданным которого будет выполняться заполнение настроек отчета. // Тип: Строка. // Пример: // УниверсальныйОтчет.ИмяРегистра = "ТоварыНаСкладах"; // Содержит признак необходимости вывода отрицательных значений показателей красным цветом. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ОтрицательноеКрасным = Истина; УниверсальныйОтчет.ОтрицательноеКрасным = Истина; // Содержит признак необходимости вывода в отчет общих итогов. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.ВыводитьОбщиеИтоги = Ложь; // Содержит признак необходимости вывода детальных записей в отчет. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ВыводитьДетальныеЗаписи = Истина; // Содержит признак необходимости отображения флага использования свойств и категорий в форме настройки. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Ложь; УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Истина; // Содержит признак использования свойств и категорий при заполнении настроек отчета. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ИспользоватьСвойстваИКатегории = Истина; // Содержит признак использования простой формы настроек отчета без группировок колонок. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.мРежимФормыНастройкиБезГруппировокКолонок = Истина; // Дополнительные параметры, переданные из отчета, вызвавшего расшифровку. // Информация, передаваемая в переменной ДополнительныеПараметры, может быть использована // для реализации специфичных для данного отчета параметрических настроек. Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | SV_СписокТарыБыстрогоВыбора.Тара КАК Ссылка |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора"; ТаблицаТары = Запрос.Выполнить().Выгрузить(); // Описание исходного текста запроса. ТекстЗапроса = "ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка.Ссылка, | РеализацияТоваровУслугТовары.Ссылка.Дата, | РеализацияТоваровУслугТовары.Ссылка.SV_ДатаОтгрузки КАК ДатаОтгрузки, | РеализацияТоваровУслугТовары.Ссылка.Контрагент, | РеализацияТоваровУслугТовары.Ссылка.SV_ТранспортнаяКомпанния КАК ТранспортнаяКомпанния, | РеализацияТоваровУслугТовары.Ссылка.SV_Экспедитор КАК Экспедитор, | СУММА(РеализацияТоваровУслугТовары.КоличествоМест) КАК КоличествоМест, | СУММА(ВЫБОР | КОГДА РеализацияТоваровУслугТовары.Ссылка.ВалютаДокумента <> Валюты.Ссылка | ТОГДА РеализацияТоваровУслугТовары.Сумма * РеализацияТоваровУслугТовары.Ссылка.КурсВзаиморасчетов | ИНАЧЕ РеализацияТоваровУслугТовары.Сумма | КОНЕЦ) КАК Сумма, | СУММА(РеализацияТоваровУслугТовары.Вес) КАК Вес, | СУММА(РеализацияТоваровУслугТовары.Объем) КАК Объем |ПОМЕСТИТЬ тблРеализации |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары, | Справочник.Валюты КАК Валюты |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугТовары.Ссылка.Проведен = ИСТИНА | И Валюты.Код = ""810"" | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка.Ссылка, | РеализацияТоваровУслугТовары.Ссылка.Контрагент, | РеализацияТоваровУслугТовары.Ссылка.Дата, | РеализацияТоваровУслугТовары.Ссылка.SV_Экспедитор, | РеализацияТоваровУслугТовары.Ссылка.SV_ТранспортнаяКомпанния, | РеализацияТоваровУслугТовары.Ссылка.SV_ДатаОтгрузки |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | SV_ДатыПервогоПроведенияДокументов.СсылкаНаДокумент, | SV_ДатыПервогоПроведенияДокументов.ДатаПервогоПроведения |ПОМЕСТИТЬ тблДатыПервогоПроведения |ИЗ | РегистрСведений.SV_ДатыПервогоПроведенияДокументов КАК SV_ДатыПервогоПроведенияДокументов |ГДЕ | SV_ДатыПервогоПроведенияДокументов.СсылкаНаДокумент ССЫЛКА Документ.РеализацияТоваровУслуг | И SV_ДатыПервогоПроведенияДокументов.СсылкаНаДокумент.Дата МЕЖДУ &ДатаНачала И &ДатаКонца |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслугSV_ПричиныОтклонений.Ссылка, | РеализацияТоваровУслугSV_ПричиныОтклонений.Причина |ПОМЕСТИТЬ тблПричиныОтклонений |ИЗ | Документ.РеализацияТоваровУслуг.SV_ПричиныОтклонений КАК РеализацияТоваровУслугSV_ПричиныОтклонений |ГДЕ | РеализацияТоваровУслугSV_ПричиныОтклонений.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугSV_ПричиныОтклонений.Ссылка.Проведен = ИСТИНА |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка, | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.Номенклатура) КАК КоличествоПозиций |ПОМЕСТИТЬ тблКоличествоПозиций |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугТовары.Ссылка.Проведен = ИСТИНА | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка |; | |////////////////////////////////////////////////////////////////////////////////"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " |ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) КАК КоличествоОборот |ПОМЕСТИТЬ тблДвиженияТары" + Строка(н) + " |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | И SV_СписокТарыБыстрогоВыбора.Тара.Код = """ + Тара.Ссылка.Код + """ | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | SV_СписокТарыБыстрогоВыбора.Тара | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка = РеализацияТоваровУслуг.Сделка | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя | И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка ССЫЛКА Документ.ЗаказПокупателя | И SV_СписокТарыБыстрогоВыбора.Тара.Код = """ + Тара.Ссылка.Код + """ | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | РеализацияТоваровУслуг.Ссылка, | SV_СписокТарыБыстрогоВыбора.Тара |; | |////////////////////////////////////////////////////////////////////////////////"; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " |ВЫБРАТЬ | тблРеализации.Ссылка КАК Реализация, | тблДатыПервогоПроведения.ДатаПервогоПроведения КАК ДатаПервогоПроведения, | тблРеализации.Дата КАК Дата, | тблРеализации.ДатаОтгрузки КАК ДатаОтгрузки, | тблРеализации.Контрагент КАК Контрагент, | тблРеализации.ТранспортнаяКомпанния КАК ТранспортнаяКомпанния, | тблРеализации.Экспедитор КАК Экспедитор, | тблКоличествоПозиций.КоличествоПозиций КАК КоличествоПозиций, | тблРеализации.КоличествоМест КАК КоличествоМест, | тблРеализации.Сумма КАК Сумма, | тблРеализации.Вес КАК Вес, | тблРеализации.Объем КАК Объем, | NULL КАК Комментарий, | NULL КАК КомментарийДляСклада, | NULL КАК ПричинаОтклонений, | NULL КАК ОбъектЗатрат, | NULL КАК СуммаЗатрат,"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | тблДвиженияТары" + Строка(н) + ".КоличествоНачальныйОстаток КАК НачальныйОстатокТары" + Строка(н) + ", | тблДвиженияТары" + Строка(н) + ".КоличествоКонечныйОстаток КАК КонечныйОстатокТары" + Строка(н) + ", | тблДвиженияТары" + Строка(н) + ".КоличествоПриход КАК ПриходТары" + Строка(н) + ", | тблДвиженияТары" + Строка(н) + ".КоличествоРасход КАК РасходТары" + Строка(н) + ", | тблДвиженияТары" + Строка(н) + ".КоличествоОборот КАК ОборотТары" + Строка(н) + ","; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " | ПРЕДСТАВЛЕНИЕ(тблРеализации.Ссылка), | ПРЕДСТАВЛЕНИЕ(тблРеализации.Контрагент), | ПРЕДСТАВЛЕНИЕ(тблРеализации.ТранспортнаяКомпанния), | ПРЕДСТАВЛЕНИЕ(тблРеализации.Экспедитор) | //ПОЛЯ_СВОЙСТВА | //ПОЛЯ_КАТЕГОРИИ |{ВЫБРАТЬ | Реализация.*, | ДатаПервогоПроведения, | Дата, | ДатаОтгрузки, | Контрагент.*, | ТранспортнаяКомпанния.*, | Экспедитор.*, | КоличествоПозиций, | КоличествоМест, | Сумма, | Вес, | Объем, | Комментарий, | КомментарийДляСклада, | ПричинаОтклонений, | ОбъектЗатрат, | СуммаЗатрат,"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | НачальныйОстатокТары" + Строка(н) + ", | КонечныйОстатокТары" + Строка(н) + ", | ПриходТары" + Строка(н) + ", | РасходТары" + Строка(н) + ", | ОборотТары" + Строка(н); Если н < ТаблицаТары.Количество() Тогда ТекстЗапроса = ТекстЗапроса + ","; КонецЕсли; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " | //ПСЕВДОНИМЫ_СВОЙСТВА | //ПСЕВДОНИМЫ_КАТЕГОРИИ |} |ИЗ | тблРеализации КАК тблРеализации | ЛЕВОЕ СОЕДИНЕНИЕ тблДатыПервогоПроведения КАК тблДатыПервогоПроведения | ПО тблРеализации.Ссылка = тблДатыПервогоПроведения.СсылкаНаДокумент | ЛЕВОЕ СОЕДИНЕНИЕ тблКоличествоПозиций КАК тблКоличествоПозиций | ПО тблРеализации.Ссылка = тблКоличествоПозиций.Ссылка"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | ЛЕВОЕ СОЕДИНЕНИЕ тблДвиженияТары" + Строка(н) + " КАК тблДвиженияТары" + Строка(н) + " | ПО тблРеализации.Ссылка = тблДвиженияТары" + Строка(н) + ".Регистратор"; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " |{ГДЕ | тблРеализации.Ссылка.*, | тблДатыПервогоПроведения.ДатаПервогоПроведения, | тблРеализации.Дата, | тблРеализации.ДатаОтгрузки, | тблРеализации.Контрагент.*, | тблРеализации.ТранспортнаяКомпанния.*, | тблРеализации.Экспедитор.*, | тблКоличествоПозиций.КоличествоПозиций, | тблРеализации.КоличествоМест, | тблРеализации.Сумма, | тблРеализации.Вес, | тблРеализации.Объем} | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | тблПричиныОтклонений.Ссылка, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | тблПричиныОтклонений.Причина, | NULL, | NULL,"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | NULL, | NULL, | NULL, | NULL, | NULL,"; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " | NULL, | NULL, | NULL, | NULL |ИЗ | тблПричиныОтклонений КАК тблПричиныОтклонений | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | РеализацияТоваровУслуг.Комментарий, | РеализацияТоваровУслуг.КомментарийДляСклада, | NULL, | NULL, | NULL,"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | NULL, | NULL, | NULL, | NULL, | NULL,"; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " | NULL, | NULL, | NULL, | NULL |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслуг.Проведен = ИСТИНА | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | РеализацияТоваровУслугSV_СкладскиеЗатраты.ОбъектЗатрат, | СУММА(РеализацияТоваровУслугSV_СкладскиеЗатраты.Сумма),"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | NULL, | NULL, | NULL, | NULL, | NULL,"; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " | NULL, | NULL, | NULL, | NULL |ИЗ | Документ.РеализацияТоваровУслуг.SV_СкладскиеЗатраты КАК РеализацияТоваровУслугSV_СкладскиеЗатраты |ГДЕ | РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка.Проведен = ИСТИНА | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка, | РеализацияТоваровУслугSV_СкладскиеЗатраты.ОбъектЗатрат |{УПОРЯДОЧИТЬ ПО | Реализация.*, | ДатаПервогоПроведения, | Дата, | ДатаОтгрузки, | Контрагент.*, | ТранспортнаяКомпанния.*, | Экспедитор.*, | КоличествоПозиций, | КоличествоМест, | Сумма, | Вес, | Объем, | Комментарий, | КомментарийДляСклада, | ПричинаОтклонений.*, | ОбъектЗатрат.*, | СуммаЗатрат,"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | НачальныйОстатокТары" + Строка(н) + ", | КонечныйОстатокТары" + Строка(н) + ", | ПриходТары" + Строка(н) + ", | РасходТары" + Строка(н) + ", | ОборотТары" + Строка(н) + ","; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " | СсылкаПредставление} |ИТОГИ | СУММА(КоличествоПозиций), | СУММА(КоличествоМест), | СУММА(Сумма), | СУММА(Вес), | СУММА(Объем), | СУММА(СуммаЗатрат),"; н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; ТекстЗапроса = ТекстЗапроса + " | СУММА(ПриходТары" + Строка(н) + "), | СУММА(РасходТары" + Строка(н) + "), | СУММА(ОборотТары" + Строка(н) + ")"; Если н < ТаблицаТары.Количество() Тогда ТекстЗапроса = ТекстЗапроса + ","; КонецЕсли; КонецЦикла; ТекстЗапроса = ТекстЗапроса + " |ПО | ОБЩИЕ |{ИТОГИ ПО | Реализация.*, | ОбъектЗатрат.*}"; // В универсальном отчете включен флаг использования свойств и категорий. Если УниверсальныйОтчет.ИспользоватьСвойстваИКатегории Тогда // Добавление свойств и категорий поля запроса в таблицу полей. // Необходимо вызывать для каждого поля запроса, предоставляющего возможность использования свойств и категорий. // УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(<ПсевдонимТаблицы>.<Поле> , <ПсевдонимПоля>, <Представление>, <Назначение>); УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля("ВложенныйЗапрос.Регистратор", "Регистратор", "Регистратор", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Документы); // Добавление свойств и категорий в исходный текст запроса. УниверсальныйОтчет.ДобавитьВТекстЗапросаСвойстваИКатегории(ТекстЗапроса); КонецЕсли; // Инициализация текста запроса построителя отчета УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса; // Представления полей отчета. // Необходимо вызывать для каждого поля запроса. // УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить(<ИмяПоля>, <ПредставлениеПоля>); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Реализация", "Реализация"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ДатаПервогоПроведения", "Дата первого проведения"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Дата", "Дата"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ДатаОтгрузки", "Дата отгрузки"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Контрагент", "Контрагент"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ТранспортнаяКомпанния", "Транспортная компанния"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Экспедитор", "Экспедитор"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоПозиций", "Количество позиций"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КоличествоМест", "Количество мест"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Сумма", "Сумма"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Вес", "Вес"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Объем", "Объем"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Комментарий", "Комментарий"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("КомментарийДляСклада", "Комментарий для склада"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ПричинаОтклонений", "Причина отклонений"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОбъектЗатрат", "Объект затрат"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаЗатрат", "Сумма затрат"); // Добавление показателей // Необходимо вызывать для каждого добавляемого показателя. // УниверсальныйОтчет.ДобавитьПоказатель(<ИмяПоказателя>, <ПредставлениеПоказателя>, <ВключенПоУмолчанию>, <Формат>, <ИмяГруппы>, <ПредставлениеГруппы>); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоПозиций", "Количество позиций", Истина, "ЧЦ=15; ЧДЦ=0", , ); УниверсальныйОтчет.ДобавитьПоказатель("КоличествоМест", "Количество мест", Истина, "ЧЦ=15; ЧДЦ=3", , ); УниверсальныйОтчет.ДобавитьПоказатель("Сумма", "Сумма", Истина, "ЧЦ=15; ЧДЦ=2", , ); УниверсальныйОтчет.ДобавитьПоказатель("Вес", "Вес", Истина, "ЧЦ=15; ЧДЦ=3", , ); УниверсальныйОтчет.ДобавитьПоказатель("Объем", "Объем", Истина, "ЧЦ=15; ЧДЦ=4", , ); УниверсальныйОтчет.ДобавитьПоказатель("СуммаЗатрат", "СуммаЗатрат", Истина, "ЧЦ=15; ЧДЦ=2", , ); //// Создадим показатели для каждого вида тары н = 0; Для Каждого Тара Из ТаблицаТары Цикл н = н + 1; УниверсальныйОтчет.ДобавитьПоказатель("НачальныйОстатокТары" + Строка(н), "Нач. остаток", Истина, "ЧЦ=15; ЧДЦ=0", "Тара" + Строка(н), Тара.Ссылка.Наименование); УниверсальныйОтчет.ДобавитьПоказатель("ПриходТары" + Строка(н), "Приход", Истина, "ЧЦ=15; ЧДЦ=0", "Тара" + Строка(н), Тара.Ссылка.Наименование); УниверсальныйОтчет.ДобавитьПоказатель("РасходТары" + Строка(н), "Расход", Истина, "ЧЦ=15; ЧДЦ=0", "Тара" + Строка(н), Тара.Ссылка.Наименование); УниверсальныйОтчет.ДобавитьПоказатель("КонечныйОстатокТары" + Строка(н), "Кон. остаток", Истина, "ЧЦ=15; ЧДЦ=0", "Тара" + Строка(н), Тара.Ссылка.Наименование); УниверсальныйОтчет.ДобавитьПоказатель("ОборотТары" + Строка(н), "Оборот", Истина, "ЧЦ=15; ЧДЦ=0", "Тара" + Строка(н), Тара.Ссылка.Наименование); КонецЦикла; // Добавление предопределенных группировок строк отчета. // Необходимо вызывать для каждой добавляемой группировки строки. // УниверсальныйОтчет.ДобавитьИзмерениеСтроки(<ПутьКДанным>); УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Реализация"); УниверсальныйОтчет.ДобавитьИзмерениеСтроки("ОбъектЗатрат"); // Добавление предопределенных группировок колонок отчета. // Необходимо вызывать для каждой добавляемой группировки колонки. // УниверсальныйОтчет.ДобавитьИзмерениеКолонки(<ПутьКДанным>); // Добавление предоп |
|||
1
nemoxp
25.08.16
✎
11:09
|
Запрос формируется программно, итоговый вид у него такой:
"ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка.Ссылка, | РеализацияТоваровУслугТовары.Ссылка.Дата, | РеализацияТоваровУслугТовары.Ссылка.SV_ДатаОтгрузки КАК ДатаОтгрузки, | РеализацияТоваровУслугТовары.Ссылка.Контрагент, | РеализацияТоваровУслугТовары.Ссылка.SV_ТранспортнаяКомпанния КАК ТранспортнаяКомпанния, | РеализацияТоваровУслугТовары.Ссылка.SV_Экспедитор КАК Экспедитор, | СУММА(РеализацияТоваровУслугТовары.КоличествоМест) КАК КоличествоМест, | СУММА(ВЫБОР | КОГДА РеализацияТоваровУслугТовары.Ссылка.ВалютаДокумента <> Валюты.Ссылка | ТОГДА РеализацияТоваровУслугТовары.Сумма * РеализацияТоваровУслугТовары.Ссылка.КурсВзаиморасчетов | ИНАЧЕ РеализацияТоваровУслугТовары.Сумма | КОНЕЦ) КАК Сумма, | СУММА(РеализацияТоваровУслугТовары.Вес) КАК Вес, | СУММА(РеализацияТоваровУслугТовары.Объем) КАК Объем |ПОМЕСТИТЬ тблРеализации |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары, | Справочник.Валюты КАК Валюты |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугТовары.Ссылка.Проведен = ИСТИНА | И Валюты.Код = ""810"" | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка.Ссылка, | РеализацияТоваровУслугТовары.Ссылка.Контрагент, | РеализацияТоваровУслугТовары.Ссылка.Дата, | РеализацияТоваровУслугТовары.Ссылка.SV_Экспедитор, | РеализацияТоваровУслугТовары.Ссылка.SV_ТранспортнаяКомпанния, | РеализацияТоваровУслугТовары.Ссылка.SV_ДатаОтгрузки |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | SV_ДатыПервогоПроведенияДокументов.СсылкаНаДокумент, | SV_ДатыПервогоПроведенияДокументов.ДатаПервогоПроведения |ПОМЕСТИТЬ тблДатыПервогоПроведения |ИЗ | РегистрСведений.SV_ДатыПервогоПроведенияДокументов КАК SV_ДатыПервогоПроведенияДокументов |ГДЕ | SV_ДатыПервогоПроведенияДокументов.СсылкаНаДокумент ССЫЛКА Документ.РеализацияТоваровУслуг | И SV_ДатыПервогоПроведенияДокументов.СсылкаНаДокумент.Дата МЕЖДУ &ДатаНачала И &ДатаКонца |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслугSV_ПричиныОтклонений.Ссылка, | РеализацияТоваровУслугSV_ПричиныОтклонений.Причина |ПОМЕСТИТЬ тблПричиныОтклонений |ИЗ | Документ.РеализацияТоваровУслуг.SV_ПричиныОтклонений КАК РеализацияТоваровУслугSV_ПричиныОтклонений |ГДЕ | РеализацияТоваровУслугSV_ПричиныОтклонений.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугSV_ПричиныОтклонений.Ссылка.Проведен = ИСТИНА |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка, | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.Номенклатура) КАК КоличествоПозиций |ПОМЕСТИТЬ тблКоличествоПозиций |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугТовары.Ссылка.Проведен = ИСТИНА | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) КАК КоличествоОборот |ПОМЕСТИТЬ тблДвиженияТары1 |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | И SV_СписокТарыБыстрогоВыбора.Тара.Код = ""20100561 "" | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | SV_СписокТарыБыстрогоВыбора.Тара | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка = РеализацияТоваровУслуг.Сделка | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя | И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка ССЫЛКА Документ.ЗаказПокупателя | И SV_СписокТарыБыстрогоВыбора.Тара.Код = ""20100561 "" | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | РеализацияТоваровУслуг.Ссылка, | SV_СписокТарыБыстрогоВыбора.Тара |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) КАК КоличествоОборот |ПОМЕСТИТЬ тблДвиженияТары2 |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | И SV_СписокТарыБыстрогоВыбора.Тара.Код = ""20100562 "" | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | SV_СписокТарыБыстрогоВыбора.Тара | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка = РеализацияТоваровУслуг.Сделка | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя | И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка ССЫЛКА Документ.ЗаказПокупателя | И SV_СписокТарыБыстрогоВыбора.Тара.Код = ""20100562 "" | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | РеализацияТоваровУслуг.Ссылка, | SV_СписокТарыБыстрогоВыбора.Тара |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) КАК КоличествоОборот |ПОМЕСТИТЬ тблДвиженияТары3 |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг | И SV_СписокТарыБыстрогоВыбора.Тара.Код = ""20100563 "" | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Регистратор, | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | SV_СписокТарыБыстрогоВыбора.Тара | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход), | СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот) |ИЗ | РегистрСведений.SV_СписокТарыБыстрогоВыбора КАК SV_СписокТарыБыстрогоВыбора | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНачала, &ДатаКонца, Запись, , ) КАК ТоварыНаСкладахОстаткиИОбороты | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка = РеализацияТоваровУслуг.Сделка | ПО SV_СписокТарыБыстрогоВыбора.Тара = ТоварыНаСкладахОстаткиИОбороты.Номенклатура |ГДЕ | ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя | И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Сделка ССЫЛКА Документ.ЗаказПокупателя | И SV_СписокТарыБыстрогоВыбора.Тара.Код = ""20100563 "" | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОстаткиИОбороты.Номенклатура, | РеализацияТоваровУслуг.Ссылка, | SV_СписокТарыБыстрогоВыбора.Тара |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | тблРеализации.Ссылка КАК Реализация, | тблДатыПервогоПроведения.ДатаПервогоПроведения КАК ДатаПервогоПроведения, | тблРеализации.Дата КАК Дата, | тблРеализации.ДатаОтгрузки КАК ДатаОтгрузки, | тблРеализации.Контрагент КАК Контрагент, | тблРеализации.ТранспортнаяКомпанния КАК ТранспортнаяКомпанния, | тблРеализации.Экспедитор КАК Экспедитор, | тблКоличествоПозиций.КоличествоПозиций КАК КоличествоПозиций, | тблРеализации.КоличествоМест КАК КоличествоМест, | тблРеализации.Сумма КАК Сумма, | тблРеализации.Вес КАК Вес, | тблРеализации.Объем КАК Объем, | NULL КАК Комментарий, | NULL КАК КомментарийДляСклада, | NULL КАК ПричинаОтклонений, | NULL КАК ОбъектЗатрат, | NULL КАК СуммаЗатрат, | тблДвиженияТары1.КоличествоНачальныйОстаток КАК НачальныйОстатокТары1, | тблДвиженияТары1.КоличествоКонечныйОстаток КАК КонечныйОстатокТары1, | тблДвиженияТары1.КоличествоПриход КАК ПриходТары1, | тблДвиженияТары1.КоличествоРасход КАК РасходТары1, | тблДвиженияТары1.КоличествоОборот КАК ОборотТары1, | тблДвиженияТары2.КоличествоНачальныйОстаток КАК НачальныйОстатокТары2, | тблДвиженияТары2.КоличествоКонечныйОстаток КАК КонечныйОстатокТары2, | тблДвиженияТары2.КоличествоПриход КАК ПриходТары2, | тблДвиженияТары2.КоличествоРасход КАК РасходТары2, | тблДвиженияТары2.КоличествоОборот КАК ОборотТары2, | тблДвиженияТары3.КоличествоНачальныйОстаток КАК НачальныйОстатокТары3, | тблДвиженияТары3.КоличествоКонечныйОстаток КАК КонечныйОстатокТары3, | тблДвиженияТары3.КоличествоПриход КАК ПриходТары3, | тблДвиженияТары3.КоличествоРасход КАК РасходТары3, | тблДвиженияТары3.КоличествоОборот КАК ОборотТары3, | ПРЕДСТАВЛЕНИЕ(тблРеализации.Ссылка), | ПРЕДСТАВЛЕНИЕ(тблРеализации.Контрагент), | ПРЕДСТАВЛЕНИЕ(тблРеализации.ТранспортнаяКомпанния), | ПРЕДСТАВЛЕНИЕ(тблРеализации.Экспедитор) |{ВЫБРАТЬ | Реализация.*, | ДатаПервогоПроведения, | Дата, | ДатаОтгрузки, | Контрагент.*, | ТранспортнаяКомпанния.*, | Экспедитор.*, | КоличествоПозиций, | КоличествоМест, | Сумма, | Вес, | Объем, | Комментарий, | КомментарийДляСклада, | ПричинаОтклонений, | ОбъектЗатрат, | СуммаЗатрат, | НачальныйОстатокТары1, | КонечныйОстатокТары1, | ПриходТары1, | РасходТары1, | ОборотТары1, | НачальныйОстатокТары2, | КонечныйОстатокТары2, | ПриходТары2, | РасходТары2, | ОборотТары2, | НачальныйОстатокТары3, | КонечныйОстатокТары3, | ПриходТары3, | РасходТары3, | ОборотТары3} |ИЗ | тблРеализации КАК тблРеализации | ЛЕВОЕ СОЕДИНЕНИЕ тблДатыПервогоПроведения КАК тблДатыПервогоПроведения | ПО тблРеализации.Ссылка = тблДатыПервогоПроведения.СсылкаНаДокумент | ЛЕВОЕ СОЕДИНЕНИЕ тблКоличествоПозиций КАК тблКоличествоПозиций | ПО тблРеализации.Ссылка = тблКоличествоПозиций.Ссылка | ЛЕВОЕ СОЕДИНЕНИЕ тблДвиженияТары1 КАК тблДвиженияТары1 | ПО тблРеализации.Ссылка = тблДвиженияТары1.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ тблДвиженияТары2 КАК тблДвиженияТары2 | ПО тблРеализации.Ссылка = тблДвиженияТары2.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ тблДвиженияТары3 КАК тблДвиженияТары3 | ПО тблРеализации.Ссылка = тблДвиженияТары3.Регистратор |{ГДЕ | тблРеализации.Ссылка.*, | тблДатыПервогоПроведения.ДатаПервогоПроведения, | тблРеализации.Дата, | тблРеализации.ДатаОтгрузки, | тблРеализации.Контрагент.*, | тблРеализации.ТранспортнаяКомпанния.*, | тблРеализации.Экспедитор.*, | тблКоличествоПозиций.КоличествоПозиций, | тблРеализации.КоличествоМест, | тблРеализации.Сумма, | тблРеализации.Вес, | тблРеализации.Объем} | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | тблПричиныОтклонений.Ссылка, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | тблПричиныОтклонений.Причина, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL |ИЗ | тблПричиныОтклонений КАК тблПричиныОтклонений | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | РеализацияТоваровУслуг.Комментарий, | РеализацияТоваровУслуг.КомментарийДляСклада, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслуг.Проведен = ИСТИНА | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | РеализацияТоваровУслугSV_СкладскиеЗатраты.ОбъектЗатрат, | СУММА(РеализацияТоваровУслугSV_СкладскиеЗатраты.Сумма), | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | NULL |ИЗ | Документ.РеализацияТоваровУслуг.SV_СкладскиеЗатраты КАК РеализацияТоваровУслугSV_СкладскиеЗатраты |ГДЕ | РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка.Проведен = ИСТИНА | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугSV_СкладскиеЗатраты.Ссылка, | РеализацияТоваровУслугSV_СкладскиеЗатраты.ОбъектЗатрат |{УПОРЯДОЧИТЬ ПО | Реализация.*, | ДатаПервогоПроведения, | Дата, | ДатаОтгрузки, | Контрагент.*, | ТранспортнаяКомпанния.*, | Экспедитор.*, | КоличествоПозиций, | КоличествоМест, | Сумма, | Вес, | Объем, | Комментарий, | КомментарийДляСклада, | ПричинаОтклонений, | ОбъектЗатрат, | СуммаЗатрат, | НачальныйОстатокТары1, | КонечныйОстатокТары1, | ПриходТары1, | РасходТары1, | ОборотТары1, | НачальныйОстатокТары2, | КонечныйОстатокТары2, | ПриходТары2, | РасходТары2, | ОборотТары2, | НачальныйОстатокТары3, | КонечныйОстатокТары3, | ПриходТары3, | РасходТары3, | ОборотТары3, | СсылкаПредставление} |ИТОГИ | СУММА(КоличествоПозиций), | СУММА(КоличествоМест), | СУММА(Сумма), | СУММА(Вес), | СУММА(Объем), | СУММА(СуммаЗатрат), | СУММА(ПриходТары1), | СУММА(РасходТары1), | СУММА(ОборотТары1), | СУММА(ПриходТары2), | СУММА(РасходТары2), | СУММА(ОборотТары2), | СУММА(ПриходТары3), | СУММА(РасходТары3), | СУММА(ОборотТары3) |ПО | ОБЩИЕ |{ИТОГИ ПО | Реализация.*, | Контрагент.*, | ТранспортнаяКомпанния.*, | Экспедитор.*, | ПричинаОтклонений, | ОбъектЗатрат, | Комментарий, | КомментарийДляСклада}" |
|||
2
Nuobu
25.08.16
✎
11:13
|
Пробовал играться с размещением?
|
|||
3
nemoxp
25.08.16
✎
11:16
|
И почемуто "Контрагент", "транспортная компания", "Экспедитор" - на одной строке группировки, а "Комментарий" и "Комментарий для склада" - на другой...
(2) пробовал. Если ставить "В отдельных колонках" - также. Если "С группировками" - тоже без изменений... |
|||
4
Nuobu
25.08.16
✎
11:17
|
(3) Это положение. А я писал - размещение. Напиши туда "Контрагент.ТранспортнаяКомпания" или еще что-то в этом роде.
|
|||
5
nemoxp
25.08.16
✎
11:19
|
(4) Это ведь путь к данным? "Контрагент", "транспортная компания", "Экспедитор" - отдельно выбираются в запросе. Это разные значения.
|
|||
6
nemoxp
25.08.16
✎
11:20
|
УниверсальныйОтчет.ДобавитьДополнительноеПоле("Контрагент", "Контрагент.ТранспортнаяКомпания");
Так что ли? Второй параметр - размещение. |
|||
7
Nuobu
25.08.16
✎
11:21
|
(6) Да, я думал так, но я ошибся.
|
|||
8
nemoxp
25.08.16
✎
11:33
|
Голову сломал - не могу понять в чем беда... Может кто-то подкинет идею? Спасибо.
|
|||
9
nemoxp
25.08.16
✎
12:36
|
АПП, хелп плиз
|
|||
10
nemoxp
26.08.16
✎
10:48
|
апп
|
|||
11
nemoxp
26.08.16
✎
13:42
|
Пустые строки и группировки удалось убрать переделав запрос: убрал в итоговой выборке объединения и переделал на левое соединение.
А вот с дополнительными полями по-прежнему беда. Не хочет первое поле в списке отображаться отдельно... |
|||
12
nemoxp
26.08.16
✎
13:43
|
(11) Видимо для универсального отчета не вариант делать запросы, где в объедененных запросах есть NULL, он их как пустые группировки вставляет...
|
|||
13
nemoxp
26.08.16
✎
14:07
|
Кто знает, как настроить отчет, чтобы в группировках по строкам вычислялось среднее значение ресурсов, а в итогах сумма по верхнему уровню группировки?
|
|||
14
John83
26.08.16
✎
14:22
|
(13) в итогах писать через ВЫБОР КОГДА
типа ВЫБОР КОГДА Реализация is not null тогда Среднее() и т.д. |
|||
15
John83
26.08.16
✎
14:23
|
(0) запрос не смотрел..
контрагента скорее всего получится вывести через Реализация товаров услуг.Контрагент и так же с остальными полями, т.е. отдельно колонку без привязки к группировке не выведет |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |