Show/Hide Toolbars

Руководство администратора

Связи доп.параметров (Прежний интерфейс)

Ссылки Назад Вверх Вперед

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

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

Список всех настроенных в системе связей:

dp_links

Список настроенных связей между ДП

Название

Описание

Родительский параметр

Название родительского ДП

Подчиненный параметр

Название подчиненного ДП

Жесткая связь

Флажок определяет возможность выбора значения дочернего ДП без выбора значения родительского:

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

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

Источник данных

Название результирующей таблицы в базе данных "Первая Форма"

Колонка для отбора

Колонка, в которой хранятся значения родительского ДП

Значение подчиненного параметра

Колонка, в которой хранятся значения подчиненного ДП

Текст подчиненного параметра

Колонка, в которой хранятся отображаемые значения подчиненного ДП

Связи можно устанавливать между ДП в разных колонках одной строки таблицы. Например, в одной колонке выбирается тип продукции, в другой колонке доступны только артикулы, относящиеся к данному типу продукции.

warning_icon  Нельзя установить связь ДП, если подчиненный параметр находится в таблице, а родительский — вне таблицы

warning_icon  Во избежание нагрузки системы и возникновения ошибок запрещено создание связей между ДП, если такая связь приведет к образованию цикла. К примеру, если ДП “А” указывается родительским для ДП "Б", в то время, как ДП “Б” уже был указан ранее как родительский для ДП “А”.

Возможные варианты связей между ДП

Связи одного родительского и одного дочернего ДП

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

С слабая связь между двумя ДП — если родительский ДП выбран, то список значений для выбора в дочернем ДП будет содержать значения, отфильтрованные по родительскому ДП.

Связи одного дочернего ДП с двумя родительскими ДП

ЖЖ — обе связи жесткие — сначала необходимо заполнить значения обоих родительских ДП, а потом уже выбирать дочерний ДП.

ЖС — первая связь жесткая, вторая слабая — сначала необходимо заполнить значения родительского ДП, а потом уже выбирать дочерний ДП, причем список значений для выбора в дочернем ДП будет содержать значения, отфильтрованные по тем родительским ДП, которые заполнены.

СЖ — первая связь слабая, вторая жесткая.

Варианты связей между ДП, которые поддерживает "Первая Форма":

Тип родительского ДП

Тип дочернего ДП

Тип связи

Дополнительный родительский ДП

тип ДП

типы связей

Lookup

Lookup

Ж, С

Выпадающий список

ЖЖ, ЖС, СЖ

Выпадающий список

Lookup

Ж, С

Текст\Число

ЖЖ, ЖС, СЖ

Lookup

Выпадающий список

Ж, С

 

 

Выпадающий список

Выпадающий список

Ж

 

 

Текст\Число

Lookup

Ж, С

Текст\Число

ЖЖ, ЖС, СЖ

Текст\Число

MultiLookup

Ж, С

Текст\Число

ЖЖ, ЖС, СЖ

MultiLookup

Выпадающий список

Ж, С

 

 

MultiLookup

Lookup

Ж, С

 

 

Выпадающий список

MultiLookup

Ж, С

Текст\Число

ЖЖ, ЖС, СЖ

Lookup

MultiLookup

Ж, С

Текст\Число

ЖЖ, ЖС, СЖ

Примеры настройки связей между ДП

Чаще всего связи между ДП строятся на основе таблицы значений ДП (ExtParamValues), таблицы задач определенной категории (TasksInSubcatXXXDenormalized) или собственной таблицы или представления (view), созданной для поддержания конкретной связи.

Примеры связи на основе таблицы значений ДП (ExtParamValues)

Связь между двумя ДП Lookup

Связь между ДП Выпадающий список и Lookup

Связь между ДП Lookup и Выпадающий список

Связь между ДП MultiLookup и Выпадающий список

Связь между ДП Выпадающий список и MultiLookup

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

Используется таблица TasksInSubcatXXXDenormalized, где XXX — ID денормализованной категории.

Связь между двумя ДП Выпадающий список

Связь между ДП Число и Lookup

Связь между ДП Выпадающий список и Lookup

Пример связи на основе собственной таблицы или представления (view)

Связь между двумя ДП Lookup