Skip to content

Commit

Permalink
Добавление событий по доработке формы основного модуля
Browse files Browse the repository at this point in the history
  • Loading branch information
nvyhodceva committed Aug 13, 2019
2 parents 913a2bd + d77b1a1 commit 5a18a8a
Show file tree
Hide file tree
Showing 5 changed files with 163 additions and 0 deletions.
3 changes: 3 additions & 0 deletions docs/source/Functions_PM.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@
НажатиеДополнительнойКнопки <func/pm/Nazhatiye_Dopolnitel'noy_Knopki>
ПолучитьНастройкиДополнительныхКолонокСпискаДокументов <func/pm/Poluchit'_Nastroyki_Dopolnitel'nykh_Kolonok_Spiska_Dokumentov>
ПослеОбновленияСпискаДокументов <func/pm/Posle_Obnovleniya_Spiska_Dokumentov>
ПриОткрытииФормы <func/pm/Pri_Otkrytii_Formy>
ПриПолученииДанныхТабличнойЧасти <func/pm/Pri_Poluchenii_Dannykh_Tablichnoy_Chasti>
УстановитьУсловноеОформление <func/pm/Ustanovit'_Uslovnoye_Oformleniye>


Прочие функции
Expand Down
23 changes: 23 additions & 0 deletions docs/source/func/pm/Pri_Otkrytii_Formy.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@

ПриОткрытииФормы
================

.. note::

Событие для обычных форм

**Синтаксис:**

ПриОткрытииФормы(<Параметры>)

**Описание:**

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

**Параметры:**

Элементы структуры **Параметры**:

* **Форма** - обычная форма основного модуля.

Пример использования: :doc:`Как доработать таблицу списка документов <../../proc/pm/Dorabotka_Spiska_Dokumentov>`
26 changes: 26 additions & 0 deletions docs/source/func/pm/Pri_Poluchenii_Dannykh_Tablichnoy_Chasti.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@

ПриПолученииДанныхТабличнойЧасти
================================

.. note::

Событие для обычных форм

**Синтаксис:**

ПриПолученииДанныхТабличнойЧасти(<Параметры>)

**Описание:**

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

**Параметры:**

Элементы структуры **Параметры**:

* **Форма** - обычная форма основного модуля
* **ИмяФормы** - название формы
* **Элемент** - табличное поле формы
* **ОформленияСтрок** - коллекция элементов оформления строки табличного документа

Пример использования: :doc:`Как доработать таблицу списка документов <../../proc/pm/Dorabotka_Spiska_Dokumentov>`
23 changes: 23 additions & 0 deletions docs/source/func/pm/Ustanovit'_Uslovnoye_Oformleniye.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@

УстановитьУсловноеОформление
============================

.. note::

Событие для управляемых форм

**Синтаксис:**

УстановитьУсловноеОформление(<Параметры>)

**Описание:**

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

**Параметры:**

Элементы структуры **Параметры**:

* **Форма** - управляемая форма основного модуля.

Пример использования: :doc:`Как доработать таблицу списка документов <../../proc/pm/Dorabotka_Spiska_Dokumentov>`
88 changes: 88 additions & 0 deletions docs/source/proc/pm/Dorabotka_Spiska_Dokumentov.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@

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

Дополнительные колонки
----------------------

Помимо основных полей списка, которые заполняются в модуле, существует 5 колонок для вывода дополнительных сведений. Они называются "ДопРеквизит1", "ДопРеквизит2" и т.д.

Для изменения заголовков, типов и допустимых данных для каждой из них используется событие :doc:`ПолучитьНастройкиДополнительныхКолонокСпискаДокументов <../../func/pm/Poluchit'_Nastroyki_Dopolnitel'nykh_Kolonok_Spiska_Dokumentov>`.
Expand Down Expand Up @@ -89,3 +92,88 @@
Возврат ПолучитьНастройкиДополнительныхКолонокСпискаДокументов(Новый Структура("Режим", Режим));

КонецЕсли;


Доработка формы основного модуля
--------------------------------

Для возможности редактирования управляемой формы основного модуля, например, для установки условного оформления списка документов, используется событие :doc:`УстановитьУсловноеОформление <../../func/pm/Ustanovit'_Uslovnoye_Oformleniye>`

Вызывается при создании на сервере основной формы.

Пример изменения фона строки списка входящих документов:

::

Форма = Параметры.Форма;

//входящие документ на подпись
ЭлементУО = Форма.УсловноеОформление.Элементы.Добавить();

ПолеЭлемента = ЭлементУО.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("СписокДокументов");

ОтборЭлемента = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.СписокДокументов.Направление");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = "Входящее";

ОтборЭлемента = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.СписокДокументов.Статус");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Содержит;
ОтборЭлемента.ПравоеЗначение = "Требуется подпись";

ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.БледноЗеленый);

Возврат Истина;

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

При открытии основной формы модуля вызывается событие :doc:`ПриОткрытииФормы <../../func/pm/Pri_Otkrytii_Formy>`

Пример снятия флажков у всех видов пакетов на отправку:

::

Форма = Параметры.Форма;
ИмяФормы = Параметры.ИмяФормы;

Если ИмяФормы = "ОсновнаяФорма" Тогда

ДеревоФильтров = Форма.ДеревоФильтров;

СтрокаОтправкаПакетов = ДеревоФильтров.Строки.Найти("ОтправкаПакетов");

Если СтрокаОтправкаПакетов <> Неопределено Тогда

Для Каждого СтрокаВидыПакетов Из СтрокаОтправкаПакетов.Строки Цикл
СтрокаВидыПакетов.Пометка = Ложь;
КонецЦикла;

КонецЕсли;

КонецЕсли;

Возврат Истина;

При получении данных списка документов основной формы модуля вызывается событие :doc:`ПриПолученииДанныхТабличнойЧасти <../../func/pm/Pri_Poluchenii_Dannykh_Tablichnoy_Chasti>`

Пример выделения каждой второй строки списка документов:

::

Форма = Параметры.Форма;
ИмяФормы = Параметры.ИмяФормы;
Элемент = Параметры.Элемент;
ОформленияСтрок = Параметры.ОформленияСтрок;

Для Каждого Эл Из ОформленияСтрок Цикл

Если Эл.ДанныеСтроки.НомерСтроки % 2 = 0 Тогда
Эл.Ячейки.Документ.ЦветФона = WebЦвета.Аквамарин;
Эл.ЦветФона = WebЦвета.Древесный;
КонецЕсли;

КонецЦикла;

Возврат Истина;

0 comments on commit 5a18a8a

Please sign in to comment.