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

Идея или как сохранить ЦВЕТ, ШРИФТ, ОФОРМЛЕНИЕ пользователя

  • Добавить свою публикацию
  • для этого требуется регистрация

Добрый день !

Пользователи стали все более изощренными и предвзятыми и им очень нравиться , когда ВСЁ раскрашено в ИХ цвета

- минимальные остатки

- отрицательные остатки

- товар с нулевым остатков

- помеченный на удаление товар

- цвет товара

и.т.д.

и каждый хочешь видеть "свои" цвета.

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

Но, захотелось сделать красиво на практике, и просмотр поиска выдал некоторые приемы сохранения цвета

(план характеристик, хранилище, функции и формулы, замудренные алгоритмы....)

А мне все-таки хотелось простоты как для пользователя, так и для программиста. Что-то вроде реквизита на форме "Поле ввода" с типом значения "Цвет". Но такой реквизит просто так не сохранить, так как он имеет три значения (Зеленый, Красный, Синий)

Итак идея!

подготовить шаблон - лучше всего подходит Табличный документ ( расширение *.mxl)

и формат(ы) будет хранить НУЖНАЯ ЯЧЕЙКА табличного документа

Определяем поля (колонки)

  • использовать/не использовать 
  • условие
  • формат

Простая обработка, которая загружает нужный файл (имя файла - пользователь + разукрашка.mxl) 

 

Дальше открываем свойства выбранной ячейки (колонка № 3)

и здесь нам доступно все !!!!

- шрифт (размер, наименование, жирный, зачеркнутый, подчеркнутый, наклонный)

- цвет фона, цвет узора, цвет текста, оформление и.т.д.

настраиваем и сохраняем шаблон.

В настройках пользователя, добавить флаг - Использовать раскраску (Булево). Глобальная переменная ТДРазукрашка

Процедура ЗагрузитьРазукрашку() Экспорт
    Перем ИмяФайлаРазукрашки;
    ПараметрыСеанса.РаскраскаПользователя = Ложь;

    ИмяФайлаРазукрашки = Константы.ПутьКартинок.Получить() + "РАЗУКРАШКА.mxl";
    ПроверкаРазукрашки = Новый файл(ИмяФайлаРазукрашки);
    Если ПроверкаРазукрашки.Существует() Тогда
        Попытка
            ТДРаскраска = Новый ТабличныйДокумент;
            ТДРаскраска.Прочитать(Константы.ПутьКартинок.Получить() + "РАЗУКРАШКА.mxl");
            ПараметрыСеанса.РаскраскаПользователя = Истина;
        Исключение

        КонецПопытки;
    КонецЕсли;

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

//получаем нужное оформление
//параметры шрифта, цвет текста, цвет фона
ТекОбл = ТДРаскраска.Область(4, 3); //строка УСЛОВИЕ, колонка 3 - это отформатированная ячейка
ОформлениеСтроки.ЦветТекста = ТекОбл.ЦветТекста;
ОформлениеСтроки.ЦветФона = ТекОбл.ЦветФона;
НовШрифт = ТекОбл.Шрифт;
ОформлениеСтроки.Шрифт = Новый Шрифт(НовШрифт, Неопределено, НовШрифт.размер, НовШрифт.Жирный, НовШрифт.Наклонный, Неопределено, НовШрифт.Зачеркивание);

Смотрим результат.

Добавляем реквизит (флажок) для отключения этого.....цветопредставления.

 

Примеры приведены из конфигурации MAGAZKA(NS) - лучшая программа для магазина

Всегда ваш Tatitutu (c)

 
0
Еще от автора
≡ к списку статей