|
Универсальный запрос вставил примитивный запрос но не выдает ничего, в чем я лох | ☑ | ||
---|---|---|---|---|
0
skt-roman
16.09.21
✎
20:01
|
Универсальный запрос вставил примитивный запрос но не выдает ничего, в чем я лох
Процедура УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт // Дополнительные параметры, переданные из отчета, вызвавшего расшифровку. // Информация, передаваемая в переменной ДополнительныеПараметры, может быть использована // для реализации специфичных для данного отчета параметрических настроек. // Настройка общих параметров универсального отчета УправлениеОтчетами.ВосстановитьРеквизитыОтчета(ЭтотОбъект, ДополнительныеПараметры); // Содержит название отчета, которое будет выводиться в шапке. // Тип: Строка. // Пример: // УниверсальныйОтчет.мНазваниеОтчета = "Название отчета"; УниверсальныйОтчет.мНазваниеОтчета = СокрЛП(ЭтотОбъект.Метаданные().Синоним); // Содержит признак необходимости отображения надписи и поля выбора раздела учета в форме настройки. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.мВыбиратьИмяРегистра = Истина; УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь; // Содержит имя регистра, по метаданным которого будет выполняться заполнение настроек отчета. // Тип: Строка. // Пример: // УниверсальныйОтчет.ИмяРегистра = "ТоварыНаСкладах"; // Содержит значение используемого режима ввода периода. // Тип: Число. // Возможные значения: 0 - произвольный период, 1 - на дату, 2 - неделя, 3 - декада, 4 - месяц, 5 - квартал, 6 - полугодие, 7 - год // Значение по умолчанию: 0 // Пример: // УниверсальныйОтчет.мРежимВводаПериода = 0; //УниверсальныйОтчет.мРежимВводаПериода = 0; // Содержит признак необходимости вывода отрицательных значений показателей красным цветом. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ОтрицательноеКрасным = Истина; //УниверсальныйОтчет.ОтрицательноеКрасным = ЛОЖЬ; // Содержит признак необходимости вывода в отчет общих итогов. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ВыводитьОбщиеИтоги = Ложь; //УниверсальныйОтчет.ВыводитьОбщиеИтоги = ЛОЖЬ; // Содержит признак необходимости вывода детальных записей в отчет. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ВыводитьДетальныеЗаписи = Истина; //УниверсальныйОтчет.ВыводитьДетальныеЗаписи = ЛОЖЬ; // Содержит признак необходимости отображения флага использования свойств и категорий в форме настройки. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Ложь; //УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = ЛОЖЬ; // Содержит признак использования свойств и категорий при заполнении настроек отчета. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.ИспользоватьСвойстваИКатегории = Истина; //УниверсальныйОтчет.ИспользоватьСвойстваИКатегории = ЛОЖЬ; // Содержит признак использования простой формы настроек отчета без группировок колонок. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.мРежимФормыНастройкиБезГруппировокКолонок = Истина; //УниверсальныйОтчет.мРежимФормыНастройкиБезГруппировокКолонок = ЛОЖЬ; ТекстЗапроса = " ВЫБРАТЬ | ЗаказПокупателя.Ссылка КАК Заказ | | |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ЗаказПокупателя.ССылка = РеализацияТоваровУслуг.Сделка |ГДЕ | ЗаказПокупателя.Проведен | И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL | //и ЗаказПокупателя.Дата МЕЖДУ &НачалоПериода И &КонецПериода "; // Инициализация текста запроса построителя отчета УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса; // Необходимо вызывать для каждого поля запроса. // УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить(<ИмяПоля>, <ПредставлениеПоля>); //УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Подразделение", "Подразделение"); //УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("НоменклатурнаяГруппа", "Номенклатурная группа"); УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Заказ","Заказ покупателя"); // Добавление показателей // Необходимо вызывать для каждого добавляемого показателя. // УниверсальныйОтчет.ДобавитьПоказатель(<ИмяПоказателя>, <ПредставлениеПоказателя>, <ВключенПоУмолчанию>, <Формат>, <ИмяГруппы>, <ПредставлениеГруппы>); // Добавление предопределенных группировок строк отчета. // Необходимо вызывать для каждой добавляемой группировки строки. // УниверсальныйОтчет.ДобавитьИзмерениеСтроки(<ПутьКДанным>); //УниверсальныйОтчет.ДобавитьИзмерениеСтроки("ЗаказПокупателя"); // Добавление предопределенных группировок колонок отчета. // Необходимо вызывать для каждой добавляемой группировки колонки. // УниверсальныйОтчет.ДобавитьИзмерениеКолонки(<ПутьКДанным>); // Добавление предопределенных отборов отчета. // Необходимо вызывать для каждого добавляемого отбора. // УниверсальныйОтчет.ДобавитьОтбор(<ПутьКДанным>); // Добавление настроек сортировки отчета. // Необходимо вызывать для каждого поля порядка. //ДобавитьПорядок(ПутьКДанным, Знач Направление = Неопределено); // Установка связи подчиненных и родительских полей // УниверсальныйОтчет.УстановитьСвязьПолей(<ПутьКДанным>, <ПутьКДанным>); // Установка связи полей и измерений // УниверсальныйОтчет.УстановитьСвязьПоляИИзмерения(<ИмяПоля>, <ИмяИзмерения>); // Установка представлений полей УниверсальныйОтчет.УстановитьПредставленияПолей(УниверсальныйОтчет.мСтруктураПредставлениеПолей, УниверсальныйОтчет.ПостроительОтчета); // Установка типов значений свойств в отборах отчета УниверсальныйОтчет.УстановитьТипыЗначенийСвойствДляОтбора(); // Заполнение начальных настроек универсального отчета УниверсальныйОтчет.УстановитьНачальныеНастройки(Ложь); // Добавление дополнительных полей // Необходимо вызывать для каждого добавляемого дополнительного поля. //УниверсальныйОтчет.ДобавитьДополнительноеПоле("НомерЗадания", ТипРазмещенияРеквизитовИзмерений.Отдельно, 3); УниверсальныйОтчет.ДобавитьДополнительноеПоле("ЗаказПокупателя", ТипРазмещенияРеквизитовИзмерений.Отдельно, 3); КонецПроцедуры // УстановитьНачальныеНастройки() |
|||
1
youalex
16.09.21
✎
20:13
|
Можно в отладке посмотреть, какой запрос в итоге формирует Построитель:
ПостроительОтчета (ReportBuilder) ПолучитьЗапрос (GetQuery) Синтаксис: ПолучитьЗапрос() Возвращаемое значение: Тип: Запрос. |
|||
2
1Сергей
16.09.21
✎
20:13
|
Необходимо отобрать все проведенные заказы, которые не указаны ни в одной РТУ?
|
|||
3
lubitelxml
16.09.21
✎
20:16
|
(2) если было ВНУТРЕННЕЕ СОЕДИНЕНИЕ, то да, а тут ЛЕВОЕ... непонятно зачем
|
|||
4
hhhh
16.09.21
✎
20:18
|
может у него во всех рту заказ указан.
|
|||
5
skt-roman
16.09.21
✎
20:50
|
Господа через консоль запросов все работает, а через универсальный отчет нуль
|
|||
6
skt-roman
16.09.21
✎
20:51
|
Каких параметров не хватает не пойму
|
|||
7
skt-roman
16.09.21
✎
20:55
|
Запрос примитивный
|
|||
8
Ёпрст
16.09.21
✎
21:38
|
(0) УниверсальныйОтчет.ДобавитьДополнительноеПоле("ЗаказПокупателя"
нет такого поля |
|||
9
skt-roman
16.09.21
✎
21:56
|
(8)
Отлично ну поменял УниверсальныйОтчет.ДобавитьДополнительноеПоле("Заказ", ТипРазмещенияРеквизитовИзмерений.Отдельно, 3); но толку никакого |
|||
10
Ёпрст
16.09.21
✎
22:25
|
(9) отладчиком проверить, какой текст запроса у построителя
|
|||
11
Ёпрст
16.09.21
✎
22:29
|
ну и так еще, до кучи:
ТекстЗапроса = " ВЫБРАТЬ | ЗаказПокупателя.Ссылка КАК Заказ |{ Выбрать Заказ.*} |
|||
12
skt-roman
16.09.21
✎
22:32
|
(10) запрос простейший, в консоли все окей, а в универсальном нет, текст запроса там что меняется?
|
|||
13
Ёпрст
16.09.21
✎
22:44
|
(12) если не установлены поля, то да..
|
|||
14
skt-roman
17.09.21
✎
11:07
|
Так и не понял что именно поправить
|
|||
15
VladZ
17.09.21
✎
11:11
|
(0) Сделай на СКД и забей на УниверсальныйОтчет
|
|||
16
1Сергей
17.09.21
✎
11:11
|
(3) Еслу у него в ГДЕ прописано условие ко второй таблице, то похер, левое там или правое - превратиться во внутреннее
|
|||
17
hhhh
17.09.21
✎
11:11
|
(14) наверно, как в скд. Описать список группировок, список выбранных полей и так далее.
|
|||
18
successful
17.09.21
✎
11:29
|
в запросе не указал поля,условия и прочие инструкции для построителя...
|
|||
19
Ёпрст
17.09.21
✎
11:38
|
(14) как в (11) для начала.
Аналогично для условий, сортировок и т.д. |
|||
20
youalex
17.09.21
✎
11:38
|
(14) посмотри (1) перед ПостроительОтчета.Выполнить()
Можешь там же сразу рассчитать ПостроительОтчета.ПолучитьЗапрос().Выполнить().Пустой() Если пустой - кури текст запроса и параметры в ПостроительОтчета.ПолучитьЗапрос() А так можно до бесконечности гадать. |
|||
21
skt-roman
17.09.21
✎
12:02
|
(18) Запрос примитивный, что там еще нужно добавить?
|
|||
22
Ёпрст
17.09.21
✎
12:04
|
(21) см (11)
|
|||
23
skt-roman
17.09.21
✎
12:04
|
(19)
Добавление |{ Выбрать Заказ.*} Не дает результата |
|||
24
Ёпрст
17.09.21
✎
12:05
|
в отладчике, перед выполнить() какой текст запроса имеет построитель ? С каими параметрами ?
|
|||
25
skt-roman
17.09.21
✎
12:08
|
(24) Как посмотреть?
|
|||
26
skt-roman
17.09.21
✎
12:12
|
Вылетает по
Функция ВыводВозможен() Результат = Истина; Если ПостроительОтчета.ИзмеренияСтроки.Количество() = 0 И ПостроительОтчета.ИзмеренияКолонки.Количество() = 0 И ПостроительОтчета.ВыбранныеПоля.Количество() = 0 Тогда Результат = Ложь; КонецЕсли; Возврат Результат; |
|||
27
successful
17.09.21
✎
12:18
|
ВЫБРАТЬ
ЗаказПокупателя.Ссылка КАК Заказ {ВЫБРАТЬ Заказ.*} ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО ЗаказПокупателя.Ссылка = РеализацияТоваровУслуг.Сделка ГДЕ ЗаказПокупателя.Проведен И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL {ГДЕ ЗаказПокупателя.Ссылка.*} {УПОРЯДОЧИТЬ ПО Заказ.*} ИТОГИ ПО ОБЩИЕ {ИТОГИ ПО Заказ.*} |
|||
28
skt-roman
17.09.21
✎
12:18
|
В построителе запрос
ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК Заказ ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО ЗаказПокупателя.Ссылка = РеализацияТоваровУслуг.Сделка ГДЕ ЗаказПокупателя.Проведен И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL |
|||
29
вым
17.09.21
✎
12:20
|
РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL
сюда копай |
|||
30
skt-roman
17.09.21
✎
12:23
|
(29) В консоли все работает, в универсальном отчете нет
|
|||
31
skt-roman
17.09.21
✎
12:25
|
(27) Дохлый бобик, не работает, попробовал
|
|||
32
вым
17.09.21
✎
12:27
|
(30) тебе интересно почему там работает, а там нет или же тебе надо чтобы просто работало? ... думаем))
|
|||
33
successful
17.09.21
✎
12:28
|
ВСЕ РАБОТАЕТ!!!
// Процедура установки начальных настроек отчета с использованием текста запроса // Процедура УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт // Настройка общих параметров универсального отчета // Содержит название отчета, которое будет выводиться в шапке. // Тип: Строка. // Пример: // УниверсальныйОтчет.мНазваниеОтчета = "Название отчета"; УниверсальныйОтчет.мНазваниеОтчета = СокрЛП(ЭтотОбъект.Метаданные().Синоним); // Содержит признак необходимости отображения надписи и поля выбора раздела учета в форме настройки. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь; УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь; // Содержит имя регистра, по метаданным которого будет выполняться заполнение настроек отчета. // Тип: Строка. // Пример: // УниверсальныйОтчет.ИмяРегистра = "ТоварыНаСкладах"; // Содержит признак необходимости вывода отрицательных значений показателей красным цветом. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ОтрицательноеКрасным = Истина; // Содержит признак необходимости вывода в отчет общих итогов. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.ВыводитьОбщиеИтоги = Ложь; // Содержит признак необходимости вывода детальных записей в отчет. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ВыводитьДетальныеЗаписи = Истина; // Содержит признак необходимости отображения флага использования свойств и категорий в форме настройки. // Тип: Булево. // Значение по умолчанию: Истина. // Пример: // УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Ложь; //УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Истина; // Содержит признак использования свойств и категорий при заполнении настроек отчета. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.ИспользоватьСвойстваИКатегории = Истина; // Содержит признак использования простой формы настроек отчета без группировок колонок. // Тип: Булево. // Значение по умолчанию: Ложь. // Пример: // УниверсальныйОтчет.мРежимФормыНастройкиБезГруппировокКолонок = Истина; // Дополнительные параметры, переданные из отчета, вызвавшего расшифровку. // Информация, передаваемая в переменной ДополнительныеПараметры, может быть использована // для реализации специфичных для данного отчета параметрических настроек. // Описание исходного текста запроса. ТекстЗапроса = "ВЫБРАТЬ | ЗаказПокупателя.Ссылка КАК Заказ |{ВЫБРАТЬ | Заказ.*} |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ЗаказПокупателя.Ссылка = РеализацияТоваровУслуг.Сделка |ГДЕ | ЗаказПокупателя.Проведен | И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL |{ГДЕ | ЗаказПокупателя.Ссылка.*} |{УПОРЯДОЧИТЬ ПО | Заказ.*} |ИТОГИ ПО | ОБЩИЕ |{ИТОГИ ПО | Заказ.*}"; // В универсальном отчете включен флаг использования свойств и категорий. Если УниверсальныйОтчет.ИспользоватьСвойстваИКатегории Тогда // Добавление свойств и категорий поля запроса в таблицу полей. // Необходимо вызывать для каждого поля запроса, предоставляющего возможность использования свойств и категорий. // УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(<ПсевдонимТаблицы>.<Поле> , <ПсевдонимПоля>, <Представление>, <Назначение>); // Добавление свойств и категорий в исходный текст запроса. УниверсальныйОтчет.ДобавитьВТекстЗапросаСвойстваИКатегории(ТекстЗапроса); КонецЕсли; // Инициализация текста запроса построителя отчета УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса; // Представления полей отчета. // Необходимо вызывать для каждого поля запроса. // УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить(<ИмяПоля>, <ПредставлениеПоля>); // УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Номенклатура", "Номенклатура"); // Добавление показателей // УниверсальныйОтчет.ДобавитьПоказатель(<ИмяПоказателя>, <ПредставлениеПоказателя>, <ВключенПоУмолчанию>, <Формат>, <ИмяГруппы>, <ПредставлениеГруппы>); // Добавление предопределенных группировок строк отчета. // Необходимо вызывать для каждой добавляемой группировки строки. // УниверсальныйОтчет.ДобавитьИзмерениеСтроки(<ПутьКДанным>); // УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Номенклатура"); // Добавление предопределенных группировок колонок отчета. // Необходимо вызывать для каждой добавляемой группировки колонки. // УниверсальныйОтчет.ДобавитьИзмерениеКолонки(<ПутьКДанным>); // Добавление предопределенных отборов отчета. // Необходимо вызывать для каждого добавляемого отбора. // УниверсальныйОтчет.ДобавитьОтбор(<ПутьКДанным>); // Добавление предопределенных полей порядка отчета. // Необходимо вызывать для каждого добавляемого поля порядка. // УниверсальныйОтчет.ДобавитьПорядок(<ПутьКДанным>); // Установка связи подчиненных и родительских полей // УниверсальныйОтчет.УстановитьСвязьПолей(<ПутьКДанным>, <ПутьКДаннымРодитель>); // Установка связи полей и измерений // УниверсальныйОтчет.УстановитьСвязьПоляИИзмерения(<ИмяПоля>, <ИмяИзмерения>); // Установка представлений полей УниверсальныйОтчет.УстановитьПредставленияПолей(УниверсальныйОтчет.мСтруктураПредставлениеПолей, УниверсальныйОтчет.ПостроительОтчета); // Установка типов значений свойств в отборах отчета УниверсальныйОтчет.УстановитьТипыЗначенийСвойствДляОтбора(); // Заполнение начальных настроек универсального отчета УниверсальныйОтчет.УстановитьНачальныеНастройки(Ложь); // Добавление дополнительных полей // Необходимо вызывать для каждого добавляемого дополнительного поля. // УниверсальныйОтчет.ДобавитьДополнительноеПоле(<ПутьКДанным>, <Размещение>, <Положение>); КонецПроцедуры // УстановитьНачальныеНастройки() |
|||
34
skt-roman
17.09.21
✎
12:33
|
(33) вставил целиком эту процедуру, но не работает
|
|||
35
skt-roman
17.09.21
✎
12:35
|
мой простенький запрос в консоли работает, а вот в универсальном отчете нет, чего не хватает?
|
|||
36
Gucci76
17.09.21
✎
12:40
|
Я в ЗУП не так работаю с универсальным отчетом - я в толстом клиенте через ЕЩЕ открываю схему отчета.
|
|||
37
successful
17.09.21
✎
12:42
|
а ты в отчете в режиме предприятия добавил заказ в группировке строк
|
|||
38
skt-roman
17.09.21
✎
12:49
|
(37) Добавил
УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Заказ"); Помогло |
|||
39
серый КТУЛХУ
17.09.21
✎
13:02
|
Перенечи условие на null связанной таблицы из фильтра выборки в условие связи:
|ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ЗаказПокупателя.Ссылка = РеализацияТоваровУслуг.Сделка | И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL |ГДЕ | ЗаказПокупателя.Проведен |
|||
40
hhhh
17.09.21
✎
13:42
|
(39) нет, там всё правильно, именно эту строчку нужно в ГДЕ.
|
|||
41
skt-roman
17.09.21
✎
17:21
|
(37) строки в запросе {} все создаются вручную?
|
|||
42
Kassern
17.09.21
✎
17:22
|
(41) речь про характеристики? Если так, то в конструкторе можно добавить
|
|||
43
Kassern
17.09.21
✎
17:26
|
(42) так же параметры виртуальной таблицы на вкладке компоновки данных так же {} проставляет. Можно и в основных параметрах вручную в скобки заключить, тогда автоматом перейдет в вкладку компоновки.
|
|||
44
DrShad
18.09.21
✎
09:38
|
делай отчет на СКД и не парь себе и людям мозг
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |