Простой редактор плана помещения JavaScript

23.11.16

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

На ресурсе сейчас очень много решений, которые позволяют редактировать карты, используя географические схемы. Так же много решений, которые позволяют редактировать объекты онлайн веб-карт. Мне же нужно было простое решение, для того чтобы расставить квадратные объекты на плане, показать их пользователю. Ну и распечатать, опять же. Я решил написать простенький редактор на JavaScript с использованием библиотеки Raphael.

Скачать файл

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

Наименование По подписке [?] Купить один файл
ПланировкиЗдания.Epf
.epf 795,93Kb
120
120 Скачать (1 SM) Купить за 1 850 руб.

Обработка содержит несколько ресурсов. Это сама библиотека Raphael (c), JavaScript редактора и растровый файл подложки, на которой расставляются объекты.

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

В Web-клиенте обработка не тестировалась. Я отдельно тестировал в Chrome и FireFox. И там, и там сам JavaScript работает нормально.

Можно подключить свои планы и создать свои наборы объектов в процедуре ЗаполнитьСписокОбъектов(). Я не стал удалять код из боевой базы, чтобы было более или менее понятно, как я это делаю.

Javascript Excel VBA Raphael VM Vector Graphics Internet Explorer HTML Векторная графика ПолеHTMLДокумента ГИС Планы помещений.

См. также

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

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

5000 руб.

14.01.2016    55634    17    23    

43

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

Универсальный редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью рисовать на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    63948    45    60    

83

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

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

2400 руб.

29.06.2020    19939    28    6    

44

Работа с интерфейсом Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна

20.08.2024    23495    mrXoxot    44    

130

Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    12046    smielka    37    

105

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    18366    1228    elcoan    53    

125

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

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

3 стартмани

10.04.2023    12892    167    acces969    31    

126

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    8000    kalyaka    6    

33
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Alien_job 192 23.11.16 09:44 Сейчас в теме
Непонятно - где всё-таки работает? Толстый/тонкий клиент, обыные/управляемые формы?
2. igel9780 173 23.11.16 09:55 Сейчас в теме
Работает исключительно на управляемых формах. Тестировалось в толстом клиенте УФ и тонком клиенте УФ. Не тестировалось в Web-клиенте. Есть подозрения, что Web-клиент потребует допиливания напильником.
Почти все процедуры и функции определены на клиенте.
3. Steelvan 307 23.11.16 11:05 Сейчас в теме
1С:Предприятие 8.3 (8.3.7.1970) Тонкий клиент

Ошибка инициализации модуля: Форма.Форма.Форма
по причине:
{Форма.Форма.Форма(695,82)}: Переменная не определена (ЭтотОбъект)
Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопросаОСозданииОбъекта", <<?>>ЭтотОбъект, Новый Структура("ТекущиеДанные", ТекДанные));
{Форма.Форма.Форма(725,82)}: Переменная не определена (ЭтотОбъект)
Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопросаОбУдаленииОбъекта", <<?>>ЭтотОбъект, Новый Структура("ТекущиеДанные", ТекДанные));
6. igel9780 173 23.11.16 11:57 Сейчас в теме
(3) Steelvan, Возможно, в вашей конфигурации стоит режим совместимости с платформой 8.2. Честно скажу, не определял нижний порог режима совместимости.
4. Steelvan 307 23.11.16 11:05 Сейчас в теме
Скачал, посмотрел, за старания поставил +.
5. Steelvan 307 23.11.16 11:11 Сейчас в теме
Как то очень много JS кода, гораздо быстрее этого же результата можно добиться используя http://infostart.ru/public/559585/ где почти все на языке 1С.
7. Andry.Boris 59 23.11.16 18:13 Сейчас в теме
(5) Steelvan, Ваш граф. движок просто замечательный, за исключением, что стоит 19 000 руб. А здесь автор предлагает альтернативу и к том уже бесплатную. Смысл сравнивать два пакета каждый имеет право на свою нишу.
Автор показал пример решения вопроса и он молодец, однозначно +
starik-2005; Светлый ум; PowerBoy; Andrsan; BushNik; Evgenij1990; smit1c; tricolor; Восьмой; mr.lynx; qwertor; AlexeyFreeLife; by_1Cnik; TreeDogNight; JohnyDeath; alexveraww; davydoff; salexdv; Alien_job; vano-ekt; eskor; Dozkni; fancy; igel9780; Константин С.; CyberCerber; ipoloskov; +27 Ответить
8. MCitrus 77 02.12.16 08:37 Сейчас в теме
Когда-то делал подобное - http://infostart.ru/public/186183. До сих пор пользуемся))
9. BushNik 13.12.16 16:13 Сейчас в теме
Спасибо за обработку. Буду пытаться эту штуку внедрить в свою конфигурацию... Надеюсь получится...
10. newdigger 09.01.17 09:51 Сейчас в теме
Спасибо автору за идею! Мне как раз было необходимо нечто подобное.
11. TreeDogNight 22 27.05.17 05:14 Сейчас в теме
Эх, думал, что вся схема помещения рисуется с помощью этой обработки, а оказывается нет....
Evgenij1990; +1 Ответить
12. igel9780 173 27.05.17 08:56 Сейчас в теме
В публикации указано про растр подложки. Он в автокаде нарисован. Эмуляция автокада в 1с это не цель публикации за 1sm
13. juliasoft 101 13.12.17 09:42 Сейчас в теме
Большое спасибо за обработку. Будет очень интересно в ней разобраться :-)
14. ig0z 25.08.19 11:51 Сейчас в теме
Вываливается в ошибку
{ВнешняяОбработка.кпнПланировкиЗдания.Форма.Форма.Форма(694)}: Метод объекта не обнаружен (SetFocusTo)
Элементы.РеквизитHTML.Документ.parentWindow.SetFocusTo(ТекДанные.ПолучитьИдентификатор());
15. ig0z 25.08.19 12:28 Сейчас в теме
(14) Переименовал реквизит "Масштаб" в основной форме и заменил в Модуле формы и заработало
16. maxis33 45 20.09.19 18:58 Сейчас в теме
Интересная работа!
А кто разобрался как новое выделение создать интерактивно?
17. TyuminIS 22.11.19 17:09 Сейчас в теме
УТ11.4.10.57 (1С:Предприятие 8.3 (8.3.15.1565)) - не работает
18. igel9780 173 25.11.19 07:18 Сейчас в теме
(17) На 8.3.6 написано, потом не модифицировалось.
19. kharts 257 25.11.19 21:53 Сейчас в теме
Спасибо автору - это замечательная наработка, свои задачи решает.
С увеличением версий платформы, требует немного правок в форме обработки:
1. Следует переименовать реквизит формы "Масштаб" (и соответственно его упоминания в модуле формы);
2. Значения масштаба 0,25 и 0,75 перестали отображаться, следует округлить до десятых
Функция ЗначениеМасштаба()
	Если МасштабПлана = 0 Тогда
		Возврат 0.1;
	ИначеЕсли МасштабПлана = 1 Тогда
		Возврат 0.2;
	ИначеЕсли МасштабПлана = 2 Тогда
		Возврат 0.5;
	ИначеЕсли МасштабПлана = 3 Тогда
		Возврат 0.7;
	ИначеЕсли МасштабПлана = 4 Тогда
	...
Показать


Для совместимости с web-kit (не виндовые клиенты или платформа выше 8.3.14.1565):
3. Все обращения к параметру
Элементы.РеквизитHTML.Документ.parentWindow
заменить на
Элементы.РеквизитHTML.Документ.defaultView

4. Строка кода
РеквизитHTML = "about:blank"
теперь не приводит к обновлению страницы (не возникает событие "РеквизитHTMLДокументСформирован") - везде по коду ее можно заменить на
РеквизитHTML = "<!do ctype html> <ht ml> </html>"
woozee; igel9780; PowerBoy; juliasoft; acanta; +5 Ответить
21. juliasoft 101 16.03.20 19:37 Сейчас в теме
20. juliasoft 101 16.03.20 19:36 Сейчас в теме
kharts, спасибо за помощь. Как раз обновили релиз. Кое-то поменяла сама, кое-что подсмотрела у вас.
22. smitti911 19.06.20 09:10 Сейчас в теме
Можете выложить обработку чтоб скачать или прикрепить файлик в комментариях? Спасибо
23. UPKA 13.08.21 15:44 Сейчас в теме
Подскажите, будет ли работать на УФ?
Оставьте свое сообщение