На ресурсе сейчас очень много решений, которые позволяют редактировать карты, используя географические схемы. Так же много решений, которые позволяют редактировать объекты онлайн веб-карт. Мне же нужно было простое решение, для того чтобы расставить квадратные объекты на плане, показать их пользователю. Ну и распечатать, опять же. Я решил написать простенький редактор на JavaScript с использованием библиотеки Raphael.
Работает исключительно на управляемых формах. Тестировалось в толстом клиенте УФ и тонком клиенте УФ. Не тестировалось в Web-клиенте. Есть подозрения, что Web-клиент потребует допиливания напильником.
Почти все процедуры и функции определены на клиенте.
Ошибка инициализации модуля: Форма.Форма.Форма
по причине:
{Форма.Форма.Форма(695,82)}: Переменная не определена (ЭтотОбъект)
Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопросаОСозданииОбъекта", <<?>>ЭтотОбъект, Новый Структура("ТекущиеДанные", ТекДанные));
{Форма.Форма.Форма(725,82)}: Переменная не определена (ЭтотОбъект)
Оповещение = Новый ОписаниеОповещения("ПослеЗакрытияВопросаОбУдаленииОбъекта", <<?>>ЭтотОбъект, Новый Структура("ТекущиеДанные", ТекДанные));
(5) Steelvan, Ваш граф. движок просто замечательный, за исключением, что стоит 19 000 руб. А здесь автор предлагает альтернативу и к том уже бесплатную. Смысл сравнивать два пакета каждый имеет право на свою нишу.
Автор показал пример решения вопроса и он молодец, однозначно +
Вываливается в ошибку
{ВнешняяОбработка.кпнПланировкиЗдания.Форма.Форма.Форма(694)}: Метод объекта не обнаружен (SetFocusTo)
Элементы.РеквизитHTML.Документ.parentWindow.SetFocusTo(ТекДанные.ПолучитьИдентификатор());
Спасибо автору - это замечательная наработка, свои задачи решает.
С увеличением версий платформы, требует немного правок в форме обработки:
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ДокументСформирован") - везде по коду ее можно заменить на