Что такое связь по параметрам выбора
Перейти к содержимому

Что такое связь по параметрам выбора

  • автор:

Связи параметров выбора

Подчиненные владельцу реквизиты — элементы справочников, которые должны выбираться пользователем в контексте элемента-владельца. В тестовом примере у нас будут справочники «Контрагенты», «Договора» и документ «ПриходнаяНакладная» с реквизитами «Контрагент» и «Договор».

Cправочник «Договора» подчинен справочнику «Контрагенты»:

Для документа «ПриходнаяНакладная» в свойствах реквизита «Договор» выставляем «Связи параметров выбора: Отбор.Владелец(Контрагент)»

Для этого по нажатию […] выбираем в списке «Связи параметров выбора» реквизит «Контрагент»:

В таблице Имя-Реквизит-Режим изменения должно стоять: Отбор.Владелец — Контрагент — Очищать

Если в поле «Имя» стоит что-то другое, нужный вариант можно выбрать из выпадающего списка:

  • Как открыть форму списка с некоторым отбором?
  • Форма динамического списка с произвольным запросом
  • Организация подборов в табличную часть документа
  • Параметры формы
  • Дерево значений
  • Вычисляемые колонки в списках
  • Отбор строк табличной части

Каталог оборудования

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Производители

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Функциональные группы

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Категории блога
Облако тегов

  • 1С:Предприятие (31)
  • API (29)
  • Bash (43)
  • CLI (125)
  • CMS (139)
  • CSS (50)
  • Frontend (75)
  • HTML (66)
  • JavaScript (150)
  • Laravel (72)
  • Linux (172)
  • MySQL (76)
  • PHP (125)
  • React.js (66)
  • SSH (27)
  • Ubuntu (70)
  • Web-разработка (509)
  • WordPress (73)
  • Yii2 (69)
  • БазаДанных (95)
  • Битрикс (66)
  • Блог (29)
  • Верстка (43)
  • ИнтернетМагаз… (84)
  • КаталогТоваров (87)
  • Класс (30)
  • Клиент (28)
  • Ключ (28)
  • Команда (88)
  • Компонент (60)
  • Конфигурация (68)
  • Корзина (32)
  • ЛокальнаяСеть (33)
  • Модуль (34)
  • Навигация (31)
  • Настройка (144)
  • ПанельУправле… (29)
  • Плагин (33)
  • Пользователь (26)
  • Практика (101)
  • Сервер (77)
  • Событие (28)
  • Теория (106)
  • Установка (68)
  • Файл (51)
  • Форма (58)
  • Фреймворк (192)
  • Функция (36)
  • ШаблонСайта (68)

Установка параметров выбора и связей параметров выбора для объектов метаданных

1. Как правило, такие ограничения бизнес-логики как ограничения выбора, должны быть одинаковыми для всех форм, в которых редактируется тот или иной объект. Поэтому задавать параметры выбора и связи параметров выбора рекомендуется в свойствах объектов метаданных — в реквизитах справочников, документов и т.п.

2. Однако могут встречаться случаи, когда ограничения выбора могут зависеть от конкретного сценария работы. В таких случаях параметры выбора могут быть уточнены по месту, в конкретной форме.

Например, в конфигурации имеются

  • справочник Сотрудники, в котором есть реквизиты Организация и ВидСотрудника (перечисление со значениями Основной/Совместитель);
  • документ ПриказОПриеме, в котором есть реквизит Организация и Сотрудник; при этом для реквизита Сотрудник документа ПриказОПриеме задана связь параметра выбора Отбор.Организация с реквизитом Организация.

Требуется реализовать возможность выбора только основных сотрудников в зависимости от значения функциональной опции ВыбратьТолькоИзОсновыхСотрудников. Для этого необходимо

  • в форме документа ПриказОПриеме реализовать дополнительный реквизит формы ВидыСотрудников,
  • после чего для поля формы Сотрудник может быть установлена связь параметра выбора Отбор.ВидСотрудника с реквизитом формы ВидыСотрудников,
  • при этом реквизит формы ВидыСотрудников заполняется на основании анализа функциональной опции.

(При этом установить для реквизита Сотрудник документа ПриказОПриеме связь для параметра выбора Отбор.ВидСотрудника нет возможности, т.к. реквизита ВидСотрудника в документе ПриказОПриеме не существует.)

Тогда установка связи для параметра Отбор.Организация в свойствах реквизита Сотрудник документа ПриказОПриеме и связи для параметра Отбор.ВидСотрудника в поле формы документа ПриказОПриеме приведет к тому, что в режиме 1С:Предприятия будут работать обе связи параметра выбора. Таким образом, при выборе сотрудника в форме приказа о приеме отбор в списке сотрудников будет установлен как по организации, заполненной в документе, так и по виду сотрудника, который будет определен на основании функциональной опции.

Другие материалы по теме:

Кайков Константин
программист 1С удаленно

а еще web-программист, разработчик android и просто толковый ИТшник 😉

Связи параметров выбора или как связать поля ввода на форме

Опубликовано 30.10.2015 автором Кайков Константин

Если на форме два поля, один из которых подчинён другому по структуре данных, то часто бывает необходимо ограничить ввод данных по владельцу. Например, есть поле Партнёр и Вид цены поставщика.

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

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

Связи параметров выбора

Связи параметров выбора

Теперь необходимо в колонке Имя вместо Партнер ввести текст Отбор.Владелец. Задача выполнена!

Запись опубликована автором Кайков Константин в рубрике Особенности программирования. Добавьте в закладки постоянную ссылку.

© 2013, Кайков Константин. Все материалы, размещённые на этом сайте являются авторскими, если не оговорено иное.
Копирование материалов сайта разрешено с указанием полной активной ссылки на страницу материала.
Сайт работает на WordPress.

1С. Программное переопределение связей параметров выбора

Задача 1c-programmnoye-pereopredeleniye-svyazey-parametrov-vybora_0

Необходимо организовать программное переопределить связи параметров выбора по определенному событию

Решение

Для наглядности создадим новую конфигурацию со следующими справочниками:

  1. «Контрагенты»;
  2. «Договоры контрагентов». Подчинен справочнику «Контрагенты»;
  3. «Соглашения». У реквизита «Договор контрагента» установлены параметры связей выбора по реквизитам «Владелец», «Параметр 1» и «Параметр 2».

При такой реализации в соглашении будут доступны договоры указанного контрагента с определенными параметрами.

В качестве события для переопределения связей параметров выбора будем использовать значение реквизита «Позволить выбирать любой договор контрагента». Если признак будет установлен, то позволим выбирать любой договор указанного контрагента.

Собственно код формы элемента справочника «Соглашения» и изображения результата

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *