8.х 1С + HTML

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Morok, 2 сен 2008.

  1. TopicStarter Overlay
    Morok
    Offline

    Morok

    Регистрация:
    1 дек 2006
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Всем день добрый. Следующий вопрос. Имеется определенная страничка в инете. Пускай http://users.v8.1c.ru/.
    В конфигурации есть форма, на которой размещен элемент "ПолеHTMLДокумента1", которому передается этот адрес. И требуется сделать так, чтобы после нажатия кнопки подставлялись известные имя и пароль (это в общем-то реализовано) и нажималась кнопка "Войти".
    В идеале хотелось бы делать все это не подставляя данные в "ЭлементФормы" а напрямую в инет, получать следующую страничку (которая открывается после нажатия кнопки) и тогда уже можно сохранять ее (например в txt) и работать с ней дальше.
    Помогите плиз кто может...
  2. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Если любопытно - могу порекомендовать посмотреть на обработку ОбновлениеКонфигурации. И в частности на конструктор HTTPСоединение по указаному серверу
  3. TopicStarter Overlay
    Morok
    Offline

    Morok

    Регистрация:
    1 дек 2006
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Немного не то. В данном случае (я имею ввиду HTTPСоединение) имя и пароль - это имя м пароль передаваемые прокси. У меня такой проблемы нет (она решена).
    Что до указанной обработки - то там как раз и требуется заполнить имя. пароль и нажать кнопку...

    Вот кусок кода (используя ЭлементФормы.ПолеHTMLДокумента1)

    Док = ЭлементыФормы.ПолеHTMLДокумента1.Документ;
    Док.forms["loginform"].UserName.Value = "ХХХХХХХХ";
    Док.forms["loginform"].PassWord.Value = "ХХХХХХХ";

    Вот здесь надо нажать кнопку. Програмно. И тогда дальнейшее не представляет проблем:
    ЭлементыФормы.ПолеHTMLДокумента1.Перейти("http://wiki.ХХХХХХХ");
  4. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Зачем нажимать на кнопку? Вызови событие
  5. TopicStarter Overlay
    Morok
    Offline

    Morok

    Регистрация:
    1 дек 2006
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Как? Какое? и главное зачем??? При нажатии на кнопку введенные данные (имя и пароль) передаются куда-то дальше и если они соответствуют требуемым данным мне предоставляется следующая страница.
    Я не знаю куда передаются логин и пасс. Для того и хотел отработать нажатие...
    Так что вызов события проблемы не решит - я не знаю что делать дальше...
  6. coder1cv8
    Offline

    coder1cv8 Опытный в 1С

    Регистрация:
    30 авг 2007
    Сообщения:
    101
    Симпатии:
    0
    Баллы:
    26
    Почитай "Системное программирование" Михайлова, там есть такой пример...
  7. TopicStarter Overlay
    Morok
    Offline

    Morok

    Регистрация:
    1 дек 2006
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Пасиб огромное!!! Оч помогло. Для всех интересующихся выкладываю код

    Код:
    objIE = Новый COMОбъект("InternetExplorer.Application");
    objIE.Visible = Ложь; // Отключаем видимость
    objIE.Silent = Ложь;
    objIE.Navigate("http://wiki.ХХХХ");
    Сообщить("Идет загрузка страницы. Ждите...");
    Пока objIE.readyState<4 Цикл // Ждем пока загрузится сраница
    КонецЦикла;
    objDoc = objIE.Document; // Получаем объект HTML-документ
    objForm=objDoc.forms(0); // Получаем первую форму в документе
    Попытка
    // Заполняем поле формы "Имя пользователя"
    objForm.elements("UserName").value = "ИмяПользователя";
    objForm.elements("PassWord").value = "ПарольПользователя";
    objForm.elements("ИмяКнопки").click(); // Нажимаем на кнопку "Отправить"
    Исключение
    КонецПопытки;
    Сообщить("Запрос на авторизацию отправлен");
    objIE.Quit(); // Закрываем приложение
    objIE = Неопределено;
    

Поделиться этой страницей