1с как вывести флажок

Реализация отметки строк флажками в табличном поле

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

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

Ниже приведены два примера. Первый пример показывает реализацию отметки строк в табличном поле, связанном с таблицей значений, а второй пример — при отображении динамического списка, например, списка элементов справочника «Номенклатура».

Пример 1. Отметка строк в табличном поле, связанном с таблицей значений

Основные принципы реализации этой возможности следующие:

  1. Список отмеченных строк нужно хранить, например, в коллекции типа «Соответствие».
  2. Текущее состояние флажков нужно отображать с помощью обработчика события ПриВыводеСтроки.
  3. Отслеживать переключение флажка и соответствующим образом изменять коллекцию в обработчике события » ПриИзмененииФлажка «.

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

  • «ФИО» (является колонкой таблицы значений, т.е. заполнено свойство «Данные»)
  • «Отметка» (является обычной колонкой табличного поля, не связана ни с какой колонкой таблицы значений, т.е. свойство «Данные» незаполнено).

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

Пример 2. Отметка строк в табличном поле, отображающем динамический список

Аналогичным образом можно реализовать отметку строк для динамического списка, например, элементов справочника или документов. Ниже показано табличное поле, отображающее список элементов справочника «Номенклатура».

Программный модуль, реализующий отметку строк в динамическом списке, приведен ниже. Обратите внимание, что теперь список отмеченных элементов хранится не в объекте типа «Соответствие», как в предыдущем примере, а в объекте типа «СписокЗначений». Это сделано исключительно для демонстрации гибкости платформы 1С:Предприятия 8.0.

Вы можете посмотреть внешнюю обработку » marks.epf «, в которой содержатся два приведенных выше примера. Обратите внимание, что для просмотра второго примера требуется, чтобы в конфигурации был справочник «Номенклатура».

Внешняя обработка с примерами находится на CD-ROM в каталоге \1CITS\EXE\Examples81

Источник

Программирование в 1С для всех

В этой статье я продолжу изучать элемент управляемой формы 1С 8.3 Поле. В этот раз мы изучим новый вид этого элемента – Поле флажка.

И так начнем. Для наглядности я создам реквизит формы с типом Булево.

Разместим новый реквизит на форме. Это можно сделать двумя способами.

Первый способ: просто перетащить мышкой нужный реквизит в закладку элементы.

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

Я перетащу реквизит с типом Булево, и у него автоматически установится вид Поле флажка.

Сам флажок нам не интересен. Гораздо интереснее свойство Вид флажка, которое может принимать три значения – Авто, Флажок и Тумблер.

Если мы установим в это свойство значение Тумблер, то наша форма примет более красивый вид.

Конечно же, когда в переключателях тумблера написаны названия Истина и Ложь, это не очень то красиво. Поменяем их на более привычные. Для этого воспользуемся свойством элемента Формат редактирования, где на закладке Булево установим более подходящие для нас названия кнопок тумблера.

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

Более подробно работа с элементами формы на практичных примерах дается в книге «Основы разработки в 1С:Такси. Разработка управляемого приложения за 12 шагов».

Иногда кажется, что изучить язык программирование в 1С сложно и трудно. В действительности программировать в 1С — легко. Помогут Вам легко и быстро освоить программирование в 1С мои книги: «Программировать в 1С за 11 шагов» и «Основы разработки в 1С: Такси»

Изучите программирование в 1С с помощью моей книги «Программировать в 1С за 11 шагов»

  1. Без сложных технических терминов.
  2. Более 700 страниц практического материала.
  3. Каждое задание сопровождается рисунком (скриншот).
  4. Сборник задач для домашней проработки.
  5. Книга написана понятным и простым языком — для новичка.
  6. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!

Эта книга подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С

  1. Без сложных технических терминов;
  2. Более 600 страниц практического материала;
  3. Каждый пример сопровождается рисунком (скриншот);
  4. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!

Промо-код на скидку в 15% — 48PVXHeYu


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Источник

Флажки (галочки) в списках документов обычных форм в 1С Предприятии 8.2, 8.3

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

