Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ADODB-доступ в Paradox из Cache / 9 сообщений из 9, страница 1 из 1
05.06.2013, 09:43
    #38286237
kolesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
Не могу понять, может кто делал?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
	s conn = ##class(Activate.ADODB.Connection).%New()
	s connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\DATA;Extended Properties=Paradox 5.x;"
	d conn.Open(connStr)
	w conn.State,!
	s sqlStr = "SELECT PrDocumentDate FROM JRGoodOut"
	try {
		s rs = conn.Execute(sqlStr)
	} catch {
		do DecomposeStatus^%apiOBJ(%objlasterror,.Err) 
		w Err(Err),!
	}
	q 1



ОШИБКА #6101: Исключение Com: '-2147217865 Microsoft JET Database Engine The Microsoft Jet database engine could not find the object 'JRGoodOut'. Make sure the object exists and that you spell its name and the path name correctly.'

Путь есть, файл есть, но движок его не видит.
...
Рейтинг: 0 / 0
05.06.2013, 10:25
    #38286288
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
kolesov ,

У меня на x64 нет возможности проверить.

Почему бы не использовать ODBC или JDBC вместо Activate?
...
Рейтинг: 0 / 0
05.06.2013, 13:28
    #38286692
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
Попробуйте пока без Caché, например на VBSscript:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
set cn=Createobject("ADODB.Connection") 

'Srvname="Driver={Microsoft Paradox Driver (*.db )};DriverID=538;Fil=Paradox 5.X;DefaultDir=C:\Data\;Dbq=C:\Data\;CollatingSequence=ASCII;"
Srvname="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Data;Extended Properties=Paradox 5.x;"

cn.ConnectionString=Srvname 
cn.open

Set rs = cn.Execute("SELECT PrDocumentDate FROM JRGoodOut")
WScript.Echo rs.Fields(0).Value

WScript.Echo "Succesfully!"

У меня на файле JRGoodOut.db всё открывается нормально.
Если ошибка не исчезнет, посмотрите наличие всех библиотек: kb230126
...
Рейтинг: 0 / 0
05.06.2013, 14:03
    #38286765
kolesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
servit,

Спасибо, но вбс дает такую же картину:

---------------------------
Windows Script Host
---------------------------
Script: C:\test.vbs
Line: 8
Char: 1
Error: The Microsoft Jet database engine could not find the object 'JRGoodOut'. Make sure the object exists and that you spell its name and the path name correctly.
Code: 80040E37
Source: Microsoft JET Database Engine

---------------------------
OK
---------------------------

Пойду по Вашей ссылке.
...
Рейтинг: 0 / 0
05.06.2013, 14:12
    #38286785
kolesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
servit,

С ODBC примерно такая-же песня.
Создал системный dsn "cust1".
Создал SQL-gateway на него. Тест соединения удачный.

Код: sql
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.
    s conn=##class(%SQLGatewayConnection).%New()
    s sc=conn.Connect("cust1","","")
    if $$$ISERR(sc) {
		do DecomposeStatus^%apiOBJ(sc,.Err) 
		w Err(Err)
    }
    w sc,!
    s res=##class(%ResultSet).%New("%DynamicQueryGW:SQLGW")
    s sc=res.Prepare("SELECT PrDocumentDate FROM jrgoodout",,conn)
    If $$$ISERR(sc) {
		do DecomposeStatus^%apiOBJ(sc,.Err) 
		w Err(Err)
    }
    w sc,!
    s sc=res.Execute()
    If $$$ISERR(sc) {
		do DecomposeStatus^%apiOBJ(sc,.Err) 
		w Err(Err)
    }
    While res.Next() 
    { 
    	w !,res.GetData(1),! 
    } 
    s sc=conn.%Close() 
    q sc



Отдает:

1
1
ОШИБКА #6022: Шлюз: неудачное завершение Execute.1
...
Рейтинг: 0 / 0
05.06.2013, 16:10
    #38287021
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
kolesov ,

kb209685
Попробуйте переименовать файл с именем покороче (в формат MS-DOS 8.3)
...
Рейтинг: 0 / 0
06.06.2013, 03:56
    #38287689
kolesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
servit,
Paradox продолжает надо мной издеваться.

Я поменял название таблица на формат 8.3
И я проверил это на тех (других) таблицах, которые и так были 8.3:

из vbs:
---------------------------
Windows Script Host
---------------------------
Script: C:\test.vbs
Line: 8
Char: 1
Error: External table is not in the expected format.
Code: 80004005
Source: Microsoft JET Database Engine

---------------------------
OK
---------------------------

из скрипта с ADODB:

ОШИБКА #6101: Исключение Com: '-2147467259 Microsoft JET Database Engine External table is not in the expected format.'

из скрпта с ODBC:

ОШИБКА #6022: Шлюз: неудачное завершение Execute.1

Попробую еще с производителями той прикладухи связаться.
...
Рейтинг: 0 / 0
08.06.2013, 17:00
    #38291332
kolesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
up :(
чота не решается задача... есть идеи?
...
Рейтинг: 0 / 0
10.06.2013, 09:27
    #38292069
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB-доступ в Paradox из Cache
kolesovчота не решается задача... есть идеи?БД вообще чем-либо открывается?
Если нет, то возможно, файл битый или это не Paradox.

Выложите БД (по возможности пустую).
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ADODB-доступ в Paradox из Cache / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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