Имя: Пароль:
1C
1С v8
поле HTML документа?
0 Либерал
 
26.07.13
15:56
захотелось мне странного:

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

Сам я не силен в веб-технологиях... Реально в принципе такое? не сильно гиморно? Как правильно реализовать?
1 Либерал
 
26.07.13
15:58
чуть не забыл - это всё нужно на УФ
2 WhiteCat
 
26.07.13
16:04
Реально. Открыть страницу интернет-магазина - легко. Пропарсить - легко. Кнопка "В корзину" тоже отработает. Но >|<опочасов придется потратить изрядно.
3 WhiteCat
 
26.07.13
16:07
Хотя, в принципе, там гемор только с парсингом. Но если сам шаблон страницы сделан хорошо, все необходимые поля можно подергать через id или name, то за день можно слепить.
4 Либерал
 
26.07.13
16:37
(3) парсинг меня как раз (пока, теоретически) не пугает.
я не совсем представляю как православно в УФ открыть страницу, получить HTML текст открытой страницы и отправить на парсинг, потом поместить измененный текст обратно и показать измененную страницу на форме?
5 WhiteCat
 
26.07.13
16:40
(4) Дык ДокументHTML. Новый ЧтениеHTML, изменение документа DOM, затем новый ЗаписьHTML
6 WhiteCat
 
26.07.13
16:42
Ну или по-колхозному: получить текст из ПоляhtmlДокумента строкой, стрзаменить где надо, запихнуть полученный текст опять в полеHTMLдокумента.
7 WhiteCat
 
26.07.13
16:43
Со вторым вариантом, конечно, проще, потому что инфы про ДокументHTML кроме как в СП хрен найдешь, и там ее тоже не много.
8 Либерал
 
26.07.13
16:47
(6,7) мне по колхозному нравится.. я вот тока методы поляХТМЛдокумента читаю - для толстого клиента есть методы ПолучитьТекс УстановитьТекст, а для тонкого таких нет.
чо делать честному джигиту??
9 WhiteCat
 
26.07.13
16:53
(8) Не помню точно, как оно там называется, но оно есть. Погугли, а то у меня бэкап восстановился, некогда дальше мистить.
10 Либерал
 
26.07.13
16:58
эхе-хе...
ну ладно, я понимаю что нужно заходить от сервера значит

вот это пойдет (ниже)? и к какому объекту это все применить, я не понял??

ОболочкаHTMLДокумента (HTMLDocumentShell)
ПолучитьТекст (GetText)
Синтаксис:
ПолучитьТекст()
Описание:
Получает исходный текст HTML-документа.
11 Либерал
 
26.07.13
17:00
люди, примерчик мне бы методический простой как НаСервере по УРЛ выцепить исходный текст страницы?
а дальше я уж сам...!
12 Либерал
 
26.07.13
17:11
стоп, не уползаем!
отвечайте как по УРЛ получить исходный текст страницы - и отпущу всех бухать ))
13 viktor_vv
 
26.07.13
17:13
ОболочкаHTMLДокумента - это когда ты макет создаешь типа HTML документ. Это не то.
14 Либерал
 
26.07.13
17:18
(13) ок, понял.

а HTTPЗапрос или HTTPОтвет из нужной сказки?
15 WhiteCat
 
26.07.13
17:19
HTTPСоединение
16 viktor_vv
 
26.07.13
17:21
Кажись тут есть, там через полеHTMLдокумент.Документ - если в отладчике посмотришь, там много всяких свойств com-объекта

v8: ПолеHTMLдокумент продолжение
17 WhiteCat
 
26.07.13
17:21
Ну или вариант: у тебя элемент формы полеHTMLДокумента связан с реквизитом формы. Попробуй получить значение этого реквизита, там будет или УРЛ, или текст документа.
18 Скай
 
26.07.13
17:22
ХТМЛ = ЭлементыФормы.ПолеHTMLДокумента.Документ.body.innerHTML
19 WhiteCat
 
26.07.13
17:24
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
       ПолеСтраницыРеквизит = "Internet.yandex.ru";
КонецПроцедуры
&НаКлиенте
Процедура ПолеСтраницыДокументСформирован(Элемент)
       СтрокаП = Элемент.Документ.documentElement.innerHTML;
КонецПроцедуры
20 WhiteCat
 
26.07.13
17:25
Я свою миссию выполнил? Могу итти пить пиво? )
21 Либерал
 
26.07.13
17:26
спасибо други!
кажется понял куда копать.
22 sikuda
 
26.07.13
17:28
(4)получить HTML текст открытой страницы и отправить на парсинг, потом поместить измененный текст обратно и показать измененную страницу на форме
Класс! Зачем при определении квартиры выстраивать всех жильцов и спашивать в какой он живет квартире?

Может в самой старнице создать атрибут элемента по которому нажимаем. И отдавливать событие onclick в 1С? и параметр Element и потом его атрибут получай...
23 sikuda
 
26.07.13
17:30
Что УФ лишает народ логического мышления...
24 WhiteCat
 
26.07.13
17:35
(22) Зачем создавать атрибут, по которому нажимаем, если можно то же самое делать при загрузке страницы?
25 Либерал
 
26.07.13
17:55
(22) не понял про нажатие...
мне нажатие в 1С передавать не нужно (покачто так задумано), пусть все нажатия и гиперссылки отрабатывают на сайте - заказ создают и пр.
мне нужно поменять ОТОБРАЖЕНИЕ страницы - а именно, визуализировать оперативный остаток товара, который я выдерну из 1С при обновлении страницы.
26 sikuda
 
26.07.13
18:09
(25) Сори сразу не понял  - обратная задача.