Имя: Пароль:
1C
1С v8
1С + HTML (Управляемое приложение)
0 BiBijke
 
03.03.13
22:12
Собственно возникла задача выводить в ПолеHTMLДокумента произвольные сгенерированные странички на HTML. Собственно мне нужно воткнуть туда 2 скрипта jQuery и библиотеку построения диаграмм. Сразу столкнулся с проблемой как хранить js файлы в конфе, чтобы можно было вывести в документе.

Опробованы следующий способы:

1) указывать скрипты в виде веб ссылок <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>. Вариант рабочий, но не подходит так как не везде есть подключение к инету.

2) Хранить Js скрипты в макетах в виде бинарных данных, патом сохранять во временно хранилище методом ПоместитьВоВременноеХранилище и подставлять етот адрес в src. Не взлетело, HTML документ такую конструкцию не осилил.

3) Сохранять код js файлов в макеты с типом Текстовый документ, патом загружать их код напрямую в сгенерированную строку между тегами <script></script>. Тут непонятная фигня происходит: если загружать несколько js файлов, они начинают конфликтовать с собой. Причем проявляется это в ПолеHTMLДокумента, если сохранить строку в файл и открыть, например, IE 7,8 То все отображается верно.

Я всегда думал, что ПолеHTMLДокумента, это тотже IE, но, видимо это не так.

Кто-нибудь сталкивался с задачей подобного рода? )
1 Armando
 
03.03.13
22:17
http://infostart.ru/public/72375/ вот здесь реализовано
2 Armando
 
03.03.13
22:18
+(1) Делал почти 3 года назад, поэтому не помню как сделал. Но все работает без инета.
3 BiBijke
 
03.03.13
22:21
(2) Спасибо, а залить на бесплатный сервис хранения файлов можешь? )
4 BiBijke
 
03.03.13
23:33
up
5 sikuda
 
03.03.13
23:42
Конечно вариант 3. С конфликтами тебе надо будет самому разбираться. Главное борьба 1С с картинками и графикой.
http://sikuda.ru/?p=64
http://infostart.ru/public/174856/
6 BiBijke
 
03.03.13
23:48
(5) Спасибо за ответ. Насчет разбираться в конфликтах, один и тот же html код по разному работает в 1С браузере и браузерах IE, Firefox. Т.к. нигде не написано какие стандарты поддерживает встроенный браузер куда копать я не знаю. Твои статьи я прочитал, но в случае тонкого клиента, когда нету веб сервера, не понятно всетаки как присобачить етот js.
7 badboychik
 
04.03.13
00:03
Я с этим сталкивался, упаковывал скрипты упаковщиками и вставлял в код. Например вместо jQuery можно использовать zepto.js если анимацию не надо, цепто раз в 5 меньше
8 sikuda
 
04.03.13
00:05
Когда приходит понимание - все становить проcто и логично:
Скрипт = ПолучитьМакет("jquery_min_js").ПолучитьТекст();
   Страница = СтрЗаменить(Страница, "src=""./dist/jquery.min.js"">", ">"+Скрипт);
9 Asmody
 
04.03.13
00:16
Беда в том, что js в <head> выполняется два раза. v8: v8: javascript в поле html-документа срабатывает 2 раза
Как победить я не нашел
10 sikuda
 
04.03.13
01:18
У меня Страница реквизит формы. В ВэбГрафик1С приходит в отладке один раз... на сервере...
11 badboychik
 
04.03.13
08:03
в head не надо вставлять и все
12 BiBijke
 
04.03.13
11:35
(8), (10) Я же писал в сообщении что я так, делал, пихал в макет и вставлял между тегами <script></script>, проблема в том что встроенный 1С браузер выдает ошибку  в таком случае (копирую код из отладчика, вставляю в ie, fireofox, chrome такой же код воспринимают на ура и все работает). Если разделить коды библиотек по разным файлам и подключить через src с какого-нить хостинга, то встроенный браузер тоже начинает работать корректно. Просто jQuery вставленный из макета в встроенном браузере тоже отрабатывает верно, проблемы начинаются, когда в тот же документ начинаешь пихать другие либы на базе jQuery, в этом случаем встроенный браузер работает не адекватно, а все типовый работают верно...
13 badboychik
 
04.03.13
11:39
(12) что за либы то пихаешь?
14 BiBijke
 
04.03.13
11:43
(13) jQuery + HighCharts
15 badboychik
 
04.03.13
11:47
(14) я их и использовал, работало, только не в упр.приложении
16 BiBijke
 
04.03.13
11:51
(15) Мб в обычном приложение ActiveX браузера другой ?
17 badboychik
 
04.03.13
12:00
что то я не нашел как вставить ПолеHTMLДокумента в управляемую форму ))
18 BiBijke
 
04.03.13
12:02
(17) Добавляешь поле, связываешь со строковым реквизитом, в поле выбираешь вид - ПолеHTMLДокумента )
19 badboychik
 
04.03.13
12:45
перенес на упр. формы - работает
20 BiBijke
 
04.03.13
12:53
(19) а можешь .cf на почту выслать? [email protected], пожалуйста.
21 BiBijke
 
04.03.13
13:14
вот я выложил свой цфник тут, вроде все верно...

http://yadi.sk/d/S-Szdg4431rnI
22 badboychik
 
04.03.13
13:17
кинул
23 BiBijke
 
04.03.13
13:33
(22) Спасибо большое )) У тебя версия highcharts старее просто (2-2-5 у меня 2-3-5), воткнул твою в макет и все взлетело ) Скорее всего новые версии глючат...
Закон Брукера: Даже маленькая практика стоит большой теории.