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

14.07.25

Разработка - Работа с интерфейсом

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

Привет, меня зовут Дмитрий, я разработчик 1С в Programming Store.

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

Содержание:

  1. Управление данными в табличных документах.
  2. Использование перетаскивания.
  3. Использование примечаний.
  4. Использование расшифровок.
  5. Использование группировки.
  6. Возможность фиксации области табличного документа программно.
  7. Выводы.

    

Управление данными в табличных документах

     Данные в ячейках табличного документа могут храниться в одном из двух свойств ячейки: «Текст» или «Значение». Использованием этих свойств управляет свойство «СодержитЗначение», если в нем установлено значение «Истина», то данные можно записать в свойство «Значение», при этом свойство «Текст» становится недоступным для использования, тогда как в значении «Ложь» свойство «Текст» доступно для записи, а свойство «Значение» становится недоступным. Свойство «Текст» позволяет хранить данные только с типом «Строка», в свойство «Значение» можно записывать ссылочные типы и примитивные типы.

    Данные, отображаемые в табличном документе, могут быть преобразованы в таблицу значений (например, для загрузки в табличную часть) посредством построителя запроса:

Построитель = Новый ПостроительЗапроса;

Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТабДокумент.Область());

ТаблицаЗначений = Построитель.Результат.Выгрузить();

 

    Для ячеек с установленным свойством «СодержитЗначение = Истина» можно использовать встроенные элементы управления (поле ввода, флажок). При этом если видимость встроенного элемента управления установлена в значении «Ложь», то элемент управления будет отображаться в ячейке, только когда активирован режим редактирования.

    В событии табличного документа «Выбор» (которое наступает при двойном клике на ячейке) можно реализовать код проверки координат ячейки.

&НаКлиенте

Процедура ТабличныйДокументВыбор(Элемент, Область, СтандартнаяОбработка)

      // Координаты ячейки

      НомерСтроки = Область.Верх;   

      НомерКолонки = Область.Лево;



      // Получение данных ячейки

      Если Область.СодрежитЗначение = Истина Тогда

            Значение = Область.Значение;

      Иначе

            Текст = Область.Текст;   

      Конецесли;

КонецПроцедуры

   Иногда требуется определить количество колонок в таблице табличного документа. Это можно сделать с помощью свойства «ШиринаТаблицы», при этом свойство «ВысотаТаблицы» показывает количество строк в таблице.

   Данные свойства можно использовать для организации обхода таблицы в циклах.

   В случае если требуется динамически устанавливать для отдельных строк режим «Только просмотр» в зависимости от данных в строке, лучше использовать событие поля табличного документа «ПриАктивизацииОбласти». В данный обработчик события передается параметр «Элемент», содержащий поле табличного документа. Используя свойство поля табличного документа «ТекущаяОбласть», можно получить координаты области (строки и колонки) и по ним данные из нужных колонок строки.

 

Использование перетаскивания

     Для поля табличного документа доступно перетаскивание, позволяющее мышью переносить значения в табличный документ или из табличного документа. Этой возможностью управляют два свойства: «РазрешитьНачалоПеретаскивания» и «РазрешитьПеретаскивание». Первое свойство позволяет управлять источником данных при перетаскивании, второе – приемником данных. При перетаскивании генерируются события: в источнике — «НачалоПеретаскивания», «ПроверкаПеретаскивания» и в приемнике —  «Перетаскивание» и «ОкончаниеПеретаскивания».

   

Табличные документы также имеют следующие дополнительные возможности:

  • группировки,
  • примечания,
  • расшифровки.

 

Использование примечаний

      У области ячеек документа существует свойство «Примечание», которое имеет тип «РисунокТабличногоДокумента». Благодаря такому типу, существует возможность редактирования внешнего вида примечания (цвет текста, фона, выбор шрифта). Наличие примечания в ячейке отображается красным треугольником в правом верхнем углу ячейки. Текст примечания можно задать программно, с помощью свойства «текст»:

ОбластьЯчеек.Примечание.Текст = "Текст примечания";

Использование расшифровок

    Расшифровки доступны в режиме «Только просмотр» и в режиме защиты. При использовании табличного документа на управляемой форме становятся доступны события «ОбработкаРасшифровки» и «ОбработкаДополнительнойРасшифровки». «ОбработкаРасшифровки» поля табличного документа возникает, когда пользователь пытается вызвать расшифровку. Данный обработчик события позволяет переопределить стандартную расшифровку, в него в качестве формальных параметров передаются поле табличного документа, значение расшифровки, а также флаг стандартной обработки расшифровки. Обработчик «ОбработкаДополнительнойРасшифровки» вызывается, когда пользователь нажимает правую кнопку мыши на ячейке табличного документа (вызывается меню расшифровки). Этот обработчик позволяет переопределить контекстное меню расшифровки.

 

Использование группировки

   В табличном документе сгруппировать можно и строки, и колонки. Для программного управления группировками используются методы «Сгруппировать()» и «Разгруппировать()».

 

Возможность фиксации области табличного документа программно

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

ТабличныйДокумент.ФиксацияСверху = 5;

ТабличныйДокумент.ФиксацияСлева = 1;

 

Выводы

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

Вступайте в нашу телеграмм-группу Инфостарт

Табличный документ поле табличного документа

См. также

Работа с интерфейсом Анализ учета Мониторинг 1С v8.3 8.3.14 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Платные (руб)

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

16800 руб.

27.03.2025    5219    12    11    

16

Работа с интерфейсом 1С v8.3 Платные (руб)

Подсистема условного оформления элементов форм (далее подсистема) предназначена для настройки оформления элементов форм (видимость, доступность, цвет фона, цвет текста и прочее) в пользовательском режиме 1С. Также подсистему возможно использовать для ограничения доступа к реквизитам формы для определенных пользователей (или групп пользователей).

6000 руб.

18.01.2022    11082    2    2    

7

Работа с интерфейсом Системный администратор Программист 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

6000 руб.

14.01.2016    57099    19    25    

45

Работа с интерфейсом Программист 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

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

2400 руб.

29.06.2020    21006    30    6    

46

Работа с интерфейсом Программист Стажер 1С v8.3 Бесплатно (free)

Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна

20.08.2024    32726    mrXoxot    44    

135

Работа с интерфейсом Программист 1С v8.3 Бесплатно (free)

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

27.05.2024    18583    smielka    37    

106

Работа с интерфейсом 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    20125    1261    elcoan    53    

128

Инструментарий разработчика Работа с интерфейсом Программист 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.

3 стартмани

10.04.2023    14223    174    acces969    31    

131
Оставьте свое сообщение