Форма выбора объекта(ов) метаданных и внешних обработок

13.03.17

Разработка - Инструментарий разработчика

Время от времени требуется вывести список для выбора одного или нескольких объектов метаданных и внешних обработок. Данная публикация содержит один из вариантов универсальных обработок с возможностью изменения списка выводимых классов объектов, самих объектов каждого класса, быстрым и удобным поиском, отображением количества дочерних элементов и некоторыми экспортными функциями, которые можно использовать в других разработках.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
формаВыбораобъектаМетаданных
.rar 13,31Kb
9 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Данная обработка выводит список объектов метаданных и внешних обработок. Для этого необходимо вызвать экспортную функцию Открыть() этой обработки.

// Функция - Открыть форму выбора объекта(ов) метаданных
//
// Параметры:
//	ПоказатьВнешниеОбработки			 -   Булево - признак вывода внешних обработок
//  МножественныйВыбор					 - 	 Булево - Истина - возможность выбора нескольких объектов 
//  ИмяСиноним							 - 	 Строка - "ИмяСиноним" - отображаются обе колонки
										 //  "Имя" - отображается только колонка Имя (техническое)
										 //  "Синоним" - отображается только колонка Синоним
// 	ОтображатьКоличествоДочернихЭлементов - Булево - Истина - в Группе элементов Дерева будет отображаться количество дочерних элементов
//  СписокДобавляемыхКлассовМетаданных	 - 	 ТаблицаЗначений - таблица добавляемых классов
											//Колонки:
											//- "Имя" - техническое имя класса объектов,пр., "Отчеты"
											//- "Представление" - отображаемый текст в колонке
											//- "КартинкаКласса" - картинка, которая будет выводится для данного класса (только в группе)
											//- "КартинкаОбъектов" - картинка объектов данного класса
											//-"МассивИсключаемыхОбъектовКласса" - Массив, содержащий техническое имя объектов, которые нужно исключить из списка

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

Для изменения данных, выводимых по умолчанию, необходимо произвести изменения в следующей процедуре:

Процедура  ПолучитьСписокВыводимыхКлассовМетаданных()

Где можно изменить:

- отображаемый текст класса: пр., "Отчеты" U94;; "Отчеты предприятия"

- картинку класса

- картинку объектов класса

- объекты, которые не будут отображаться, например, справочники и обработки технического (системного) характера

При вызове формы выбора объектов  вышеуказанной функцией Открыть() можно изменять состав списка метаданных, а также их картинки.

Вывод внешних обработок реализован для случая, когда доступ реализован через объект "Справочники". Для других случаев следует переписать процедуру

Процедура ДобавлениеВнешнихОбработок(НовыйКласс, Знач МассивИсключаемыхОбъектовКласса)

В обработке реализована удобный и быстрый поиск как по полю Имя, так и Синоним. При этом для составных имен и синонимов можно искать путем ввода через пробел части наименования в следующем виде: "тех асп" найдет, например, "технологический паспорт".

В обработку включены следующие функции и процедуры, которые можно использовать и в других разработках:

- разбиение строки на подстроки 

// Функция "расщепляет" строку на подстроки, используя заданный 
//		разделитель. Разделитель может иметь любую длину. 
//		Если в качестве разделителя задан пробел, рядом стоящие пробелы 
//		считаются одним разделителем, а ведущие и хвостовые пробелы параметра Стр
//		игнорируются.
//
//	Параметры: 
//		Стр - 			строка, которую необходимо разложить на подстроки. 
//						Параметр передается по значению.
//		Разделитель - 	строка-разделитель, по умолчанию - запятая.
//
//
//	Возвращаемое значение:
//		массив значений, элементы которого - подстроки
//
Функция РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Экспорт

В обработку "МодульРаботыСТаблицаДеревоЗначений" включены :

- функция преобразования дерева значений в таблицу значений

// Функция - Преобразовать дерево значений в таблицу значений
//
// Параметры:
//  Дерево	 - 	 ДеревоЗначений, которое нужно преобразовать в ТаблицуЗначений 
//  Таблица	 - 	 ТаблицаЗначений, структура которой будет использована для преобразования 
//  УИД		 - 	 УникальныйИдентификатор для связки с деревом) 
// 
// Возвращаемое значение:
//   - ТаблицаЗначений с колонками как у ДереваЗначений или Таблицы
//
Функция ПреобразоватьДеревоЗначенийВТаблицуЗначений(Знач Дерево, Таблица = Неопределено, Знач УИД="КорневойУровень") Экспорт

- функция обратного преобразования таблицы значений в дерево значений

// Функция - Преобразовать таблицу значений в дерево значений
// ! Таблица должна содержать уникальный идентификатор связки групп с дочерними элементами
// в виде полей "УИДРодителя" и "УИД"
// Параметры:
//  Таблица	 - 	 ТаблицаЗначений, которую нужно преобразовать в ДеревоЗначений 
//  Дерево	 - 	 ДеревоЗначений, структура которой будет использоваться для преобразования 
//  УИД		 - 	 УникальныйИдентификатор для связки с деревом 
// 
// Возвращаемое значение:
//   -  ДеревоЗначений с колонками как у ТаблицыЗначений
//
Функция ПреобразоватьТаблицуЗначенийВДеревоЗначений(Знач Таблица, Дерево=Неопределено, Знач УИД="КорневойУровень")  Экспорт

- процедура удаления пустых папок (групп) дерева значений

// Процедура - Удалить пустые группы дерева значений
// ! ДеревоЗначений должно содержать колонку "этоГруппа"
// Параметры:
//  Дерево										 - 	 ДеревоЗначений, пустые группы в которой нужно удалить 
//  ОтображатьКоличествоЭлементовГруппы			 - 	 в колонке, указанной в параметре ИмяКолонкиДляВыводаКоличестваЭлементовГруппы, 
//														будет отображаться количество дочерних элементов в формате "(<количество>)" 
//  ИмяКолонкиДляВыводаКоличестваЭлементовГруппы - 	 наименование колонки,  в которой нужно выводить количество дочерних элементов
//
Процедура УдалитьПустыеГруппыДереваЗначений(Дерево, Знач ОтображатьКоличествоЭлементовГруппы=Ложь, Знач ИмяКолонкиДляВыводаКоличестваЭлементовГруппы="") Экспорт

- процедура изменения флага выбора дочерних элементов группы

Процедура ИзменитьФлажокДочернихЭлементовДерева(СтрокаДерева, Знач Флажок) Экспорт

Содержимое архива:

- внешняя обработка "ФормаВыбораОбъектаМетаданных.epf"

- внешняя обработка "МодульРаботыСТаблицаДеревоЗначений.epf"

Реализовано на обычной форме!

Вступайте в нашу телеграмм-группу Инфостарт

объекты метаданных преобразование дерева значений в таблицу значений

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    68163    357    164    

312

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    258675    1428    421    

1165

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    54944    111    29    

123

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм. Обновление версии от 21.04.26

22570 руб.

06.10.2023    38209    102    46    

122

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    25260    93    46    

102

Мастера заполнения Поиск данных Инструментарий разработчика Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)

Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5.

6000 руб.

25.02.2026    3631    13    1    

16

Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки. 1.3.11 Доработан механизм контекстной подсказки по метаданным

9500 руб.

17.05.2024    52877    182    63    

216
Для отправки сообщения требуется регистрация/авторизация