Имя: Пароль:
1C
1С v8
Заполнение полей HTML в цикле
0 CnupT45rus
 
02.05.15
17:01
Приветствую друзья!
Снова вынужден обратиться.
Разбираюсь уже пол дня, а все не получается. Толи сам дурак, толи лыжи не едут :)

Нужно заполнить поля на сайте в цикле. Т.е. переходим на страницу, заполняем поле1, заполняем поле2, нажимаем готово, переходим обратно на страницу и повторяем заполнение. Данные заполнения берем из файлов в папке.

Предполагаю что не хватает обработчика ожидания загрузки страницы, но это лишь предположения.
Код:

Процедура Кнопка6Нажатие(Элемент)
    
    //Почему то заполняет только из первого файла, второй уже не работает
    Документ = ЭлементыФормы.ПолеHTMLДокумента.Документ;
    ЭлементыФормы.ПолеHTMLДокумента.Перейти("http://blabla";); //Переходим по ссылке
    ЭлементыФормы.ПолеHTMLДокумента.document.getElementById("knopka1").click();
    МассивЛокФайлы=НайтиФайлы("C:\papka","*.txt");          
    ЛокФайлы = Новый Массив;
    Для Каждого  ЛокФайл  из МассивЛокФайлы Цикл   //Из файла берем данные для заполнения
        
        ЛокФайлы.Добавить(ЛокФайл.Имя);    
        ТекстДок = Новый ТекстовыйДокумент;
        ТекстДок.Прочитать("C:\papka\"+ЛокФайл.Имя);
        Текст = ТекстДок.ПолучитьТекст();
            
        Name="pole";
        ЭлементыHTMLДокумента = Документ.GetElementsByName(Name);
             
        Для Каждого ТекЭлементHTMLДокумента Из ЭлементыHTMLДокумента Цикл    
            ТекЭлементHTMLДокумента.Value = ЛокФайл.Имя;   //Заполняем поле 1
        КонецЦикла;
        
        Name2="pole";
        ЭлементыHTMLДокумента = Документ.GetElementsByName(Name2);
        
        Для Каждого ТекЭлементHTMLДокумента2 Из ЭлементыHTMLДокумента Цикл
        ТекЭлементHTMLДокумента2.Value = Текст;     //Заполняем поле 2
            
        КонецЦикла;
        ЭлементыФормы.ПолеHTMLДокумента.document.getElementById("gotovo").click(); //Кликаем готово
        ЭлементыФормы.ПолеHTMLДокумента.Перейти("http://blabla";); //Переходим снова по ссылке
        //После перехода по ссылке берем данные уже из второго файла
    КонецЦикла;    
    
      
КонецПроцедуры
1 Сниф
 
02.05.15
18:10
(0) думаю, что ты прав - сначала ЭлементыФормы.ПолеHTMLДокумента.Перейти(...

а остальной код в событии ДокументСформирован.
По крайней мере, с этого начать.
2 CnupT45rus
 
02.05.15
18:33
Я по разному пробовал этот ДокументСформирован, у меня почему то не получилось. Может у кого пример есть, или на моем примере кто нибудь подскажет как его лучше использовать.

Заранее благодарен :)
3 CnupT45rus
 
02.05.15
21:56
Всем спасибо, тему можно закрывать.
Т.к. решил проблему разумным способом - заполнять напрямую SQL :)