[Взрыв шаблона!] Новый способ программной настройки условного оформления

Публикация № 1161402

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

ЕХТ Условное оформление

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

 

В "Файлах публикации" находится обработка, в которой есть весь необходимый код и примеры, рассматриваемые ниже. Обработка универсальная и не зависит от используемой конфигурации. Протестирована на платформе 1С:Предприятие 8.3 (8.3.13.1926).

 

Пример 1: Знакомство

Как нужно было делать раньше:

ЭлементОформления = ЭтотОбъект.УсловноеОформление.Элементы.Добавить();
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("А");
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Б");
ОтборОформления = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборОформления.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ХочуКрасненького");
ОтборОформления.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборОформления.ПравоеЗначение = Истина;
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Красный);
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Белый);

Как можно делать теперь:

ОбъектНастройки = РеквизитФормыВЗначение("Объект").Настроить(ЭтотОбъект.УсловноеОформление)
   .Элемент("А, Б")
      .Отбор("ХочуКрасненького", "Равно", Истина)
      .Оформление("ЦветФона", WebЦвета.Красный)
      .Оформление("ЦветТекста", WebЦвета.Белый)

 
Да! Этот код не только проходит проверку синтаксиса, но и работает)

 

Пример 2: Группы отборов

Разрешите мне не приводить типовой код, а сразу показать новый способ с группами отборов:

ОбъектНастройки = РеквизитФормыВЗначение("Объект").Настроить(ЭтотОбъект.УсловноеОформление)
	.Элемент("ТЗПримечание")
		.ГруппаИЛИ()
			.Отбор("ТЗ.К1", "Равно", 0)
			.Отбор("ТЗ.К2", "Равно", 0)
		.КонецГруппы()
		.Оформление("Текст", "К1 или К2 не заполнено");

// Какие-то доп.условия
Если ХочуКрасненького Тогда
	ОбъектНастройки
		.Оформление("ЦветТекста", WebЦвета.Красный);
КонецЕсли;

// Продолжение настройки   
ОбъектНастройки
	.Элемент("ТЗПримечание")
		.ГруппаИ()
			.Отбор("ТЗ.К1", "НеРавно", 0)
			.Отбор("ТЗ.К2", "НеРавно", 0)
			.Отбор("ТЗ.К1", "Меньше", Новый ПолеКомпоновкиДанных("ТЗ.К2"))
		.КонецГруппы()
      		.Оформление("Текст", "К1 < К2");
 
В конце описания каждой группы отборов добавляется КонецГруппы(). Эта конструкция позволяет избавиться от использования промежуточных переменных. Примеры с вложенными группами отборов смотрите ниже, в Примере 3.
 
Также, в этом примере видно, что код настройки не обязательно должен быть монолитным. ОбъектНастройки сохраняет в себе уже сделанные изменения и, при необходимости, позволяет продолжить настройку.
 

Пример 3: Сравнение типового (с использованием БСП) и нового способа

Под спойлером - код из типовой конфигурации.

 
Типовая настройка условного оформления с использованием БСП (код из БП 3.0)

 

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

А теперь то же самое новым способом:

ОбъектНастройки = Обработки.НастройкаУсловногоОформления.Создать().Настроить(ЭтотОбъект.УсловноеОформление)
	
.Элемент("ТоварыСчетУчетаНДС")
	.ГруппаИЛИ()
		.Отбор("РассчитыватьСуммаВРознице",		"Равно", Истина)
		.ГруппаИ()
			.Отбор("Объект.НДСВключенВСтоимость",	"Равно", Истина)
			.Отбор("УчетАгентскогоНДС",		"Равно", Ложь)
		.КонецГруппы()	
		.Отбор("ЭтоКомиссия",				"Равно", Истина)
		.Отбор("Объект.ВидОперации",			"Равно", Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ВПереработку)
	.КонецГруппы()	
	.Оформление("Видимость", Ложь)
		
.Элемент("ТоварыЦенаВРознице")
	.ГруппаИЛИ()
		.ГруппаИ()
			.Отбор("РассчитыватьСуммаВРознице",	"Равно", Истина)
			.Отбор("ТоварыСвернуты",		"Равно", Истина)
			.Отбор("НТТ",				"Равно", Истина)
		.КонецГруппы()
		.Отбор("НТТ",					"Равно", Ложь)
		.Отбор("РассчитыватьСуммаВРознице",		"Равно", Ложь)
	.КонецГруппы()
	.Оформление("Видимость", Ложь)
	
.Элемент("ТоварыСтавкаНДСВРознице")	
	.ГруппаИЛИ()
		.Отбор("РазделениеПоСтавкамВРознице",		"Равно", Ложь)
		.Отбор("НТТ",					"Равно", Ложь)
		.Отбор("РассчитыватьСуммаВРознице",		"Равно", Ложь)
	.КонецГруппы()
	.Оформление("Видимость", Ложь)
		
.Элемент("ТоварыСуммаВРознице")	
	.ГруппаИЛИ()
		.Отбор("РассчитыватьСуммаВРознице",		"Равно", Ложь)			
		.Отбор("НТТ",					"Равно", Ложь)
	.КонецГруппы()
	.Оформление("Видимость", Ложь)
			
.Элемент("ТоварыСтавкаНДС, 
	 |ТоварыСуммаНДС, 
	 |ТоварыВсего, 
	 |ТоварыНомерГТД, 
	 |ТоварыСтранаПроисхождения, 
	 |ТоварыСпособУчетаНДС")	
	.Отбор("Объект.ВидОперации",				"Равно", Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ВПереработку)			
	.Оформление("Видимость", Ложь)
Согласитесь, теперь стало гораздо понятнее и по наглядности сопоставимо с формой интерактивной настройки условного оформления.
 

Вывод

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

 

Как это использовать у себя

  • Скачайте обработку
  • Встройте в конфигурацию или расширение с именем "НастройкаУсловногоОформления"
  • При необходимости создания программной настройки условного оформления, пишите:
ОбъектНастройки = Обработки.НастройкаУсловногоОформления.Создать().Настроить(ЭтотОбъект.УсловноеОформление)
// и далее как в примерах
 

Смотрите также

Эта и многие другие возможности входят в состав [ЕХТ] Фреймворк для расширений.

Попробуйте, гарантирую - Вам понравится!

Скачать файлы

Наименование Файл Версия Размер
[Взрыв шаблона!] Новый способ программной настройки условного оформления

.epf 13,31Kb
01.12.19
39
.epf 13,31Kb 39 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. kalyaka 616 02.12.19 10:34 Сейчас в теме
Идея классная! Код действительно выглядит чище.

Что касается оформления полей формы, не связанных с таблицей, то есть ограничения платформы. По моему раньше, до какого-то релиза в платформе, вообще не было возможности влиять на оформление не табличных полей формы через УО. Теперь похоже можно, но не все настройки действуют, например следующее оформление не сработало:
ХочуКрасненького = Ложь;

ЭтотОбъект.УсловноеОформление.Элементы.Очистить();
ОбъектНастройки = РеквизитФормыВЗначение("Объект").Настроить(ЭтотОбъект.УсловноеОформление)
   .Элемент("А, Б")
      .Отбор("ХочуКрасненького", "Равно", Ложь)
      .Оформление("Видимость", Ложь)
3. mszsuz 238 02.12.19 11:48 Сейчас в теме
(1) Да, некоторые параметры оформления платформа просто игнорирует, причем молча.

(2) А может начнут и в типовых использовать - ну не враги же они сами себе, в конце концов? Пока примеры искал, видел даже кое-где #Область уже используют.
2. Vladimir Litvinenko 2403 02.12.19 11:22 Сейчас в теме
Бегло просматривая первые примеры показалось, что это описание штатных возможностей новой платформы. Даже обрадовался инженерной мысли разработчиков - не прошло и ста лет )) Потом вчитался.... увы нет. Не потому, что использовать нельзя, а потому, что в типовых конфигурациях такого подхода не увидим.

Код действительно смотрится намного аккуратнее. Внутри обработки тоже несколько простых и аккуратно оформленных методов, которые можно использовать и развивать. Спасибо!
cleaner_it; work.sable; +2 Ответить
4. brr 179 02.12.19 13:55 Сейчас в теме
Текучий интерфейс рулит!
8. Andry.Boris 58 10.02.20 18:34 Сейчас в теме
Интересное решение.
Решил проверить.
платформе 1С:Предприятие 8.3 (8.3.14.1976)


{Обработка.Обработка1.Форма.Форма.Форма(4)}: Метод объекта не обнаружен (Настроить)
ОбъектНастройки = РеквизитФормыВЗначение("Объект").Настроить(ЭтотОбъект.УсловноеОформление)

Проверку проходит дормально, а вот исполнение хромает.
Подскажите, что делаю не так.
5. XilDen 102 23.12.19 13:06 Сейчас в теме
Крутой функционал!
А у меня есть обработка, которая полностью генерирует код создания условного оформления на основе настроенного в конфигураторе:
https://infostart.ru/public/1171297/
Теперь вот думаю, может дописать сразу генерацию кода в вашем формате))
6. Igor030370 187 10.02.20 09:05 Сейчас в теме
Вот что это напоминает.
Оператор With... End With (Visual Basic)

Выполняет последовательность операторов, которые многократно ссылаются на единственный объект или структуру, чтобы операторы могли использовать упрощенный синтаксис доступ к членам объекта или структуры. При использовании структуры можно только считывать значения членов или вызвать методы. При попытке присвоения значений членам структуры, используемым в операторе With...End With, возникает ошибка.
Синтаксис
VB

With objectExpression
[ statements ]
End With

Когда-то давно "пописывал" на VB)))
purgin; user764477; +2 Ответить
7. user764477 10.02.20 14:07 Сейчас в теме
(6)Тоже напомнило. и да, мне не хватало With в 1с
9. mszsuz 238 10.02.20 18:43 Сейчас в теме
(8) В конце публикации есть описание "Как это использовать у себя"
10. ILM 238 16.02.20 13:28 Сейчас в теме
Ну это же так "важно" для бизнеса? Настройки оформления, как бизнес жил без этого и жить дальше будет? (это был сарказм).
11. user976948 17.02.20 14:33 Сейчас в теме
Здесь последовательность вызовов смотрится органично
12. mszsuz 238 21.09.20 12:42 Сейчас в теме
А если немного доработать, то и условие сравнения можно писать сокращенно, н-р:
ОбъектНастройки = Обработки.НастройкаУсловногоОформления.Создать().Настроить(ЭтотОбъект.УсловноеОформление)
	
.Элемент("ТоварыСчетУчетаНДС")
	.ГруппаИЛИ()
		.Отбор("РассчитыватьСуммаВРознице",		"=", Истина)
		.ГруппаИ()
			.Отбор("Объект.НДСВключенВСтоимость",	"=", Истина)
			.Отбор("УчетАгентскогоНДС",		"=", Ложь)
		.КонецГруппы()	
		.Отбор("ЭтоКомиссия",				"=", Истина)
		.Отбор("Объект.ВидОперации",			"=", Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ВПереработку)
	.КонецГруппы()	
	.Оформление("Видимость", Ложь)
		
.Элемент("ТоварыЦенаВРознице")
	.ГруппаИЛИ()
		.ГруппаИ()
			.Отбор("РассчитыватьСуммаВРознице",	"=", Истина)
			.Отбор("ТоварыСвернуты",		"=", Истина)
			.Отбор("НТТ",				"=", Истина)
		.КонецГруппы()
		.Отбор("НТТ",					"=", Ложь)
		.Отбор("РассчитыватьСуммаВРознице",		"=", Ложь)
	.КонецГруппы()
	.Оформление("Видимость", Ложь)
	
.Элемент("ТоварыСтавкаНДСВРознице")	
	.ГруппаИЛИ()
		.Отбор("РазделениеПоСтавкамВРознице",		"=", Ложь)
		.Отбор("НТТ",					"=", Ложь)
		.Отбор("РассчитыватьСуммаВРознице",		"=", Ложь)
	.КонецГруппы()
	.Оформление("Видимость", Ложь)
		
.Элемент("ТоварыСуммаВРознице")	
	.ГруппаИЛИ()
		.Отбор("РассчитыватьСуммаВРознице",		"=", Ложь)			
		.Отбор("НТТ",					"=", Ложь)
	.КонецГруппы()
	.Оформление("Видимость", Ложь)
			
.Элемент("ТоварыСтавкаНДС, 
	 |ТоварыСуммаНДС, 
	 |ТоварыВсего, 
	 |ТоварыНомерГТД, 
	 |ТоварыСтранаПроисхождения, 
	 |ТоварыСпособУчетаНДС")	
	.Отбор("Объект.ВидОперации",				"=", Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ВПереработку)			
	.Оформление("Видимость", Ложь)
Показать
Оставьте свое сообщение

См. также

Альтернативный способ добавления элементов и реквизитов на формы Промо

Работа с интерфейсом v8 ERP2 УТ11 Россия Абонемент ($m)

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

1 стартмани

09.09.2019    10980    12    bmk74    3    

Галерея общих картинок конфигурации для управляемого интерфейса

Универсальные обработки Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Когда необходимо быстро просмотреть объекты типа "Общая картинка" в конфигурации: в случае, если картинок почти 1500, и просматривать каждую в конфигураторе неудобно. Да и просто для любой конфигурации с любым количеством объектов "Общая картинка". Вывод в форму или табличный документ вертикально или "плиткой".

2 стартмани

23.09.2020    471    1    apostal86    13    

Визуальный html WYSIWYG редактор без сторонних библиотек на управляемых формах

Прочие инструменты разработчика Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Простой и удобный html редактор без сторонних библиотек.

1 стартмани

31.08.2020    2619    6    ivanov660    10    

Автоматическое построение формы внешней обработки по данным реквизитов, табличных частей и экспортных методов*

Работа с интерфейсом Универсальные функции v8::УФ Абонемент ($m)

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

1 стартмани

07.08.2020    1067    0    TSSV    0    

Менеджер открытых форм Промо

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

Обработка получает информацию об открытых формах и позволяет ими манипулировать.

1 стартмани

13.04.2017    21100    37    SeiOkami    19    

Интерфейс программиста

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Универсальный интерфейс для работы с любой типовой или нетиповой базой, специально разработанный под нужды программиста.

4 стартмани

15.07.2020    2050    1    mkalimulin    0    

Аналог типовой формы выбора периода с возможностью указать время

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

Аналог типовой формы выбора периода с возможностью указать период со временем (в стандартном периоде невозможно указать время).

1 стартмани

09.06.2020    1165    0    App0st0l    0    

Список контекстных обсуждений из системы взаимодействия

Работа с интерфейсом v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Система взаимодействия имеет одно неоспоримое преимущество перед другими популярными чатами - возможность формировать контекстные обсуждения для любого объекта, имеющего ссылку, включая ПВХ, виды расчётов и счета плана счетов. Однако, само обсуждение можно легко потерять, если не помнишь с каким объектом оно связано. Предлагаемое расширение поможет решить эту проблему.

1 стартмани

21.04.2020    1854    11    check2    10    

Расширенная настройка динамического списка УФ Промо

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

31.05.2017    31805    149    tormozit    23    

Открыть форму внутри другой формы - наконец-то возможно!

Работа с интерфейсом v8::УФ Абонемент ($m)

Я давно мечтал о возможности открытия форм 1С внутри других форм, мне время от времени попадаются задачи, где это бы пригодилось. И вот в версии 8.3.16 наконец-то это можно реализовать! Конечно, это не совсем то, что я ожидал, но получилось все равно интересно. Давайте посмотрим.

1 стартмани

15.04.2020    11683    8    CyberCerber    52    

Управление состоянием для шаблона MVC и работы с данными объекта

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

18.03.2020    3477    kalyaka    33    

Итоги в табличной части с учетом отбора (управляемая форма)

Работа с интерфейсом v8 v8::УФ ЗУП3.x Россия Абонемент ($m)

Отображение итогов в подвале табличной части документа (управляемая форма) с учетом отбора. На примере документа Отражение зарплаты в бухучете из ЗУП 3.1 (расширение)

1 стартмани

09.03.2020    3230    1    evgeni-red    0    

Открывашка ячеек таблиц Промо

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Глобальное сочетание клавиш для открытия объекта по ссылке из текущей ячейки любой таблицы в большинстве управляемых форм

1 стартмани

27.10.2018    16634    12    tormozit    31    

Удобный редактор графических схем

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

29.02.2020    1935    6    hodytone    2    

Программный вызов меню "Файл - Открыть"

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Эмуляция хоткея командного меню "Файл - Открыть - [Любой ранее открытый файл по номеру]" с использованием WScript.

1 стартмани

18.02.2020    1959    0    Nuuq    8    

Индикация прогресса выполнения фонового задания на управляемой форме внешней обработки

БСП (Библиотека стандартных подсистем) Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка с фоновым выполнением и индикацией процесса для любой конфигурации на основе БСП >= 2.3 без изменения конфигурации и встраивания обработки в "Дополнительные отчеты и обработки".

1 стартмани

27.12.2019    9616    13    1sig    14    

Лучший подарок для бухгалтера - счёты 8.2 (со звуком) Промо

Работа с интерфейсом v8 1cv8.cf Россия Абонемент ($m)

(Толстый клиент) Подарите бухгалтеру счеты, и он(а) Вас никогда не забудет.

1 стартмани

13.05.2011    39861    24    Tatitutu    45    

Многоуровневые списки выбора с оформлением элементов

Практика программирования Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

17.12.2019    7942    2    azhilichev    5    

Панель сообщений - расширенные сообщения пользователю

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

18.11.2019    3394    0    Timic    0    

Карта метаданных 1С для редактора yED, для любых конфигураций

Структура метаданных Работа с интерфейсом v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка "Карта метаданных 1С для редактора yED". Для отображения метаданных любых конфигураций

1 стартмани

28.10.2019    6482    14    ManyakRus    9    

Визуализация событий на временной шкале средствами "Поле HTML документа" Промо

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

31.07.2018    23295    138    Plotks2017    27    

План состояние склада

Работа с интерфейсом v8::УФ Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Отчет для анализа ячеек склада (1С:WMS Логистика. Управление складом) Проверялась и тестировалась на 1С:WMS Логистика. Управление складом, ред. 4.5.1.2

1 стартмани

23.10.2019    3712    3    yasar92    0    

Видимость, доступность элементов форм (управляемые формы)

Работа с интерфейсом v8::УФ ERP2 УТ11 КА2 Россия Абонемент ($m)

Расширение конфигурации позволяет используя типовой функционал модификации конфигурации ERP-решений (УТ 11, КА 2 и ERP 2) "на лету" изменять доступность, видимость, толькопросмотр элементов форм, а так же выполнять произвольный код, который выполняется ПриСозданииНаСервере выбранной формы.

1 стартмани

16.09.2019    5301    8    tsatsur    0    

Группировка по подразделению в "Задачи мне" (расширение для 1С:Документооборот)

Обработка документов Работа с интерфейсом Документооборот и делопроизводство Документооборот и делопроизводство v8::УФ v8::Запросы v8::Бизнес-процессы ДО УУ Абонемент ($m)

Расширение для 1С:Документооборот (2.1), позволяющее сгруппировать все задачи из списка "Задачи мне" по подразделению.

3 стартмани

07.09.2019    4960    9    zannv    1    

Работа с данными выбора Промо

Практика программирования Работа с интерфейсом v8 Россия Абонемент ($m)

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

1 стартмани

17.07.2018    45356    17    kalyaka    16    

Индикатор на управляемой форме

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

18.08.2019    11921    17    aximo    28    

Обновление данных в ячейках таблицы формы на управляемых формах

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

На очередном проекте решал задачу по расчету значений колонок в табличных полях формы. Задача казалась достаточно простой. Однако возникла необходимость работать не только с реквизитами формы типа «ТаблицаЗначений», но и с типом «ДеревоЗначений». Релиз платформы 8.3.13.1644

1 стартмани

15.08.2019    4564    0    BraunAlex    2    

Удобный выбор из таблицы/дерева в УФ

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Выбор из таблицы значений или дерева значений в выпадающем списке рядом с полем ввода - УФ, быстро и просто!

1 стартмани

12.08.2019    12848    7    Yashazz    18    

Интерактивный интерфейс Промо

Рабочее место Работа с интерфейсом v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

29.10.2011    17822    2    Vin_Tik    9    

[Механизм интерфейса] Свой флажок (чекбокс)

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

09.08.2019    15247    18    rpgshnik    43    

Отбор на управляемой форме из списка значений

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Пример простого удобного отбора любых данных ссылочного типа на управляемой форме. Работа обработки проверена на релизе: 1С:Предприятие 8.3.13.1513.

1 стартмани

09.08.2019    16918    19    nagaitseff    6    

Модификация управляемых форм

Работа с интерфейсом Инструментарий разработчика v8::УФ Абонемент ($m)

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

1 стартмани

29.06.2019    5005    3    vadim1980    3    

Программное формирование форматированной строки в стиле html+inline CSS Промо

Работа с интерфейсом Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Если вам приходилось работать с форматированными строками программно, то вы знаете, какая это боль. Данное решение облегчает программное формирование таких строк.

1 стартмани

18.11.2017    31047    33    bonv    10    

Обработка-редактор HTML

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Редактор HTML для управляемого интерфейса 8.3.

1 стартмани

10.06.2019    7643    57    ValeriVP    11    

Псевдозакладки в управляемой форме

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

05.06.2019    4224    7    tusv    31    

Индикатор выполнения длительных операций на сервере 1С 8.3 (управляемые формы)

Работа с интерфейсом Практика программирования Разработка v8::УФ Россия Абонемент ($m)

Индикатор выполнения (отображение прогресса) длительных операций в тонком клиенте 1С:Предприятия 8.3, когда полностью весь код исполняется на сервере, а клиент просто ждёт завершения. Используются внешние средства (либо командное окно Windows, либо приложение Java).

1 стартмани

03.06.2019    13968    1    D.B.Sokolov    20    

Цветовые схемы для конфигуратора 1С (Популярные цветовые схемы для C# - теперь и для 1С) (Теперь 8.2 - 8.3) Промо

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Тёмные цветовые схемы кода. То, что было доступно всем передовым средствам разработки, теперь доступно и на 1С. 13.12.17 UPD: Теперь работает с платформой 8.3

3 стартмани

07.10.2013    34401    83    Chernov_Dmitriy    82    

Программное создание контекстного меню по списку данных

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

03.06.2019    4686    2    vasilev2015    0    

Редактирование и просмотр JSON в интерфейсе 1С (через поле HTML документа)

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Позволяет открыть любой текст JSON в поле HTML Документа в удобном для редактирования виде, и получить результаты редактирования. Обработка является оберткой над сайтом http://jsoneditoronline.org, для работы обработки требуется доступ к интернету на клиенте.

1 стартмани

16.05.2019    4147    10    VVi3ard    0    

Копирование элементов управляемых форм

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Всем тем, кто создавал элементы управляемых форм программно - посвящается...

1 стартмани

16.05.2019    4204    9    ValeriVP    1    

Редактирование данных прямо в отчете СКД (как в Excel). Теперь с пересчетом итогов! Промо

Практика программирования Работа с интерфейсом v8::СКД 1cv8.cf Абонемент ($m)

Вам не подходит обычная форма ввода данных Клиент хочет прямо в отчете изменять цифры Тогда этот шаблон поможет вам быстро добавить в ваш отчет СКД механизм редактирования данных

2 стартмани

21.11.2012    40410    279    Visitizer    52    

Группировка по виду документа в "Задачи мне" (расширение для 1С:Документооборот)

Обработка документов Работа с интерфейсом Документооборот и делопроизводство Документооборот и делопроизводство v8::УФ v8::Запросы v8::Бизнес-процессы ДО УУ Абонемент ($m)

Расширение для 1С:Документооборот (2.1), позволяющее сгруппировать все задачи из списка "Задачи мне" по виду документа (служебные записки, приказы и т.д.).

3 стартмани

16.04.2019    9511    27    zannv    16    

Выбор даты

Универсальные обработки Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

Обработка для удобного выбора даты и времени.

1 стартмани

14.04.2019    3426    0    denacid    2    

"Все функции" с возможностью поиска по первым символам

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

21.03.2019    3997    8    m0528    2    

NativeDraw: Компонента рисования для 1С [V2.6.2] Промо

Разработка внешних компонент Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

13.07.2015    46482    428    ПерваяСистема    147    

Форма выбора периода как в Такси УФ JS

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Однажды мне пришла задача: "Ограничить выбор периода интерактивно". Но, как оказалось, типовая форма выбора периода не позволяет ограничивать и учитывать запреты (или, может, я этого не знаю?). Так вот раз, два и готово.

1 стартмани

21.03.2019    5227    3    Xapac    2    

Восстановление открытых окон прошлого сеанса работы

Работа с интерфейсом v8 v8::УФ БП3.0 Абонемент ($m)

По завершении работы в 1С хочу с утра продолжать работать с теми же окнами, если остались задачи на утро.

1 стартмани

01.03.2019    3807    4    pupkinSana    0    

Программное добавление элементов на управляемую форму

Работа с интерфейсом v8::УФ 1cv8.cf Россия Абонемент ($m)

Пример добавления Команд, Полей ввода, Групп, Страниц, Реквизитов, Обработчиков событий.

1 стартмани

13.02.2019    34481    26    spec8s    20    

V8Reader (с расширенным анализом форм) Upd. Промо

Инструментарий разработчика Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

27.01.2012    74761    570    bambr1975    303    

Пример динамических часов на html

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

13.02.2019    3488    8    silberRus    0    

Связанные табличные части (управляемые формы)

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ Абонемент ($m)

У нас есть 2 связанные табличные части, и нам надо, чтобы по текущей строке в одной из них мы видели только определенные строки во второй. Были бы у нас динамические списки, мы бы взяли событие "При активизации строки" и стандартный механизм отборов СКД, которая лежит в основе списка. Но вот с табличными частями так не получится. Тут нам надо будет написать несколько строк кода и использовать "ОтборСтрок", доступный для таблицы формы. Тестировалось на платформе 8.3.13.1644, будет работать и на более ранних версиях платформы.

1 стартмани

25.01.2019    10063    11    Kim1C    7    

Построение градиента

Практика программирования Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Небольшая функция, строящая градиент, и обработка для построения произвольных градиентов.

1 стартмани

13.01.2019    4727    1    Serge R    1