Описание компонентов Synergy Customers
========================================

Рекомендации по настройке форм
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Общее описание редактора форм, компонентов и их свойств приведено в 
`спецификации на платформу <http://tdd.lan.arta.kz/docs/synergy/tags/minsky/spec/html/sec.conf_forms.html>`_.


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

* Создавайте вертикально-ориентированные формы: 

  * группируйте поля в таблицы;
  * добавляйте не более 2 компонентов на одну строку;
  * добавляйте заголовок (подпись) над компонентом.

* Настройте единый вид всей формы, используя:

  * единый шрифт и размер текста;
  * отступы как от края формы, так и между компонентами:

    * относительные (в %) горизонтальные отступы;
    * абсолютные (в пикселях) вертикальные отступы;

* Ответственно подойдите к именованию компонентов:

  * имя компонента должно явно описывать его суть;
  * имя заголовка (подписи) должно содержать в себе имя 
    связанного с ним компонента + суффикс ``Label``.

.. hint:: Компонент для ввода БИН организации лучше назвать 
          ``crm_form_account_main_bin``, а подпись к такому
          компоненту - ``crm_form_account_main_binLabel``.

* **Скройте** ненужные и неиспользуемые компоненты (**не удаляйте** 
  и перенесите в самый низ формы). Эти компоненты могут 
  использоваться в различных функциях / скриптах. Таким 
  образом вы избавитесь от потенциальных проблем и ошибок в 
  дальнейшем использовании продукта.

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

Возможные вопросы и проблемы:

#. `Как изменить поля в карточках?`_

.. _`Как изменить поля в карточках?`: faq.html#id3

Cправочник "Стадии сделки"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. csv-table:: Описание справочника "Стадии сделки"
    :header: "Столбец", "Описание", "Доп.свойства"
    :widths: 10, 20, 20

    "Название", "Название стадии", "Переводимое поле"
    "Порядковый номер", "Определяет порядок следования стадий"
    "Качество", "Определяет, является ли стадия успешной или неуспешной", "Неуспешная должна быть только одна"
    "Законченность", "Определяет, является ли стадия конечной или неконечной", "Конечная стадия должна быть только одна; для неуспешной стадии можно не указывать"
    "Название кнопки", "В данный момент нигде не используется"
    "Цвет", "Цвет стадии, который будет использоваться в заголовке витрины, а также в воронке продаж", "Формат HTML ``#123ABC``"
    "Описание", "Описание стадии, которое будет использоваться в заголовке витрины продаж, а также в карточке сделки", "Переводимое поле"

Возможные вопросы и проблемы:

#. `Как изменить стадии сделки?`_

.. _`Как изменить стадии сделки?`: faq.html#id5

Cправочник "Стадии договора"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. csv-table:: Описание справочника "Стадии договора"
    :header: "Столбец", "Описание", "Доп.свойства"
    :widths: 10, 20, 20

    "Название", "Название стадии", "Переводимое поле"
    "Порядковый номер", "Определяет порядок следования стадий"
    "Качество", "Определяет, является ли стадия успешной или неуспешной", "Неуспешная должна быть только одна"
    "Законченность", "Определяет, является ли стадия конечной или неконечной", "Конечная стадия должна быть только одна; для неуспешной стадии можно не указывать"
    "Цвет", "В данный момент нигде не используется", "Формат HTML ``#123ABC``"
    "Описание", "Описание стадии, которое будет использоваться в карточке договора", "Переводимое поле"

Возможные вопросы и проблемы:

#. `Как изменить стадии договора?`_

.. _`Как изменить стадии договора?`: faq.html#id7

Cправочник "Стадии лида"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. csv-table:: Описание справочника "Стадии сделки"
    :header: "Столбец", "Описание", "Доп.свойства"
    :widths: 10, 20, 20

    "Название", "Название стадии", "Переводимое поле"
    "Порядковый номер", "Определяет порядок следования стадий"
    "Качество", "Определяет, является ли стадия успешной или неуспешной", "Неуспешная должна быть только одна"
    "Законченность", "Определяет, является ли стадия конечной или неконечной", "Конечная стадия должна быть только одна; для неуспешной стадии можно не указывать"
    "Название кнопки", "В данный момент нигде не используется"
    "Цвет", "Цвет стадии, который будет использоваться в заголовке витрины, а также в воронке продаж", "Формат HTML ``#123ABC``"
    


Импорт данных
~~~~~~~~~~~~~~~

Функция импорта, реализованная в продукте, универсальная и позволяет 
загружать данные из Excel в любой реестр Synergy.

Импорт работает со следующими компонентами формы:

* текстовые однострочные и многострочные поля;
* числовые поля;
* дата/время;
* справочники (выпадающий список, выбор вариантов, переключатель 
  вариантов);
* ссылка на реестр.

Требования к файлу Excel:

#. Формат файла: ``*.xls``.
#. Первая строка файла - заголовки; далее - строки для импорта в 
   записи реестра.

   .. note:: 1 строка в Excel = 1 запись реестра.

#. Столбцы, которые **не нужно** импортировать обозначить заголовком 
   ``no``.
#. Остальные заголовки должны содержать в себе точный код поля 
   формы (например, ``crm_form_account_main_adress``).
#. Для корректного импорта чисел значение поля в файле должно быть 
   в числовом формате.
#. Для корректного импорта дат значение поля в файле должно быть 
   в формате даты.
#. Для корректного импорта справочников значение поля в файле должно 
   точь-в-точь совпадать с его "наименованием" у справочника.
#. Для корректного импорта нескольких значений в компонент выбора 
   вариантов (чекбокс) в файле их нужно прописать в одной ячейке 
   через ``;`` с пробелом.
#. Желательно избегать содержания в файле спец.символов json: ``"``, 
   ``\``, ``\b``, ``\t`` и т.д.

Использование:

#. Заполнить код формы и код реестра, в который будет проводиться 
   импорт. Коды можно взять в конфигураторе.
#. Заполнить логин и пароль пользоваться, от имени которого будут 
   выполняться все запросы. Пользователь должен иметь права на все 
   реестры (куда происходит импорт и если в файле имеются ссылки на 
   прочие реестры).
#. Если импортируемые записи необходимо запустить по маршруту, 
   требуется поставить галочку "Активировать импортированные записи".
#. Если присутсвуют ссылки на реестр **обязательно** нужно заполнить 
   поле для поиска в формате:

   ``(код компонента на форме, куда производится импорт):(код компонента на форме, на которую указывает компонент ссылки на реестр, по которому должен производится поиск)``

   Для каждой ссылки на реестр необходимо через запятую с пробелом 
   необходимо указать подобные пары.
#. При поиске записей для ссылок на реестр может найтись несколько 
   записей реестра. Укажите в соотвествующем пункте действия на этот 
   случай. Если не найдена ни одна запись, значение останется пустым.
#. Выберите заранее подготовленный файл ``*.xls`` и нажмите на кнопку 
   "Импортировать". Импорт начнет в нескольких потоках обрабатывать 
   переданные записи. Следить за процессом можно через логи системы 
   Synergy.

