#### Модифицированный компонент выбора записи реестра {#user_components.registryChooser}

Пользовательский компонент на основе компонента "Ссылка на реестр". Компонент 
имеет возможность сопоставления (в качестве источника и приемника). Список 
доступных действий:

- "Выбрать из реестра"

- "Создать"

- "Удалить"

![Модифицированный компонент выбора записи реестра](resources/img/registryChooser1.png)

**Проигрыватель формы в режиме редактирования**

*Выбор существующей записи реестра:*

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

![Диалог выбора существующей записи реестра](resources/img/registryChooser2.png)

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

Значения в выпадающем списке составлены из полей диалога (т.е. отображаемых 
полей реестра), разделенных тире.

*Создание новой записи реестра из текущей формы:*

Создание новой записи доступно по нажатию на лейбл *"+ Создать"* (доступен всегда). 
По нажатию на лейбл открывается диалоговое окно проигрывателя формы в режиме 
редактирования.

![Диалог создания новой записи реестра](resources/img/registryChooser3.png)

*Удаление текущего выбранного значения компонента:*

Удаление текущего значения компонента доступно по нажатию на лейбл *"х Удалить"*, 
который доступен только после выбора какого-либо значения.

По нажатию на лейбл "х Удалить" компонент принимает вид пустого поля ввода.

**Проигрыватель формы в режиме чтения**

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

![Компонент выбора записи реестра в режиме чтения](resources/img/registryChooser4.png)

##### Сопоставление полей реестров {#user_components.matching}

**Лиды**

*   При сохранении изменений связанные поля заполнятся ссылкой на текущую
    запись в следующих реестрах:

    *   [Аккаунт](#crm2.registryAccount) - crm_form_account_lead_lead
    *   [Контакт](#crm2.registryContact) - crm_form_contact_lead_lead
    *   [Активность](#crm2.registryLeadActivity) - crm_form_leadActivity_main_lead

*   При выборе существующей записи реестра [Аккаунт](#crm2.registryAccount)
    в динамической таблице (crm_form_account_lead) этой записи добавится
    строка, которая будет содержать ссылку на текущую запись реестра
    [Лид](#crm2.registryLead) в поле crm_form_account_lead_lead.

*   При удалении или замене ссылки на запись реестра
    [Аккаунт](#crm2.registryAccount) в динамической таблице
    (crm_form_account_lead) этой записи будет удалена строка с ссылкой на
    текущую запись реестра [Лид](#crm2.registryLead).

*   При выборе существующей записи реестра [Контакт](#crm2.registryContact)
    в динамической таблице (crm_form_contact_lead) этой записи добавится
    строка, которая будет содержать ссылку на текущую запись реестра
    [Лид](#crm2.registryLead) в поле crm_form_contact_lead_lead.

*   При удалении или замене ссылки на запись реестра
    [Контакт](#crm2.registryContact) в динамической таблице
    (crm_form_contact_lead) этой записи будет удалена строка с ссылкой на
    текущую запись реестра [Лид](#crm2.registryLead).

**Сделки**

*   При сохранении изменений связанные поля заполнятся ссылкой на текущую
    запись в следующих реестрах:

*   [Активность](#crm2.registryDealActivity) - crm_form_dealActivity_main_deal

**Аккаунты**

*   При сохранении изменений связанные поля заполнятся ссылкой на текущую
    запись в следующих реестрах:

    *   [Лид](#crm2.registryLead) - crm_form_lead_main_account
    *   [Аккаунт](#crm2.registryAccount), который указан в поле "Материнский
        аккаунт" текущей записи - crm_form_account_childAccount_account
    *   [Аккаунт](#crm2.registryAccount), который указан в поле "Дочерний
        аккаунт" текущей записи - crm_form_account_parentAccount_parentAccount

**Контакты**

*   При сохранении изменений связанные поля заполнятся ссылкой на текущую
    запись в следующих реестрах:

    *   [Лид](#crm2.registryLead) - crm_form_lead_main_contact

**Активности лидов**

*   При сохранении изменений связанные поля заполнятся ссылкой на текущую
    запись в следующих реестрах:

    *   [Лид](#crm2.registryLead) - crm_form_lead_activity_activity

**Активности сделок**

*   При сохранении изменений связанные поля заполнятся ссылкой на текущую
    запись в следующих реестрах:

    *   [Сделка](#crm2.registryDeal) - crm_form_deal_activity_activity


