Конструктор картинок CSS

16.12.21

Разработка - Инструментарий разработчика

Иногда при разработке интерфейса в 1С возникает необходимость более наглядного графического представления объектов. Обработка "Конструктор картинок CSS" облегчит решение этой задачи. Управляемые формы, 1С:Предприятие 8.3 (8.3.15.1830 и выше).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Конструктор картинок CSS
.epf 112,83Kb
29 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

    В ряде случаев, представление объектов в виде картинок делает пользовательский интерфейс более простым и интуитивно понятным. К примеру, карта склада с динамическим обновлением состояния и возможностью выбора стеллажа/ячейки  или рабочее место оператора системы управления АЗС, показанное ниже:

 

   

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

   В данной публикации представлен конструктор CSS изображений, упрощающий создание графических элементов с помощью поля HTML:

 


 
   Использование поля HTML + CSS рисование позволяет реализовать практически любые интерфейсные желания.
Основные плюсы способа:
- возможность использования в основных режимах клиентского приложения (управляемые и обычные формы, web и мобильный клиент) 
- возможность динамически формировать и загружать на форму сложные графические отображения объектов
- возможность реализации всей работы с HTML  на Клиенте, создание и обновление изображения не требует обращения на Сервер
- высокая скорость отрисовки, отсутствие подвисаний, миганий и прочих глюков даже при работе на "слабых" ПК
- кликабельность, возможность выбора любого элемента изображения, его идентификации и программной обработки клика.  

Основные минусы
- требуются базовые навыки HTML и CSS, иногда javascript
- формирование требуемых шаблонов HTML требует существенного времени и терпения.

   Конструктор картинок CSS реализован в виде независимой внешней обработки 1С и предназначен для ускорения разработки шаблонов HTML. Для его использования требуются минимальные знания HTML и CSS (хотя можно и без них). Возможен запуск в любой конфигурации 1С в режиме управляемых форм на платформе 8.3.15.1830 и выше.

Особенности:
- шаблон картинки формируется путем компоновки блоков HTML и придания им требуемой формы и цвета
- возможность редактирования в режиме конструктора более 50 свойств выбранного блока:

 

 

- результат отображается в поле HTML и динамически обновляется в процессе редактирования; 
- структура редактируемого шаблона представляется в виде дерева и виде готового текста HTML;
- возможность сохранения редактируемой структуры HTML в файл (как полностью, так и выбранного узла);
- возможность вставки нового блока копированием выбранного блока дерева HTML;
- возможность вставки нового блока из выбранного файла;
- возможность вставки нового блока из палитры основных фигур;
- возможность компоновки блоков в дереве HTML (Drag-and-drop, команды перемещения). 

Пример простого использования для управляемой формы:
- подготовьте в конструкторе CSS требуемый шаблон, установите ID для блоков, по которым необходимо отрабатывать клик;
- на форму 1С добавьте строковый реквизит "ПолеHTML"(к примеру) и соответствующий элемент формы с видом "Поле HTML документа";
- в обработчике "ПриОткрытии" формы установите в значение реквизита "ПолеHTML" сформированный в конструкторе CSS текст HTML;
- заполните обработчик события "ПриНажатии" элемента "ПолеHTML":

&НаКлиенте
Процедура ПолеHTMLПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    
    //Поиск ИД выбранного блока
    УровеньВложенности = 10;
    Попытка
        ЭлементID = ДанныеСобытия.Element.ID;
        
        Если ЭлементID = "" Тогда
            Сч = 0;
            Родитель = ДанныеСобытия.Element.parentElement;
            Если Родитель<>Неопределено Тогда 
                ЭлементID = Родитель.ID;
                
                Пока ЭлементID = "" Цикл     
                    Родитель = Родитель.parentElement;
                    Если Родитель<>Неопределено Тогда
                        ЭлементID = Родитель.ID;        
                    Иначе
                        Прервать;
                    КонецЕсли;
                    
                    Сч = Сч+1;
                    Если Сч>УровеньВложенности Тогда
                        Прервать;
                    КонецЕсли;
                КонецЦикла;
            КонецЕсли;
        КонецЕсли;
    Исключение
        ЭлементID = "";
    КонецПопытки; 
    
    Если ЭлементID <> "" Тогда 
       //"ID1", "ID2"... - идентификаторы блоков в HTML
        Сообщить("Выбран блок с ИД "+ЭлементID);
        Если ЭлементID = "ID1" Тогда 
            //код обработки
        ИначеЕсли ЭлементID = "ID2" Тогда
            //код обработки
        Иначе    
            //код обработки
        КонецЕсли;
    Иначе    
        //код обработки
    КонецЕсли;
КонецПроцедуры


Подобным образом в конструкторе CSS реализован выбор предопределенных фигур.

Всем успехов и с наступающим Новым годом!


P.S.
Для подбора цвета в конструкторе CSS картинок я использовал диалог выбора цвета из публикации:

//infostart.ru/public/185249/
Автору большое спасибо!

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

интерфейс конструктор CSS картинки поле HTML

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    223377    1216    415    

1063

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

14400 руб.

20.08.2024    46096    252    129    

233

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

9900 руб.

25.08.2025    19397    46    7    

54

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Библиотека стандартных подсистем Платные (руб)

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

22200 руб.

06.10.2023    28619    76    30    

101

Инструментарий разработчика Программист 1С v8.3 Платные (руб)

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

9500 руб.

17.05.2024    40663    148    57    

184

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

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

16000 руб.

10.11.2023    20232    78    39    

92

Инструментарий разработчика Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

6000 руб.

07.02.2018    109136    250    100    

314
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. cleaner_it 198 17.12.21 10:49 Сейчас в теме
2. Yashazz 4884 17.12.21 14:03 Сейчас в теме
(1) ну да, теперь-то, с появлением WebKit, всё это стало легко, просто и самоочевидно... А вот на чём-то ниже 8.3.14 это хренушки. Так что, этому "отличному подходу" лет десять с хвостиком, и лишь недавно он перестал требовать адских извратов и мучений.
3. cleaner_it 198 20.12.21 05:31 Сейчас в теме
(2) Да кто же спорит) Всё это было и раньше, и не раз, но платформа развивается, решения меняются, извраты упрощаются)
4. SergDobrodelov 806 09.10.23 22:45 Сейчас в теме
Подскажите, что можно сделать, чтобы кернинг нормальный был?
Прикрепленные файлы:
Для отправки сообщения требуется регистрация/авторизация