Публикация

Скрыть поле из секции "Запрет на использование" (деталь "Средства связи")

Вопрос

Как скрыть поле с детали "Средства связи"

Изображение удалено.

Ответ

Данный вопрос необходимо решать на уровне конфигурации.

Рассмотрим реализацию на примере.

Кейс:

необходимо скрыть поле «E-mail» из секции «Запрет на использование» в разделе «Контакты».

Решение:

  1. Необходимо заместить схему (Управление конфигурацией – Конфигурация – кнопка «Добавить» - пункт «Замещающий клиентский модуль»).
  2. В открывшимся окне в поле «Родительский объект» указать «Средства связи контакта (устаревшая версия)» (Рис. 1).

ВАЖНО. Необходимо использовать устаревшую версию схемы «Средства связи».

    3. В замещающую схему вставить следующий код:

define("ContactCommunicationDetail", ["ContactCommunicationDetailResources", "terrasoft"],
    function(resources, Terrasoft) {
        return {
            entitySchemaName: "ContactCommunication",
            methods: {
                /**
                * Возвращает запреты на использование.
                * @protected
                * @return {Object} Объект, который содержит свойства запретов на использование.
                */
                getRestrictions: function() {
                    return {
                        "DoNotUseEmail": { /*Не использовать E-mail*/
                            "RestrictCaption": this.get("Resources.Strings.DoNotUseEmail"),
                            "Caption": this.get("Resources.Strings.DoNotUseEmailCaption")
                        },
                        "DoNotUseCall": { /*Не использовать телефон*/
                            "RestrictCaption": this.get("Resources.Strings.DoNotUseCall"),
                            "Caption": this.get("Resources.Strings.DoNotUseCallCaption")
                        },
                        "DoNotUseSms": { /*Не использовать SMS*/
                            "RestrictCaption": this.get("Resources.Strings.DoNotUseSms"),
                            "Caption": this.get("Resources.Strings.DoNotUseSmsCaption")
                        },
                        "DoNotUseFax": { /*Не использовать факс*/
                            "RestrictCaption": this.get("Resources.Strings.DoNotUseFax"),
                            "Caption": this.get("Resources.Strings.DoNotUseFaxCaption")
                        },
                        "DoNotUseMail": { /*Не использовать почту*/
                            "RestrictCaption": this.get("Resources.Strings.DoNotUseMail"),
                            "Caption": this.get("Resources.Strings.DoNotUseMailCaption")
                        }
                    };
                }
            },
            diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/
        };
    });

 Изображение удалено.

Рис. 1

4. Затем выделяем с помощью компьютерной мышки часть кода, которая изображен на рисунке 2 (начиная от названия "DoNotUseEmail" и заканчивая }, ).

Изображение удалено.

Рис. 2

5. В итоге должно выглядеть как рисунке 3. Затем мы сохраняем схему.

Изображение удалено.

Рис. 3

6. Затем очищаем кэш браузера и проверяем результат.

 7. В результате поле "E-mail" не отобразиться (Рис. 4).

 Изображение удалено.

Рис. 4

Примечание. Скрытие других полей или реализация в разделе «Контрагенты» происходит аналогичным путем. 

Нравится

Поделиться

0 комментариев
Показать все комментарии