Руководство разработчика

Обработчик ТАБ_ФОРМА.редактирование

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

ФУНКЦИЯ ЦЕЛОЕ: <имя функции>(ПЕРЕМ ТАБ_ФОРМА: форма; 
                             ТФ_ЯЧЕЙКА: ячейка; 
                             ПЕРЕМ *: знач; 
                             ПЕРЕМ СТРОКА: парам)

Параметры

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

Возвращаемое значение

Значение одной из констант РЕД_.

Обработчик сохранение позволяет выполнить сохранение отредактированных данных в ячейке.

В дополнительных параметрах редактора, кроме прочего, можно задать список пользовательских кнопок. Обработка нажатия таких кнопок происходит в обработчике кнопка_редактора.

Обработчик нажатие может предотвратить редактирование ячейки при клике мыши или нажатии клавиши Enter. При вводе с клавиатуры редактирование ячейки начинается без вызова обработчика нажатие. Поэтому подтверждение изменения данных лучше запрашивать в обработчике редактирование.

Параметры редактирования ячеек

Параметры редактирования ячеек служат для дополнительной настройки поля ввода, создаваемого в ячейке таблицы. Содержимое строки параметров зависит от типа создаваемого поля ввода, т.е. возвращенной константы РЕД_… . Для большинства полей ввода параметры задаются стандартной строкой параметров. В стандартной строке параметров пары <параметр> = <значение> разделяются ";". В значениях параметров не должно содержаться символа ";". Значение главного параметра может указываться в начале строки без имени параметра.

Перед строкой параметров поля ввода может указываться фиксированный или настраиваемый формат в строковом представлении. Формат указывается в начале строки через разделитель "||" от остальных параметров. Пример строки параметров с настраиваемым форматом для вещественных чисел (РЕД_ЧИСЛО): "F(@Цена)||спин=0.1;кнопки=SE*".

Форматы используются только для чисел, логики, дат и времени. Тип указанного формата должен соответствовать типу элемента, т.е. при возврате РЕД_ДАТА нужно указывать формат D(...) и т.д.

При вызове обработчика редактирование значение парам приходит заполненным в соответствии с типом, форматом и другими параметрами ячейки (например, диапазоном значений). При явном указании формата, параметры поля ввода, отвечающие за формат, заменяются. Например, в формате ячейки задан вывод чисел с 2-мя десятичными знаками. При вызове обработчика редактирование значение парам будет содержать фрагмент "точность=2". Если добавить в начало строки параметров явное указание формата с 3-мя десятичными знаками, то это будет эквивалентно ручной замене отвечающего за точность фрагмента строки параметров на "точность=3".

В качестве параметров редактирования могут выступать следующие строки:

* – если формат указан явно в строке параметров (через "||"), то значение этого параметра игнорируется.

Пример использования обработчика редактирование.


См. также: