|
Программно нажать на кнопку "ОК" в Microsoft Web Browser | ☑ | ||
---|---|---|---|---|
0
unca
20.03.14
✎
14:22
|
1С 8.2
Делаю обработку, в которой расположен всего один элемент ActiveX Microsoft Web Browser. Конекчусь через него к некому веб серверу 1С. Появляется окно логина/пароля, которые я успешно ввожу на основании некоторых данных. А вот кнопку ОК нажать не могу. Перебрал все элементы с методом click(). Только открылся список всех пользователей. Кнопки "Ок" и "Отмена" никак себя не проявили. Подскажите метод которым можно сделать это программно. Может скрипт какой надо ... кусок кода которым я все элементы документа пробегаю. Для Каждого Эл из ЭлементыФормы.ie.Document.all цикл Эл.Click(); КонецЦикла; |
|||
1
unca
20.03.14
✎
14:52
|
нежный ап
|
|||
2
unca
20.03.14
✎
15:20
|
Если кто-то захочет подключиться, то вот необходимый кусок для старта
Процедура ПриОткрытии() ie = ЭлементыФормы.ie; ie.Navigate("http://adressBD"); ПодключитьОбработчикОжидания("Запустить",3); КонецПроцедуры Процедура Запустить() Экспорт Пока ЭлементыФормы.ie.ReadyState <> 4 Цикл Возврат КонецЦикла; Doc = ЭлементыФормы.ie.Document; Doc.GetElementById("userPassword").attributes.Value.value = "Пароль"; Doc.GetElementById("userName").attributes.Value.value = "Пользователь"; ОтключитьОбработчикОжидания("Запустить"); КонецПроцедуры |
|||
3
unca
20.03.14
✎
15:22
|
Перед отключением обработчика и нужно нажать на кнопку "ОК"
|
|||
4
fvadim
20.03.14
✎
15:23
|
если кнопки привязаны к форме - там нету кликов, там submit формы.
|
|||
5
unca
20.03.14
✎
15:29
|
(4) кнопка находиться в окошке логина, который открывается при запуске 1С через браузер.
|
|||
6
unca
20.03.14
✎
15:32
|
Добавлю, что в списке всех элементов есть такая кнопка. У нее ID = "okButton", но что с ней делать я не знаю.
|
|||
7
fvadim
20.03.14
✎
16:24
|
Добавлю, что ты - лентяй.
Doc.Forms(0).submit(); |
|||
8
unca
20.03.14
✎
17:21
|
(7) не взлетело. После данного куска кода отправляет на окно логина/пароля
|
|||
9
Sinoptic
20.03.14
✎
17:42
|
Узнай может на сервере к которому коннектишся можно залогиниться типа: http://adressDB?login=user1&pass=123456
|
|||
10
unca
20.03.14
✎
17:49
|
(9) хмм, нельзя. Надо им подсказать. Это же неким скриптом они добиться могут, я правильно понимаю?
|
|||
11
Fram
20.03.14
✎
17:50
|
(8) Вводи программно пароль и опять ОК
|
|||
12
oleg_km
20.03.14
✎
17:54
|
Надо ковыряться исходнике JavaScript. Может не у той формы сабмит. Это не модальное окно, не авторизация типа Basic или Dig?
|
|||
13
unca
20.03.14
✎
18:00
|
(11) и ситуация повторяется
(12) форма только одна. хз. |
|||
14
oleg_km
20.03.14
✎
18:08
|
А код на JavaScript можно привести. Я когда хакал банк-клиент - долго изучал код JavaScript. даже под отладчиком Visua Studio трассировку делал
|
|||
15
unca
21.03.14
✎
10:36
|
Да, надо было покопаться... решение оказалось максимально простым:
http://server/BD?O=Low&C=start.xml&N=user&P=psw |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |