По теме из базы знаний
- Выгрузка-загрузка любых данных из 1С (и измененных) в XML между похожими конфигурациями (ФАЙЛ, HTTP, COM) ЛЮБЫХ баз 1С 8.1-8.3 с обработкой и поиском данных по произвольным полям поиска
- Менеджер по работе с Google календарем
- Разные хм... неожиданности при работе с УТ 11 и платформой
- Параметры выбора и связи параметров выбора в панели быстрых настроек отчета СКД
- Программная работа с настройками СКД
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Этот очет мне уже достался таким. И я так подозреваю не только у меня были сложности с отбором. Потому что предыдущий сотрудник отбор по периоду добавлял в код, где компонуется сам отчет. Вот так
ПолучитьДанныеИсточника это функция, которая получает запросом данные.
ВнешниеИсточники=Новый Структура("ТЗ",ПолучитьДанныеИсточника(ДатаНачала,ДатаОкончания));
ДокументРезультат.Очистить();
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, ВнешниеИсточники, ДанныеРасшифровки);
ПолучитьДанныеИсточника это функция, которая получает запросом данные.
(19) по этому фрагменту коду понятно, что стандартная компоновка отключена.
Значит есть вероятность, что в программной компоновке стандартное поведение отбора отключили.
Я бы еще в настройке компоновки создал в качестве теста новый вариант с нуля чтобы флажки Авто стали на свои места и проверил формирование с отборами
Значит есть вероятность, что в программной компоновке стандартное поведение отбора отключили.
Я бы еще в настройке компоновки создал в качестве теста новый вариант с нуля чтобы флажки Авто стали на свои места и проверил формирование с отборами
Посмотрите модуль объекта для отчета.
Там может быть процедура вроде этой:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
Если ее заремить, то отчет будет вести себя стандартно.
Там может быть процедура вроде этой:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
Если ее заремить, то отчет будет вести себя стандартно.
Платформа: (8.3.18.1289)
Ха-Ха! я тоже наткнулся на подобную проблему.
Было: отчет на СКД с кучей временных таблиц и разнообразными джойнами.
Отбор по контрагенту работал выборочно. по каким-то КА работает, по другим не работает. без отбора выводит всех .
Корень зла крылся в том, что при формировании одной из промежуточных временных таблиц был юнион одной таблицы с джойном пары других таблиц. В результате джойна могли появляться NULL значения.
Заменил левый джойн на полный, для того чтобы не получалось NULL значений в ссылочных колонках и isnull( ХЗ, 0) в числовых колонках.
В итоге, по всей цепочке временных таблиц и в итоговой выборке NULL пропали и отбор СКД заработал адекватно.
По логике моего отчета Контрагент должен быть заполнен какой-либо вменяемой ссылкой, не пустым значением.
Если по вашей логике допустимы пустые значения - то их можно заполнить через isNull( HZ , Значение(Справочник.какойто.пустаяссылка))
Мораль - СКД не любит NULL в колонках , по которым выполняется отбор.
Ха-Ха! я тоже наткнулся на подобную проблему.
Было: отчет на СКД с кучей временных таблиц и разнообразными джойнами.
Отбор по контрагенту работал выборочно. по каким-то КА работает, по другим не работает. без отбора выводит всех .
Корень зла крылся в том, что при формировании одной из промежуточных временных таблиц был юнион одной таблицы с джойном пары других таблиц. В результате джойна могли появляться NULL значения.
Заменил левый джойн на полный, для того чтобы не получалось NULL значений в ссылочных колонках и isnull( ХЗ, 0) в числовых колонках.
В итоге, по всей цепочке временных таблиц и в итоговой выборке NULL пропали и отбор СКД заработал адекватно.
По логике моего отчета Контрагент должен быть заполнен какой-либо вменяемой ссылкой, не пустым значением.
Если по вашей логике допустимы пустые значения - то их можно заполнить через isNull( HZ , Значение(Справочник.какойто.пустаяссылка))
Мораль - СКД не любит NULL в колонках , по которым выполняется отбор.
А я вот с чем столкнулся - СКД, набор данных - объект, естественно типы все проставил и отбор, например, "Номенклатура Равно " работает, а вот отбор вида "Номенклатура.Наименование Содержит " ... - не работает! Как это лечить?
(29)
И еще интересный момент - если я добавляю в СКД сортировку по любому реквизиту из Номенклатуры - начинает и отбор работать. Если убрать сортировку - и отбор перестает работать.
Естественно в отладчике в обоих случаях и отбор есть и галочка Истина и всё такое...
И еще интересный момент - если я добавляю в СКД сортировку по любому реквизиту из Номенклатуры - начинает и отбор работать. Если убрать сортировку - и отбор перестает работать.
Естественно в отладчике в обоих случаях и отбор есть и галочка Истина и всё такое...
Попробуйте в конфигураторе, в режиме конструктора запроса в СКД, задать отбор по нужному Полю на вкладке "Компановка данных" - вкладка "Условия".
В СКД будет добавлено необязятельное условие по выбранному Полю.
После этого отбор по этому Полю начинает работать.
В СКД будет добавлено необязятельное условие по выбранному Полю.
После этого отбор по этому Полю начинает работать.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот