Переопределение настроек отчета на СКД. 1С: БСП

24.04.20

Разработка - БСП (Библиотека стандартных подсистем)

Изменение настроек СКД отчета без доработки модулей БСП

Перестаньте править БСП!

Вы вывели отбор подразделений на форму списком, а список только для чтения и содержит все подразделения без иерархии, а вы можете проставить галочки, то вот пример как для конкретного отчета переопределить список подразделений для выбора.
Конфигурация 1С:ERP Управление предприятием 2 (2.4.9.82)

Пишем в модуле отчета:

Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт
	Если ПолучитьФункциональнуюОпцию("ИспользоватьПодразделения") 
		И СвойстваНастройки.ОписаниеТипов.Типы().Количество() = 1
		И СвойстваНастройки.ОписаниеТипов.СодержитТип(Тип("СправочникСсылка.СтруктураПредприятия")) Тогда
		СвойстваНастройки.ЗапросЗначенийВыбора = ЗапросДляОтбораПодразделение();
		СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями = Ложь;
	КонецЕсли;	
КонецПроцедуры

Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, НастройкиОтчета) Экспорт
	 НастройкиОтчета.События.ПриОпределенииПараметровВыбора=истина;
КонецПроцедуры

Функция ЗапросДляОтбораПодразделение()
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
	               |	СтруктураПредприятия.Ссылка КАК Ссылка
	               |ИЗ
	               |	Справочник.СтруктураПредприятия КАК СтруктураПредприятия
	               |ГДЕ
	               |	СтруктураПредприятия.Родитель.Код = ""000000190""
	               |
	               |УПОРЯДОЧИТЬ ПО
	               |	СтруктураПредприятия.Наименование";
	
	Возврат Запрос;
КонецФункции

Процедура "ОпределитьНастройкиФормы" вызывается из любого отчета в попытке из модуля, в ней мы включаем запуск процедуры из модуля "ПриОпределенииПараметровВыбора" (есть еще глобальная в БСП, но нам хочется доработать только наш отчет, из глобального процедуры забираем код и редактируем его (в нашем случае запрос), сначала отработает глобальная процедура, затем наша, только для нашего отчета.
Отладчиком и стеком вызова можно увидеть очень много других настроек, которые можно изменить без правки БСП.

БСП СКД

См. также

Шаблон многопоточного выполнения фонового задания

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Пример шаблона для многопоточного выполнения фонового задания на основе БСП. Шаблоны сделаны для процедуры и функции.

2 стартмани

03.05.2024    674    6    Hitcher    2    

7

БСП. Добавляем отчет в меню Отчеты

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Добавим новый отчет в меню нового документа средствами БСП.

02.04.2024    3520    John_d    10    

92

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

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

01.03.2024    2070    dimanich70    8    

14

Заполнение поля адреса в своей обработке [БСП]

Механизмы платформы 1С БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Небольшая шпаргалка по функциям БСП касательно адреса. Так скажем, еще один способ помимо https://infostart.ru/1c/articles/1060970/

12.02.2024    850    FilippovRI    0    

16

Расширяем возможности дополнительных обработок и настраиваем их отладку

БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Уже не одна веб-страница исписана знаниями о дополнительных обработках, как создать, как подключить. Есть масса вариантов, как их можно отладить. Я разобрался в кишках работы библиотеки и покажу, как можно расширить возможности дополнительных отчетов, а также покажу удобный способ отладки.

07.02.2024    2784    YA_418728146    11    

47

1С:БСП Дополнительные реквизиты и сведения

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Бесплатно (free)

В этой статье расскажем об архитектуре, использовании и особенностях реализации подсистемы «Свойства» из инструментария разработчика «1С:Библиотека стандартных подсистем» (1С: БСП).

19.01.2024    7290    PROSTO-1C    5    

47
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 24.04.20 10:26
Сообщение было скрыто модератором.
...
2. klimsrv 18 24.04.20 10:36 Сейчас в теме
(1) это код из БСП, вы можете не читать, ни какого принуждения
3. VmvLer 24.04.20 11:44 Сейчас в теме
(2) если это
 |ГДЕ
	               |	СтруктураПредприятия.Родитель.Код = ""000000190""

код из БСП, то моя система ценностей разрушена.

прочтите свою тему раз 10 и получите удовольствие от четкости изложения и того
чему учат в с школе: завязка, кульминация, финал...
и конце сочинения читатель должен глубоко задуматься.

я не задумался, можете сказать почему?
4. klimsrv 18 24.04.20 11:52 Сейчас в теме
(3) Я понимаю, что вы бы определили параметр запроса через НайтиПоКоду или НайтиПоНаименованию, или добавили предопределенный элемент в типовой справочник, вас бы это устроило, а может даже вы бы добавили допник и по его значению бы сделали отбор, а может вы бы добавили просто реквизит в типовой справочник, но поймите, суть поста вовсе не в этом, это лишь пример.

Я могу сказать почему вы ничего не поняли, потому, что никогда не добавляли в СКД отбор в списке по подразделению (СтруктураПредприятия) и у вас не было необходимости поставить фильтр, не сделав ни одной доработки в типовых объектах.

Данный топик был добавлен для поиска, что бы другие программисты могли вбить в гугл запрос и получить готовое решение.

Вы можете пройти писать сочинения, а тут просто готовый код, готовый к использованию для решения конкретной задачи без изменения типовых модулей и справочников.
Риник; motiask; +2 Ответить
5. пользователь 24.04.20 12:07
Сообщение было скрыто модератором.
...
6. klimsrv 18 24.04.20 12:13 Сейчас в теме
(5) Действительно, сделайте такое приобретение, может станете писать пунктуационно правильно . И давайте, я сам решу, что буду приобретать
7. PerlAmutor 129 27.04.20 06:21 Сейчас в теме
Использую этот подход наверное уже год, т.к. подсистема Вариантов Отчетов в БСП делает свой запрос к справочнику СтруктураПредприятия по всем подразделениям и помещает результат в СписокЗначений. А как вы знаете, если элемент формы использует список значений, то осуществлять поиск по коду уже не получится. В случае с огромным количеством подразделений это становится головной болью и отнимает время.

Процедура ПриОпределенииПараметровВыбора(Форма, СвойстваНастройки) Экспорт

    Если ТипЗнч(СвойстваНастройки.ДоступнаяНастройкаКД) = Тип("ДоступныйПараметрКомпоновкиДанных")
        И СвойстваНастройки.ДоступнаяНастройкаКД.Параметр = Новый ПараметрКомпоновкиДанных("Подразделение") Тогда

        СвойстваНастройки.БыстрыйВыбор = Истина;

        Если Не ПустаяСтрока(СвойстваНастройки.ЗапросЗначенийВыбора.Текст) Тогда

            СвойстваНастройки.ЗапросЗначенийВыбора.Текст = ""; // Если тут текст запроса стереть, то используется стандартный

        КонецЕсли;

    КонецЕсли;

КонецПроцедуры
Показать
8. gorakh 26 06.05.20 22:39 Сейчас в теме
Набор настроек зависит от версии БСП. Сталкивался с этим.
Оставьте свое сообщение