Тип: РежимВводаСтрокТабличногоПоля. Содержит режим интерактивного ввода новых строк в табличное поле. Режим задает, куда именно будут вставлены строки табличного документа.
Полное описание, параметры и ограничения
ТабличноеПоле.РежимВводаСтрок (TableBox.RowInputMode)
ТабличноеПоле (TableBox)
РежимВводаСтрок (RowInputMode)
Доступен, начиная с версии 8.0.
Использование:
Чтение и запись.
Описание:
Тип: РежимВводаСтрокТабличногоПоля.
Содержит режим интерактивного ввода новых строк в табличное поле. Режим задает, куда именно будут вставлены строки табличного документа.
Доступность:
Толстый клиент.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Начать и отменить интерактивное редактирование строки
Кнопка начинает изменение текущей собственной строки и сразу отменяет режим редактирования. Это не транзакция и не отмена записи документа.
Где и как запускать
Модуль новой обычной формы внешней обработки. Только толстый клиент, обычные формы; не серверный модуль и не управляемая форма.
Подготовка
Это обычная форма, не управляемая: используйте толстый клиент с обычными формами в отдельной учебной базе. Создайте новую внешнюю обработку, обычную форму и её реквизит Товары типа ТаблицаЗначений. Рабочие документы и справочники не нужны.
В редакторе формы добавьте табличное поле ТаблицаТоваров, свойство Данные свяжите с реквизитом Товары. Добавьте обычную кнопку УчебнаяКоманда, её действие свяжите с процедурой УчебнаяКоманда. ПриОткрытии свяжите с одноимённым событием формы.
Каждый урок — отдельный полный модуль этой учебной формы. Он заново создаёт в памяти Книгу (3) и Ручку (1), а СоздатьКолонки удаляет прежние колонки только своего табличного поля. Не вставляйте код в рабочую форму с настроенными колонками.
Откройте форму, затем нажмите учебную кнопку. Изменения данных и оформления относятся только к реквизиту внешней обработки в памяти. Здесь нет Записать, обращения к рабочим данным или проверки интерфейса реальной УТ 10.3.
Процедура ПриОткрытии()
Товары = Новый ТаблицаЗначений;
Товары.Колонки.Добавить("Код", Новый ОписаниеТипов("Строка"));
Товары.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Строка"));
Товары.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
Товары.Колонки.Добавить("Выбран", Новый ОписаниеТипов("Булево"));
Книга = Товары.Добавить();
Книга.Код = "A-01";
Книга.Наименование = "Книга";
Книга.Количество = 3;
Книга.Выбран = Ложь;
Ручка = Товары.Добавить();
Ручка.Код = "B-02";
Ручка.Наименование = "Ручка";
Ручка.Количество = 1;
Ручка.Выбран = Ложь;
Таблица = ЭтаФорма.ЭлементыФормы.ТаблицаТоваров;
Таблица.СоздатьКолонки();
Таблица.АвтоВводНовойСтроки = Ложь;
Если Товары.Количество() <> 2 Тогда
ВызватьИсключение "Ожидались два собственных учебных товара";
КонецЕсли;
Таблица.ТекущаяСтрока = Товары[0];
Таблица.Доступность = Истина;
Таблица.ТолькоПросмотр = Ложь;
Таблица.ИзменятьСоставСтрок = Ложь;
Таблица.РежимВводаСтрок = РежимВводаСтрокТабличногоПоля.ВКонецСписка;
КонецПроцедуры
Процедура УчебнаяКоманда(Кнопка)
Таблица = ЭтаФорма.ЭлементыФормы.ТаблицаТоваров;
Текущая = Таблица.ТекущаяСтрока;
Если Текущая = Неопределено Тогда
Сообщить("Выберите Книгу или Ручку");
Возврат;
КонецЕсли;
Таблица.ИзменитьСтроку();
Таблица.ЗакончитьРедактированиеСтроки(Истина);
Таблица.ОбновитьСтроки();
Сообщить(Товары.Количество() = 2);
Сообщить(Товары.Итог("Количество") = 4);
Сообщить(Не Таблица.ИзменятьСоставСтрок);
КонецПроцедурыРазбор по шагам
Доступность и ТолькоПросмотр задают состояние своего элемента интерфейса.
ИзменятьСоставСтрок запрещает пользователю интерактивно добавлять и удалять строки. Это не запрет изменения значения поля.
РежимВводаСтрок описывает положение новой строки, но новые строки в этом упражнении не создаются.
ИзменитьСтроку аналогично интерактивной команде Изменить. ЗакончитьРедактированиеСтроки(Истина) отменяет редактирование текущей строки.
ОбновитьСтроки обновляет отображение собственного элемента, не перечитывает базу. Проверяем количество строк и сумму.
Как проверить результат
Три сообщения Истина при исходных учебных данных.
Никакая новая строка, документ или транзакция не создаётся.
Ожидаемый результат
Показаны границы интерактивного редактирования в обычной форме.
На что обратить внимание
Отмена редактирования не равна ОтменитьТранзакцию и не откатывает ранее записанные объекты.
Если вручную изменили учебное количество до нажатия кнопки, сумма может отличаться: переоткройте форму для исходного состояния.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.