Я работаю над проектом моста данных, который будет передавать данные между SalesLogix (OLEDB), Sqlite 3 и Pick / D3. Чтобы завершить проект, я смотрю на ADODB. Этот проект является частью гораздо большего CRM-проекта, который выбрала компания. Поставщик, с которым мы имеем дело, хочет, чтобы я использовал Visual Studio 2013 и язык .NET. Большая часть бизнес-аналитики уже в Php.
Вот моя тестовая программа Php ADODB CLI:
$crlf = "\r\n";
// connection string
$cs = 'Provider=SLXOLEDB.1;Password=XX;Persist Security Info=True;';
$cs .= 'User ID=admin;Initial Catalog=PRIDE;Data Source=CRMAP;';
$cs .= "Extended Properties='PORT=1706;LOG=ON;CASEINSENSITIVEFIND=ON;";
$cs .= "AUTOINCBATCHSIZE=1;SVRCERT=;'";
try
{
$db = ADONewConnection('ado');
$db->debug = true;
}
catch(exception $e)
{
print "ADONewConnection failed$crlf";
var_dump($e);
adodb_backtrace($e->gettrace());
}
try
{
$db->Connect($cs);
}
catch(exception $e)
{
print "connect failed$crlf";
var_dump($e);
adodb_backtrace($e->gettrace());
}
?>
Я запускаю это на ПК с Windows 7 с установленным Php 5.3.10 и самой последней версией ADODB. Я пытаюсь подключиться к серверу приложений SalesLogix. У SalesLogix есть поставщик OLE, и я пытаюсь использовать универсальный драйвер ADO для ADODB. Я также должен сказать, что VB .NET может подключаться к серверу приложений SalesLogix, используя ту же строку подключения, что и выше. Когда я запускаю свою программу Php, я получаю:
version=6.1
cs=Provider=SLXOLEDB.1;Password=XX;Persist Security Info=True;User ID=admin;
Initial Catalog=PRIDE;Data Source=CRMAP;Extended Properties='PORT=1706;LOG=ON;
CASEINSENSITIVEFIND=ON;AUTOINCBATCHSIZE=1;SVRCERT=;'
exception 'com_exception' with message 'Source: Microsoft OLE DB Service Components
Description: Format of the initialization string does not conform to the OLE DB
specification.' in C:\wamp\www\CRM\Php\adodb\drivers\adodb-ado5.inc.php:117
Stack trace:
#0 C:\wamp\www\CRM\Php\adodb\drivers\adodb-ado5.inc.php(117):
com->Open('Provider=SLXOLE...')
#1 C:\wamp\www\CRM\Php\adodb\adodb.inc.php(550):
ADODB_ado->_connect('Provider=SLXOLE...', '', '', '')
#2 C:\wamp\www\CRM\Php\crm-test1.php(28):
ADOConnection->Connect('Provider=SLXOLE...')
Мой вопрос: в какой форме должна быть строка подключения ADODB и как я могу заставить это работать?
ТИА,
стог
См. Следующую статью о формате строки подключения SalesLogix / Infor CRM:
Понимание строки подключения SalesLogix OLE DB
Хотя эта статья была написана для версий 6.1 и более ранних, большинство, если не все, должны оставаться верными для самых последних версий (8.1 на момент написания этого комментария).
Других решений пока нет …