|
v7: Записать файл на http-ресурс из 1С | ☑ | ||
---|---|---|---|---|
0
Drac0
11.07.11
✎
14:34
|
Добрый день. Возникла необходимость записывать cvs-файл на сайт, по пути вида: http://сайт.ru/docs/ . Если в винде подключить ресурс как сетевой диск, то проблем нет, а вот как отправить, используя URL? Кстати, необходимо для доступа вводить логин и пароль. У компоененты V7plus нужного нету :(
Спасибо за любую помощь. |
|||
1
Drac0
12.07.11
✎
08:00
|
апап
|
|||
2
zak555
12.07.11
✎
08:04
|
у неё и нету
|
|||
3
1Сергей
12.07.11
✎
08:11
|
Через VBS:
Set Shell = CreateObject("Shell.Application") ' Подключаемся к серверу HTTP Set FolderHTTP = Shell.NameSpace("http://сайт.ru/docs/") ' Открываем текущую папку Set Folder = Shell.NameSpace("D:\1C\docs\") for each c in Folder.items() FolderHTTP.CopyHere c next как-то так |
|||
4
Drac0
12.07.11
✎
12:06
|
Спасибо, попробую.
|
|||
5
Drac0
13.07.11
✎
13:18
|
(3)К сожалению не хочет цепляться к HTTP. Не происходит вообще ничего, причем если указать какой-нибудь локальный путь, то копирование идет нормально.
Кроме того этот метод не решает проблем авторизации, а у Shell не нашел метод, которыми можно задать имя и пароль пользователя. Как-то печально получается пока... |
|||
6
FN
13.07.11
✎
13:24
|
(5) Еслина сайте есть страничка с полем "ИмяФайла" и кнопкой "Отправить файл" - то можно залить через IE по OLE
|
|||
7
Drac0
13.07.11
✎
14:26
|
(6)Посмотрел, если логиниться под админом, то все есть. Выбирается каталог, в который надо загрузить файл, нажимается кнопка добавить, всплывает окно выбора файла и загрузки. Если не сложно, подскажите, где можно почитать про работу с IE через OLE.
|
|||
8
Drac0
13.07.11
✎
17:05
|
Отлаживаю сначала на vbs:
set ie=CreateObject("internetexplorer.application") ie.navigate("http://intra.*******.ru/") ie.visible=true do while ie.ReadyState<4 WScript.Sleep(100) loop set doc=ie.document doc.getElementByName("USER_LOGIN").value="username" doc.getElementByName("USER_PASSWORD").value="******" doc.getElementByName("Login").click() Беда в том, что сайт даже не открывается, причем на почте яндекса все срабатывает. Есть один момент - ввожу сайт внутреннего корпоративного портала, который доступен только внутри сети. Если заходить вручную, то все хорошо. Из-за чего возможно такая оказия? |
|||
9
Drac0
13.07.11
✎
17:25
|
Вот. Полностью рабочий скрипт для аккаунта Google.
set ie=CreateObject("internetexplorer.application") ie.navigate("https://www.google.com/accounts/") ie.visible=true do while ie.ReadyState<4 WScript.Sleep(500) loop set doc=ie.document doc.getElementById("Email").value="********@gmail.com" doc.getElementById("Passwd").value="******" doc.getElementById("signIn").click() По какой причине не срабатывает для сайта нашего портала понять не могу... |
|||
10
Drac0
13.07.11
✎
17:46
|
Хм, наш портал групповыми политиками установлен как домашняя страница в IE. Проверил на другом компе, где домашння другая - и сайт стал открываться.
|
|||
11
Drac0
13.07.11
✎
18:00
|
Интересно, как это можно обойти ...
|
|||
12
navigator
13.07.11
✎
18:27
|
С помошью csv инфу заливаешь на сайт? может тогда проше сразу писать ее в mysql базу так и быстрее будет.
|
|||
13
FN
13.07.11
✎
18:42
|
(11) попробуй сначал navigate на левый сайт, а потом на нужный
|
|||
14
Drac0
13.07.11
✎
20:29
|
(13) Спасибо за совет, попробую.
(12) Хм, у нас правда с веб-программистом разделение обязанностей, но вариант может стоит рассмотреть, для того чтобы убрать лишнее звено в перегрузке данных. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |