powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Не могу получить данные из dbf файла
8 сообщений из 8, страница 1 из 1
Не могу получить данные из dbf файла
    #37455119
ВЕЗУНЧИК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер. Есть некоторая проблемка. Кратко опишу ее суть. Вообщем на некотором заводе есть проходная, данные из которой каждое утро выкладываются на Novell Netware сервер в виде DBF файлов. Каждое утро срабатывает планировщик заданий, запускающий vbs скрипт, который осуществляет перекачку данных из dbf файла на oracle сервер. У меня есть профиль на сервере Novell поэтому с моей рабочей машинки все работает отлично. Но стоит задача переноса vbs скрипта выгрузки на сервер win2003. Вот для этого и нужно где то в скрипте указать пользователя и пароль на сервер Novell, для получения данных расположенных на нем dbf файлов! Ниже приведена часть кода, осуществляющая доступ к dbf файлу:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    Dim path_dbf:     path_dbf = "\\Novell\PROHODN\"
    Dim basa_dbf:     basa_dbf = "P110420.DBF"
    Dim cnn:        Set cnn = WScript.CreateObject("ADODB.Connection")
    Dim rst:        Set rst = WScript.CreateObject("ADODB.Recordset")
    cnn.ConnectionString = "DRIVER={Microsoft dBase Driver (*.dbf)};" & "DBQ=" & path_dbf & ";" & "DefaultDir=" & path_dbf & "\"
    cnn.Open
    rst.Open "SELECT * FROM " & basa_dbf, cn
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37455238
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Следует установить Netware-клиент (рекомендую 4.91 SP5 - но не IR2!) и в Default-профиле местоположения указать параметры подключения (дерево, контекст, пользователь). После чего в VBS-скрипте выполнить attach к серверу.
После этого приведённый код будет работать.
Не забудьте отключить кэшированеие на клиенте и оплоки - а то файлы будут биться.
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37455406
ВЕЗУНЧИК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaСледует установить Netware-клиент (рекомендую 4.91 SP5 - но не IR2!) и в Default-профиле местоположения указать параметры подключения (дерево, контекст, пользователь). После чего в VBS-скрипте выполнить attach к серверу.
После этого приведённый код будет работать.
Не забудьте отключить кэшированеие на клиенте и оплоки - а то файлы будут биться.

Клиент это конечно выход,щас вплотную займусь этим вариантом, еще меня больше интересует, как VBS-скрипте выполнить attach к серверу?
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37455594
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вообще (судя по тому, что на сервере даже нет Нетварёвого клиента) сервер вообще не подключался раньше к Нетварёвой сетке... хотя мог использоваться и встроенный шлюз...

Ответ (точнее, оптимальный способ подключения) зависит от того, есть ли логин куда-то на сервер или в дерево или нет, какая собсно версия Нетваре, сервер во рабгруппе, в домене или сам является контроллером... а вообще аутентификация не зависит от того, в какой именно сервис каталога она выполняется.
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37456631
ВЕЗУНЧИК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На виндовом сервере, где будет выполняться задание, есть встроенный клиент для Novell
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37456648
ВЕЗУНЧИК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Логин есть, дерево есть, сервер в домене, контроллером не является!
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37456661
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПосле чего в VBS-скрипте выполнить attach к серверу.ВЕЗУНЧИКинтересует, как VBS-скрипте выполнить attach к серверу?ВЕЗУНЧИКЛогин есть, дерево есть, сервер в домене, контроллером не является!
Ну так выполните, скажем, любую консольную команду Вин, требующую аутентификации на ресурсе, по отношению к каталогу с таблицей DBF.
...
Рейтинг: 0 / 0
Не могу получить данные из dbf файла
    #37458070
ВЕЗУНЧИК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, проблему решил подключением сетевого диска!!! Скрипт срабатывает с помощью пользовательского задания, создает сетевой диск и через него коннектится к Novell-скому серверу. Привожу часть кода выше упомянутого скрипта:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
'----------------------------------------------------------------Подключаем сетевой диск Х -------------------------------------
     MapDrv "X:", "\\S10\vol1\USERS\K05\ARXPROX"
'--------------------------------------------------------------------------------------------------------------------------------

'--------------------------------------------------------------------------------начало Функции подключения сетевого диска------
 Function MapDrv(DrvLet, UNCPath)  

     Dim WshNetwork,objFSO          ' Object variable  
     Dim Msg  
  
     Set WshNetwork = WScript.CreateObject("WScript.Network")  
     Set objFSO = CreateObject("Scripting.FileSystemObject")
  
     'On Error Resume Next  
  
     If objFSO.DriveExists(DrvLet) Then  
         WshNetwork.RemoveNetworkDrive DrvLet, true, true
     End If
        
     WshNetwork.MapNetworkDrive DrvLet, UNCPath, False, "02062t", "02062t"  
      
    Select Case Err.Number  
         Case  0             ' No error  #  
         Case - 2147023694   
             WshNetwork.RemoveNetworkDrive DrvLet, true, true
             WshNetwork.MapNetworkDrive DrvLet, UNCPath  
                
         Case - 2147024811   
             WshNetwork.RemoveNetworkDrive DrvLet, true, true  
             WshNetwork.MapNetworkDrive DrvLet, UNCPath  
  
         Case Else  
           
             Msg = "Mapping network drive error: " & _  
                   CStr(Err.Number) & " 0x" & Hex(Err.Number) & vbCrLf & _  
                 "Error description: " & Err.Description & vbCrLf  
           Msg = Msg & "Domain: " & WshNetwork.UserDomain & vbCrLf  
             Msg = Msg & "Computer Name: " & WshNetwork.ComputerName & vbCrLf  
             Msg = Msg & "User Name: " & WshNetwork.UserName & vbCrLf & vbCrLf  
             Msg = Msg & "Device name: " & DrvLet & vbCrLf  
             Msg = Msg & "Map path: " & UNCPath  
               
     End Select  
 End Function     
'--------------------------------------------------------------------------------конец Функции подключения сетевого диска------
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Не могу получить данные из dbf файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]