Программное создание флажка в табличном поле 1С
3. Знаю наизусть! | 100% (1) | |
1. Всегда забываю как это сделать! | 0% (0) | |
2. Не пользуюсь такими возможностями! | 0% (0) |
Всего мнений: 1
1) Создаем колонку в таблице значений, т.к. обычно в ней подготавливаются необходимые данные для работы
2) Загружаем таблицу значений в табличное поле
ЭлементыФормы.ТабличноеПоле.Значение = ТаблицаЗначений.Скопировать();
ЭлементыФормы.ТабличноеПоле.СоздатьКолонки();
3) В событии «ПриВыводеСтроки» элемента ТабличноеПоле пишем:
После этого в колонке уже будет флажок, который интерактивно можно включать/выключать.
4) Для того, чтобы можно было считывать значение флажка не через оформление строки, настроим данные для колонки «Пометка»:
ЭлементыФормы.ТабличноеПоле.Колонки.Пометка.Данные = «»;
ЭлементыФормы.ТабличноеПоле.Колонки.Пометка.ДанныеФлажка = «Пометка»;
ЭлементыФормы.ТабличноеПоле.Колонки.Пометка.РежимРедактирования = РежимРедактированияКолонки.Непосредственно;
5) Интерактивно установим флажки в нескольких строках, и проверим наличие флажков программно:
Для Каждого Строчка из ТабличноеПоле Цикл
Сообщить(Строчка.пометка);
ОбработкаПрерыванияПользователя(); // для прерывания цикла по Ctrl+Break, если таблица большая
КонецЦикла;
Программирование в 1С для всех
В этой статье я продолжу изучать элемент управляемой формы 1С 8.3 Поле. В этот раз мы изучим новый вид этого элемента – Поле флажка.
И так начнем. Для наглядности я создам реквизит формы с типом Булево.
Разместим новый реквизит на форме. Это можно сделать двумя способами.
Первый способ: просто перетащить мышкой нужный реквизит в закладку элементы.
Второй способ: добавить новый элемент формы с типом Поле, и связать его с нужным реквизитом формы при помощи свойства элемента ПутьКДанным.
Я перетащу реквизит с типом Булево, и у него автоматически установится вид Поле флажка.
Сам флажок нам не интересен. Гораздо интереснее свойство Вид флажка, которое может принимать три значения – Авто, Флажок и Тумблер.
Если мы установим в это свойство значение Тумблер, то наша форма примет более красивый вид.
Конечно же, когда в переключателях тумблера написаны названия Истина и Ложь, это не очень то красиво. Поменяем их на более привычные. Для этого воспользуемся свойством элемента Формат редактирования, где на закладке Булево установим более подходящие для нас названия кнопок тумблера.
После этого наш тумблер примет более красивый вид. Если мы захотим убрать или переместить положение заголовка, то для этого нам понадобится свойство элемента ПоложениеЗаголовка. Которое принимает много разных значений, в том числе значение – Нет.
Более подробно работа с элементами формы на практичных примерах дается в книге «Основы разработки в 1С:Такси. Разработка управляемого приложения за 12 шагов».
Иногда кажется, что изучить язык программирование в 1С сложно и трудно. В действительности программировать в 1С — легко. Помогут Вам легко и быстро освоить программирование в 1С мои книги: «Программировать в 1С за 11 шагов» и «Основы разработки в 1С: Такси»
Изучите программирование в 1С с помощью моей книги «Программировать в 1С за 11 шагов»
Эта книга подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С
Промо-код на скидку в 15% — 48PVXHeYu
Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Программное создание колонок в табличном поле с полем ввода Флажок (чекбокс) (1С 8.2)
Допустим, из какой-либо таблицы нам необходимо сделать быстрый ввыбор каких-то данных, для этого обычно используют флажок (чекбокс). Причем данные в этой таблице могут варьироваться, следовательно, нам необходимо создавать данные строки програмно.
1. Табличное поле создается программно следующим образом
2. Оформление ячеек с флажками (чекбоксами) для колонок
3. Описание взаимосвязи выбора ячеек по колонке
Скачать файлы
Специальные предложения
Обновление 13.01.16 21:24
Операционная система Не имеет значения
Код открыт Не указано
См. также
FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы «Режим сравнения форм») на примере ERP 2.5 Промо
Данная публикация является продолжением описания функционирования обработки «FormCodeGenerator » в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.
21.12.2020 9849 27 huxuxuya 11
Интерактивная справка по объектам 1С (подключаемое расширение)
База знаний, подключаемая к объектам основной базы. Пополняется интерактивно, формируется в виде статей прямо в 1С (текст, картинки, таблицы, ссылки). Есть возможность прикрепления файлов, привязки к объектам 1С, возможности рейтинга и комментирования пользователями.
29.09.2020 15556 82 sapervodichka 45
Конвейер проверки качества кода
Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.
04.09.2019 37618 27 Stepa86 46
Вам нравятся запросы в 1С?
Речь не только о том, что простейший запрос с «легальным» оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать «в нагрузку» к тексту запроса. Все эти «Новый Запрос», «УстановитьПараметр» и последующие пляски с обработкой результата. Пора с этим заканчивать!
03.07.2019 28306 7 m-rv 91
[Расширение] Контроль отрицательных остатков по регистру бухгалтерии при проведении Промо
Расширение позволяет без изменений конфигурации проверять остатки по регистру бухгалтерии при проведении каждого документа и запрещает проведение при появлении отрицательных остатков после проведения.
17.08.2015 54693 170 ekaruk 32
Отправка электронной почты с помощью локального почтового клиента из 1С, развернутой под удаленным рабочим столом
Решение для интерактивной (нажал-отредактировал) отправки электронных писем и печатных форм через почтовый клиент (Thunderbird, Outlook) находящийся на локальном компьютере, из конфигурации 1С, развернутой под удаленным рабочим столом (RDP, remote-app). Подходит также для локального развертывания 1С. Представлен пример быстрой интеграции с конфигурациями «Управление торговлей 10.3», «Управление производственным предприятием 1.3», «Комплексная автоматизация 1.1», «Бухгалтерия предприятия 2.0».
21.09.2018 31033 24 stvorl 1
Работа с публикациями «Инфостарт»
Работа с рублевыми публикациями на сайте «Инфостарт»: ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.
13.09.2018 29088 14 RocKeR_13 16
HTTP Сервисы: Путь к своему сервису. Часть 3
Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.
27.08.2018 55311 68 dsdred 17
ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ («001», «Новый товар») Промо
Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.
01.06.2018 37221 96 m-rv 58
Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции
09.08.2018 36873 31 informa1555 30
Работа с данными выбора
17.07.2018 68043 25 kalyaka 17
Дружелюбный интерфейс пометки и отмены пометки в диалоге табличных полей, для управляемых форм.
Это всего лишь небольшой пример, как можно реализовать дружелюбный интерфейс пометки.
На форме надо разместить:
*Описывать этот процесс не стал, это вы и сами должны уметь делать.
Код протестирован на версии платформы: 1С:Предприятие 8.3 (8.3.15.1830)
Специальные предложения
(1) Спасибо. Незнакомец, мне так лестно читать такой чудесный отзыв.
А так, код не оригинален, просто когда надо такое добавить в обработку, лениво вспоминать, хочется просто заглянуть на Инфорстарт и взять это.
.
Ну и для людей полезно, вдруг что углядят себе полезное. Люди, пользуйтесь.
Кстати, правила хорошего тона обычно подразумевают объединение флажка и «ведущей» колонки в группу с типом объединения «в ячейке», а не вывод разными колонками.
А если подобные азы «лениво вспоминать», то просто, видимо, практики маловато. Это пишется за пару минут на полном автоматизме.
Автор, вы б для разнообразия хоть чуток посложней задачку бы взяли. Например, отметку в дереве с включением и выключением флажков во вложенных ветках. Хотя б приличнее смотрелось бы, чем эта детская песочница.
И, чисто так к вашему сведению, в таблице значений «ЗаполнитьЗначения» реализована по сути тем же самым циклом.
(9) Успокоиться не можешь.
Никакой нагрузки не будет.
Люди не работают с миллонном строк.
Вашему боту ненужны мои галочки.
(11) да автор сей публикации видимо не в курсе как даже мелкие объемы данных могут сожрать производительноть системы, тем более если это будет типа универсальный алгоритм и будет он везде юзаться по всей конфигурации, а это значит это будут и 10 строк и тысячи, а еще это помножить на две сотни+ юзеров.
Помнится приходилось фирму 1С учить уму разуму, при расчете автоматических скидок в тех же заказах клиентов 1С ERP, где для того чтобы получить пустую таблицу значений с колонками 1С делали «Выгрузить» всей табличной части и потом делали вызов «СкопироватьКолонки», ну посоветовал им хотя бы так делать «Выгрузить(Новый Массив)» (то есть получить таблицу без строк, так как массив строк пуст), а уже потом «СкопироватьКолонки»))) деталей не помню, но суть была такова, что в документах реализации тоже идет расчет скидок, а заказов в одной реализации была туча, и просадка была по производительности ой как значительна)))
ну про косяк с теми же автоскидками, где в документе реализации получалось свыше 99999 строк в таблице скидок я помолчу))) там супер сложная зависимость была, тоже ловил причину ошибки, описывал её, отписывался в суппорт, исправили
Табличное поле
Как реализовать в дереве значений флажок с тремя состояниями?
8.2 УП
Необходимо реализовать трехпозиционный флажок в ДеревеЗначений на управляемой форме 1С предприятия 8.2, который работает по следующему алгоритму:
* Если у элемента ДереваЗначений нет подчиненных элементов, то флажок может быть либо “включен”, либо “выключен”.
* Если у элемента есть подчиненные, то флажок “включен”, если ВКЛЮЧЕНЫ флажки у ВСЕХ подчиненных элементов, “выключен” если ВЫКЛЮЧЕНЫ флажки у ВСЕХ подчиненных элементов.
Если у некоторых подчиненных элементов флажки включены, а у некоторых выключены, то флажок родительского элемента имеет значение “неопределенно”.
* При включении флажка у родительского элемента, включаются флажки ВСЕХ подчиненных, при выключении флажка у родительского элемента, выключаются флажки ВСЕХ подчиненных.
Здесь процедура УстановкаФлажков() рекурсивно устанавливает флажки в подчиненных строках:
Код 1C v 8.х
А функция УстановленноДляВсех() проверяет установлено ли одинаковое значение для всех строк на текущем уровне:
Код 1C v 8.х
Похожие FAQ
Еще в этой же категории
Программное создание таблицы значений с условным оформлением 12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора