ТабличноеПоле.РежимВводаСтрок

Свойства · RowInputMode

Тип: РежимВводаСтрокТабличногоПоля. Содержит режим интерактивного ввода новых строк в табличное поле. Режим задает, куда именно будут вставлены строки табличного документа.

Полное описание, параметры и ограничения

ТабличноеПоле.РежимВводаСтрок (TableBox.RowInputMode)

ТабличноеПоле (TableBox)

РежимВводаСтрок (RowInputMode)

Доступен, начиная с версии 8.0.

Использование:
Чтение и запись.
Описание:
Тип: РежимВводаСтрокТабличногоПоля.
Содержит режим интерактивного ввода новых строк в табличное поле. Режим задает, куда именно будут вставлены строки табличного документа.
Доступность:

Толстый клиент.

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

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

Начать и отменить интерактивное редактирование строки

Кнопка начинает изменение текущей собственной строки и сразу отменяет режим редактирования. Это не транзакция и не отмена записи документа.

Где и как запускать

Модуль новой обычной формы внешней обработки. Только толстый клиент, обычные формы; не серверный модуль и не управляемая форма.

Подготовка

  1. Это обычная форма, не управляемая: используйте толстый клиент с обычными формами в отдельной учебной базе. Создайте новую внешнюю обработку, обычную форму и её реквизит Товары типа ТаблицаЗначений. Рабочие документы и справочники не нужны.

  2. В редакторе формы добавьте табличное поле ТаблицаТоваров, свойство Данные свяжите с реквизитом Товары. Добавьте обычную кнопку УчебнаяКоманда, её действие свяжите с процедурой УчебнаяКоманда. ПриОткрытии свяжите с одноимённым событием формы.

  3. Каждый урок — отдельный полный модуль этой учебной формы. Он заново создаёт в памяти Книгу (3) и Ручку (1), а СоздатьКолонки удаляет прежние колонки только своего табличного поля. Не вставляйте код в рабочую форму с настроенными колонками.

  4. Откройте форму, затем нажмите учебную кнопку. Изменения данных и оформления относятся только к реквизиту внешней обработки в памяти. Здесь нет Записать, обращения к рабочим данным или проверки интерфейса реальной УТ 10.3.

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

Процедура УчебнаяКоманда(Кнопка)
    Таблица = ЭтаФорма.ЭлементыФормы.ТаблицаТоваров;
    Текущая = Таблица.ТекущаяСтрока;
    Если Текущая = Неопределено Тогда
        Сообщить("Выберите Книгу или Ручку");
        Возврат;
    КонецЕсли;
    Таблица.ИзменитьСтроку();
    Таблица.ЗакончитьРедактированиеСтроки(Истина);
    Таблица.ОбновитьСтроки();
    Сообщить(Товары.Количество() = 2);
    Сообщить(Товары.Итог("Количество") = 4);
    Сообщить(Не Таблица.ИзменятьСоставСтрок);
КонецПроцедуры

Разбор по шагам

  1. Доступность и ТолькоПросмотр задают состояние своего элемента интерфейса.

  2. ИзменятьСоставСтрок запрещает пользователю интерактивно добавлять и удалять строки. Это не запрет изменения значения поля.

  3. РежимВводаСтрок описывает положение новой строки, но новые строки в этом упражнении не создаются.

  4. ИзменитьСтроку аналогично интерактивной команде Изменить. ЗакончитьРедактированиеСтроки(Истина) отменяет редактирование текущей строки.

  5. ОбновитьСтроки обновляет отображение собственного элемента, не перечитывает базу. Проверяем количество строк и сумму.

Как проверить результат

  1. Три сообщения Истина при исходных учебных данных.

  2. Никакая новая строка, документ или транзакция не создаётся.

Ожидаемый результат

Показаны границы интерактивного редактирования в обычной форме.

На что обратить внимание

  1. Отмена редактирования не равна ОтменитьТранзакцию и не откатывает ранее записанные объекты.

  2. Если вручную изменили учебное количество до нажатия кнопки, сумма может отличаться: переоткройте форму для исходного состояния.

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

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.