В списке документов нет возможности добавить колонку с данными, соответственно и нет возможности добавить свой флажок.

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

У списков есть возможность использовать флажок «Пометка удаления». Вот и задействуем эту возможность в своих целях.

Принцип работы такой, при изменении пометки удаления будем запоминать (или забывать) отмеченные документы.

В то же время заблокируем фактическую установку пометки. Не забудем показать состояние флажка отмечен/снят вместо пометки удаления.

Вот собствено и весь принцип работы.

Список отмеченных документов будем хранить в соответствии:

Отображение нашего состояния флажка поручим процедуре

Запомним или забудем отмеченные документы в процедуре

С помощью нажатия на кнопку обработаем выбранные документы

Вариант 2. Без использования «Пометки удаления». Добавлено после обсуждений в комментариях.

Способ почти идентичный, по этому расписывать подробно нет смысла.

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

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

При добавлении кода из обработки в типовой модуль формы необходимо проследить, есть ли в модуле обработчики ДокументСписокПередНачаломИзменения или ДокументСписокПриПолученииДанных и при их наличии раскомментировать соответствующие строки в процедурах ДокументСписокПередНачаломИзменения_Подключаемая и ДокументСписокПриПолученииДанных_Подключаемая. Что бы не забывались вызываться типовые процедуры.

А так же необходимо проследить за именем списка документов и при необходимости переименовать в добавляемом коде имя «ДокументСписок» на необходимое.

Примечание. В обработке представлены оба способа (на всякий случай).

Источник

Программное создание флажка в табличном поле 1С

3. Знаю наизусть! 100% (1)
1. Всегда забываю как это сделать! 0% (0)
2. Не пользуюсь такими возможностями! 0% (0)

Всего мнений: 1

1) Создаем колонку в таблице значений, т.к. обычно в ней подготавливаются необходимые данные для работы

2) Загружаем таблицу значений в табличное поле

ЭлементыФормы.ТабличноеПоле.Значение = ТаблицаЗначений.Скопировать();
ЭлементыФормы.ТабличноеПоле.СоздатьКолонки();

3) В событии «ПриВыводеСтроки» элемента ТабличноеПоле пишем:

После этого в колонке уже будет флажок, который интерактивно можно включать/выключать.

4) Для того, чтобы можно было считывать значение флажка не через оформление строки, настроим данные для колонки «Пометка»:

ЭлементыФормы.ТабличноеПоле.Колонки.Пометка.Данные = «»;
ЭлементыФормы.ТабличноеПоле.Колонки.Пометка.ДанныеФлажка = «Пометка»;
ЭлементыФормы.ТабличноеПоле.Колонки.Пометка.РежимРедактирования = РежимРедактированияКолонки.Непосредственно;

5) Интерактивно установим флажки в нескольких строках, и проверим наличие флажков программно:

Для Каждого Строчка из ТабличноеПоле Цикл
Сообщить(Строчка.пометка);
ОбработкаПрерыванияПользователя(); // для прерывания цикла по Ctrl+Break, если таблица большая
КонецЦикла;

Источник

1С 8.x : Табличное поле

Колонка с Флажком для пометки необходимых документов

Вопрос:
Есть ТЗ с типом Значения ДокументСписок.ПоступлениеТоваровУслуг. Мне необходимо добавить еще одну колонку, в котором пользователь сможет отмечать необходимые документы для дальнейшей обработки(флажок, поставил/снял галочку).

Ответ:
Код 1C v 8.х

Похожие FAQ

Еще в этой же категории

Программное создание таблицы значений с условным оформлением 12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора

Заполнение списка значений в элементе поле выбора на форме 10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Поле выбора

Как ограничить список выбора? 8
Ограничим список элементов, установив отбор в открываемой форме //Пример 1 Процедура СтатьяПДРНачалоВыбора(Элемент, СтандартнаяОбработка) ФормаВыбора = Справочники.ПрочиеДоходыИРасходы.ПолучитьФормуВыбора(, Элемент); ЭлементОтбораВидПДР = Форма Реквизит

Источник

Читайте также:  Как можно вывести пятна от гелевой ручки
Оцените статью