Взаимодействие с сайтом из 1С

1. toliman 2 14.02.20 12:26 Сейчас в теме
Добрый день, присвоев полю html ссылку на сайт(например https://www.svyaznoy.ru/catalog/phone/225/xiaomi) мы добьемся что в мобильном приложении у нас будет отображаться web страница этого сайта. есть ли возможность взаимодействовать с действиями пользователями? задача передовать обратно в 1С товары которые пользователь добавляет в корзину, Сайт написан на битрекс. или необходимо полностью код сайта реализовать в 1С чтобы взаимодействовать?
По теме из базы знаний
Найденные решения
2. Nikifforoff96 14.02.20 13:31 Сейчас в теме
(1) Установи на элемент формы "Поле HTML документа" обработчик события "ПриНажатии" и посмотри в отладке, что передается в ДанныеСобытие этого обработчика при нажатии на что-либо (на странице)
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Nikifforoff96 14.02.20 13:31 Сейчас в теме
(1) Установи на элемент формы "Поле HTML документа" обработчик события "ПриНажатии" и посмотри в отладке, что передается в ДанныеСобытие этого обработчика при нажатии на что-либо (на странице)
3. vsesam80 14.02.20 13:44 Сейчас в теме
(1)
//Для начала создадим элемент посредник на html страницу с Id"77"

|<sc ript type='text/javascript'>

|var evtObj = document.createEventObject(); //Отлавливаем нажатие и принимаем параметр из кнопки
|function f(param){    
|document.getElementById (""77"").TextContent = param; //Устанавливаем в элемент посредник парамтер из нажатой кнопки
|document.location.href =param;
|}                                       


|<input type=""button"" value=""Go""  id =""555"" on click=""f('васяпупкин')"" />  //Нажимаем кнопку

&НаКлиенте 
Процедура Поле1ПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)  
СтандартнаяОбработка = Ложь;    
#ЕСЛИ МобильноеПриложениеКлиент ТОГДА      
      Сообщить(  ДанныеСобытия.document.getElementById("77").TextContent); //считываем Текст Контекст у элемента посредника и видим "кто был нажат"
 #КОНЕЦЕСЛИ    
КонецПроцедуры
                     
Показать
4. toliman 2 14.02.20 15:26 Сейчас в теме
(3) а почему именно в мобильном приложении срабатывает только событие по нажатию на ссылку(переход в меню и подменю), а например событие "добавить в корзину" не срабатывает, хотя если отлаживать с компа то все события срабатывают
5. vsesam80 14.02.20 16:12 Сейчас в теме
(4)Потому что в мобильной платформе все урезано по максимуму по сравнению с обычной платформой.
Запустите отладку в обычной платформе и МП, и посмотрите что содержится в ДанныеСобытия в одном случае и в другом.
Проще говоря в случае с мобильной платформой ДанныеСобытия будет пустым.
Конечно код который я привел является костылем на колесиках и я надеюсь что 1С допилит это дело по человечески.
Ну а пока работает и ладно. и на том спасибо.
6. toliman 2 14.02.20 16:33 Сейчас в теме
(5) так я не пойму вам удалось отловить событие на нажате кнопки на сайте? у меня в мобильной платформе срабытавает только событие по переходу на другую страницу сайта(навигация по ссылке)
8. vsesam80 14.02.20 18:05 Сейчас в теме
(6)Именно так! но вся идея в том.что бы ссылка вела в никуда, фейковая короче.
click=""f('васяпупкин')""
...
document.location.href =param
...
Вася Пупкин ведет в никуда, однако нажатие на ссылку есть.
7. toliman 2 14.02.20 16:35 Сейчас в теме
(5) не совсем понял идею с элементом посредником, только начинаю осваивать работу с html
9. vsesam80 14.02.20 18:07 Сейчас в теме
(7)Идея в том, что бы пережать инфу посреднику что нажато:document.getElementById (""77"").TextContent = param;
А его уже прочесть из 1С: ДанныеСобытия.document.getElementById("77").TextContent
Вы просто попробуйте код запилить в конфу и увидите
10. vsesam80 19.02.20 17:13 Сейчас в теме
11. vsesam80 19.02.20 17:14 Сейчас в теме
(7)Вот пример
Прикрепленные файлы:
1Cv8 из HTML в 1С.cf
12. vsesam80 19.02.20 17:41 Сейчас в теме
(7)Я вот только что обратил внимание на это: или необходимо полностью код сайта реализовать в 1С чтобы взаимодействовать?
Вы имеете отношение к Связному? Если у вас есть возможность изменять там что то, то сделайте просто веб или http сервисы, которые позволят покупателю через МП делать заказы. И не надо ни какого html в данном случае
13. toliman 2 19.02.20 18:21 Сейчас в теме
(12) связной для примера, доступ к сайту есть, все успешно реализовали на стороне сайта, а в 1С я просто установил "стандартная обработка = ложь", что бы не было перехода на пустую страницу. Спасибо вам
14. vsesam80 19.02.20 18:35 Сейчас в теме
(13)Если не сложно выложите кусок кода, который заработал в итоге, что бы другим потом помогло.
15. vsesam80 19.02.20 18:36 Сейчас в теме
(13)Очень мало информации на эту тему. А между тем тема очень интересная
16. toliman 2 20.02.20 11:07 Сейчас в теме
Каталог строковый тип. вид "поле HTML документа" href на стороне сайта указываем идентификатор номенклатуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
		Каталог = "http://www.test.ru/products/";
КонецПроцедуры

&НаКлиенте
Процедура каталогПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)	
	    
	Если Сред(ДанныеСобытия.href,1,31) <> "http://www.test.ru/products" Тогда  // нажатие кнопки добавить в корзину
		СтандартнаяОбработка = Ложь;
		
ДобавитьТоварВКорзину(Сред(ДанныеСобытия.href,24));// своя процедура	
						
	КонецЕсли;
КонецПроцедуры
Показать
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)