КолонкаТабличногоПоля.Формат

Свойства · Format

Тип: Строка. Задает формат отображения значения.

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

КолонкаТабличногоПоля.Формат (TableBoxColumn.Format)

КолонкаТабличногоПоля (TableBoxColumn)

Формат (Format)

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

Использование:
Чтение и запись.
Описание:
Тип: Строка.
Задает формат отображения значения.
Доступность:

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

См. также:
Глобальный контекст, метод Формат

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

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

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

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

Оформить числовую колонку количества

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

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

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

Подготовка

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

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

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

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

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

Процедура УчебнаяКоманда(Кнопка)
    Таблица = ЭтаФорма.ЭлементыФормы.ТаблицаТоваров;
    Колонка = Таблица.Колонки.Найти("Количество");
    Если Колонка = Неопределено Тогда
        ВызватьИсключение "В своей таблице не найдена колонка количества";
    КонецЕсли;
    Сообщить(Колонка.Данные = "Количество");
    Сообщить(Колонка.Формат = "ЧДЦ=0");
    Сообщить(Колонка.ТекстШапки = "Количество книг");
    Сообщить("Выделение отрицательных: " + Строка(Колонка.ВыделятьОтрицательные));
    Сообщить("Пропускать при вводе: " + Строка(Колонка.ПропускатьПриВводе));
    Сообщить(Товары[0].Количество = 3);
КонецПроцедуры

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

  1. Данные — имя существующего поля таблицы значений, ТекстШапки — видимая подпись. Их не смешиваем.

  2. Формат ЧДЦ=0 меняет отображение, само число 3 остаётся числом.

  3. Горизонтальные положения отдельно задаются для ячеек, шапки и подвала.

  4. Ширина 16 не является обещанием 16 пикселей. АвтоВысотаЯчейки выключена, высота явно одна строка.

  5. Разрешение размера и настройки не означает разрешение перестановки: на уровне колонки и таблицы перестановка отключена. ВыделятьОтрицательные и ПропускатьПриВводе читаем, не присваиваем.

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

  1. Четыре сравнения Истина и две диагностические строки.

  2. Проверьте ширину вручную: значения зависят от шрифта и масштаба интерфейса.

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

Связь с данными, формат и три выравнивания проверены отдельно.

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

  1. ВыделятьОтрицательные и ПропускатьПриВводе только для чтения.

  2. Пользовательское изменение ширины не меняет числовое количество.

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

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

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

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

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