Этюд: Редактирование булево значения в форме списка не открывая формы элемента

19.11.08

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

Есть: Табличное поле с типом значения *Список, у объекта есть реквизит с типом булево. Требуется: Редактировать значение реквизита не открывая формы элемента.

Для реализации потребуются два события элемента управления табличное поле

1. ПриПолученииДанных
Размещение флажка и значения флажка в ячейке табличного поля
2. ПриИзмененииФлажка
Получение и изменение значения объекта

Пример:
В справочнике есть реквизит "закрыт".

Процедура СправочникСписокПриИзмененииФлажка(Элемент, Колонка)
	
	Строка = Элемент.ТекущиеДанные;
	Если Строка <> Неопределено Тогда
		Ссылка = Строка.Ссылка;
		Если Не Ссылка.ЭтоГруппа Тогда
			Объект = Ссылка.ПолучитьОбъект();
			Объект.Закрыт = Не Объект.Закрыт;
			Объект.Записать();
		КонецЕсли;
	КонецЕсли;

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

Процедура СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок)
	
	Колонка = Элемент.Колонки.Найти("Закрыт");
	Если Колонка <> Неопределено И Колонка.Видимость Тогда
		Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
			ДанныеСтроки = ОформлениеСтроки.ДанныеСтроки;
			Если ДанныеСтроки = Неопределено Тогда
				Продолжить;
			КонецЕсли;
			Ссылка = ДанныеСтроки.Ссылка;
			Если Не Ссылка.ЭтоГруппа Тогда
				ОформлениеСтроки.Ячейки.Закрыт.УстановитьФлажок(Ссылка.Закрыт);
			КонецЕсли;
		КонецЦикла;
КонецПроцедуры


P.S. Особенность внесения изменений в существующие формы: в свойстве "данные флажка" колонки табличного поля должно быть пустое значение.


пример

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

См. также

SALE! 15%

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

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

28800 24480 руб.

27.03.2025    61747    37    29    

50

Разработка Инструментарий разработчика Работа с интерфейсом Адаптация типовых решений Нейросети 1C:Бухгалтерия 1C:ERP 1С:ЗУП 1С:КА 1С:УНФ 1С:УТ 1С:Розница 1С:ДО 1С:ERP Управление предприятием 2 Платные (руб)

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

36000 руб.

28.08.2025    4509    1    2    

4

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

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

6000 руб.

14.01.2016    58821    20    25    

46

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

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

5160 руб.

29.06.2020    23324    33    6    

52

Консолидация данных Работа с интерфейсом Программист Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 1C:ERP Узбекистан Беларусь Кыргызстан Россия Казахстан Платные (руб)

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

5988 руб.

17.10.2025    1214    1    0    

1

Универсальные функции Программист 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

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

21.05.2024    48636    dimanich70    83    

169

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

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

28.08.2023    23645    YA_418728146    8    

174

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

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

2 стартмани

22.08.2023    7890    111    progmaster    22    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kisser 2 31.01.17 08:07 Сейчас в теме
Для варианта редактирования списка документов.

В реквизиты добавлено "Оплачено" - тип булево и "ДатаОплаты" - тип дата.
На форме списка добавлены колонки "Оплачено" - тип "флажок" и "ДатаОплаты" - тип "поле календаря" без привязки к данным.

Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
        Колонка = Элемент.Колонки.Найти("Оплачено");
	Если Колонка <> Неопределено И Колонка.Видимость Тогда 
		Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
			ДанныеСтроки = ОформлениеСтроки.ДанныеСтроки;
			Если ДанныеСтроки = Неопределено Тогда 
				Продолжить;
			КонецЕсли;
			Ссылка = ДанныеСтроки.Ссылка;
			ОформлениеСтроки.Ячейки.Оплачено.УстановитьФлажок(Ссылка.Оплачено);
			ОформлениеСтроки.Ячейки.ДатаОплаты.Значение = Ссылка.ДатаОплаты;
		КонецЦикла;
	КонецЕсли;
	
        --//--

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

Процедура ДокументСписокПриАктивизацииЯчейки(Элемент)
	Перем ДатаОплаты;
	Строка = Элемент.ТекущиеДанные;
	Если Элемент.ТекущаяКолонка.Имя = "ДатаОплаты" Тогда
        	Ссылка = Строка.Ссылка;
			Объект = Ссылка.ПолучитьОбъект();
			ВвестиДату(ДатаОплаты,"Введите дату оплаты.");
			Объект.ДатаОплаты = ДатаОплаты;
			Объект.Записать();
    КонецЕсли;
КонецПроцедуры

Процедура ДокументСписокПриИзмененииФлажка(Элемент, Колонка)
	Строка = Элемент.ТекущиеДанные;
	Если Колонка.Имя = "Оплачено" Тогда
        	Ссылка = Строка.Ссылка;
			Объект = Ссылка.ПолучитьОбъект();
			Объект.Оплачено = Не Объект.Оплачено;
			Если Объект.Оплачено = Ложь Тогда
				Объект.ДатаОплаты = "";	
			КонецЕсли;
			Объект.Записать();
	КонецЕсли;
КонецПроцедуры
Показать
casha777@mail.ru; Danil.Potapov; +2 Ответить
Для отправки сообщения требуется регистрация/авторизация