Отбор в СКД

1. shua1 16.04.24 13:07 Сейчас в теме
Здравствуйте,
Такая проблема, не могу найти ошибку по отбору, в отчете отбор работает только, когда ты перезаходишь в него, с чем может быть связано и что проверить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. soft_wind 16.04.24 15:24 Сейчас в теме
Видимо перед выполнение отчета вы грузите сохраненные ранее настройки
в т.ч. и старый отбор
т.е. новый не учитывается
при выходе, сохраняется новый отбор в настройках
и при новом открытии и выполнении отчета применяются предыдущие настройки отбора
(это предположение)
3. shua1 16.04.24 15:31 Сейчас в теме
(2) Ну да, примерно так, ставлю отбор, он не применяется, закрываю отчет и открываю заново, мой отбор работает.
А вот если установленный отбор снять, то отчет видит, что я снял отбор и заполняется.
Во только как исправить
4. soft_wind 16.04.24 15:37 Сейчас в теме
в модуле отчета проверьте эту процедуру

Процедура ПриКомпоновкеРезультата_ШАБЛОН(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)

уберите из нее все лишнее, (для проверки просто отключите ее)
5. soft_wind 16.04.24 15:40 Сейчас в теме
а отчет какой встроенный или внешний?
переименуйте его, запустите как внешний
6. shua1 17.04.24 10:35 Сейчас в теме
(5) у меня вот

Процедура ОбработкаСобытияПриКомпоновкеРезультата(ОтчетОбъект, ДокументРезультат, ДанныеРасшифровки) Экспорт 
  ДокументРезультат.Очистить();  
  // Параметры формирования отчета.  ПараметрыОтчета = ЗаполнитьПараметрыОтчетаИзНастроекКомпоновщика(ОтчетОбъект, ОтчетОбъект.КомпоновщикНастроек);
  //  Если ПараметрыОтчета = Неопределено Тогда 
 // ПараметрыОтчета.ОтчетОбъект.КомпоновщикНастроек.ПользовательскиеНастройки.Отбор.Очистить(); 
// Возврат;
  КонецЕсли; 
  // Формирование отчета и помещение результата во временное хранилище.  АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено);
  БухгалтерскиеОтчетыВызовСервера.СформироватьОтчет(ПараметрыОтчета, АдресХранилища);  
  // Получение результатов формирования и копирование результатов в параметр "ДокументРезультат".  ДанныеОтчета = ПолучитьИзВременногоХранилища(АдресХранилища);
  ДокументРезультат.Вывести(ДанныеОтчета.Результат);  
  ДанныеРасшифровки = ДанныеОтчета.ДанныеРасшифровки;  
  // Для рассылки отчета. Отчет рассылается всегда, даже если он пустой.  ДопСвойства = ОтчетОбъект.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства; 
  ДопСвойства.Вставить("ОтчетПустой", Ложь);  
    // Для рассылки отчета. Используется для заполнения параметров шаблонов текста письма, отправляемого в рассылке.
  МенеджерОтчета = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ОтчетОбъект.Метаданные().ПолноеИмя());  ДопСвойства.Вставить("ПредставлениеОтчета", МенеджерОтчета.ПолучитьТекстЗаголовка(ПараметрыОтчета));
    
КонецПроцедуры
Показать



Если последние два абзаца закомментить, я так понимаю это типовое, то отбор начинает работать наоборот, ставя отбор отчет работает, снимая, он его не обновляет
7. shua1 17.04.24 11:10 Сейчас в теме
(5) Еще такая штука, что как будто не обновляется вариант отчета, если зайти через еще, то отбор стоит и пофиг, что я его сбросил в настройках, ну исходя из последних абзацев
8. shua1 22.04.24 11:50 Сейчас в теме
Теперь не срабатывает отбор второй раз, при попытке сформировать с отбором, но если снять галку у варианта отчета в свойствах элемента пользовательских настроек выключить Отбор именно в пользовательском режиме, то все прекрасно начинает работать, может кто знает, как это обойти?
Уже сил нету
9. romulanin 22.04.24 13:49 Сейчас в теме
(8) поменяйте имя отчета, имя стандартного варианта отчета, имя настройки в пользовательском режиме, возможно пересекается
10. shua1 22.04.24 15:59 Сейчас в теме
(9) Это я сделал с самого начала, не помогло
11. shua1 22.04.24 16:54 Сейчас в теме
Решил вопрос таким методом там где я получал старые данные по настройкам, в них запихнул новые и отбор заработал
Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек.Настройки)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот