Вопросы стыковки визуальных компонент (DataControls, EhGrid, VirtualTreeView, DevExpress и т.п.) с данными из БД.
Модераторы: kdv, CyberMax
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 20 мар 2009, 15:39
Добрый день.
инструменты:
Delphi 2009, FIBPlus, FireBird 2.1
код:
Код: Выделить всё
with DataModule_PAY.SecurityService1 do
begin
ServerName:='10.7.29.10';
Params.Clear;
Params.Add('user_name=SYSDBA');
Params.Add('password=masterkey');
Active := True;
end;
ошибка:
Project payments.exe raised exception class EFIBInterBaseError with message 'DataModule_PAY.SecurityServicel: Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements. @1.
Куда бежать?
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 20 мар 2009, 15:51
если добавить строчку
...
Код: Выделить всё
Params.Add('sql_role_name=ADMINISTRATOR');
...
ошибка
DataModule_PAY.SecurityService1:
Unsuccessful execution caused by an unavailable resource.Cannot attach to services manager.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 20 мар 2009, 22:56
помочь перевести сообщение об ошибке? это по второму сообщению.
а по первому - похоже, криво установлен клиент ФБ 2.1.
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 24 мар 2009, 09:37
Ответьте пожалуйста на такой вопрос. Есть-ли у кого нибудь возможность проверить связку Delphi2009 FIBPlus и попробовать через SecurityService сделать запрос на получение информации о пользователях (имя и т.д.) На Delphi 2007 все работало(версия FIBPlus тоже соответственно другая), откатиться сейчас проблематично. Нужно выяснить первоисточник проблемы.
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 24 мар 2009, 10:08
К базе коннект нормальный, все запрашивается, редактируется, добавляется, удаляется. А вот запрос на сервис не хочет. Объясните, если не трудно. Что значит криво установленный клиент. Я уже локально поднял БД и через нее пытаюсь. То же самое.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 24 мар 2009, 14:00
только что проверил - D2009, IBX, пример Admin в
Demos\DelphiWin32\VCLWin32\Db\IBX\Admin
подсоединяется к сервисам Firebird 2.1 без проблем (login, как через локальный протокол, так и через tcp).
Попробуйте. Если это работает, значит проблема в FIBPlus.
собственно, если у Вас то же самое приложение, скомпиленное в D2007, тоже работает с 2.1, то проблема
тут явно в FIBPlus. Я могу проверить фибплюс сам, только мне нужен номер версии.
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 24 мар 2009, 14:11
Спасибо. Попробую переустановить. Извините, что вопрос в сторону немного, но по той же теме. По сути мне нужно иметь доступ к информации из системных таблиц о пользователях. Добавлять, удалять юзеров. Возможно это штатными компонентами Delphi?
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 24 мар 2009, 14:28
что-то у меня подозрение что сама Delphi криво стоит... попробовал разместить на форму компонент IBSecurityServaice выскакивает ошибка Access Violation in module "delphicoreide120.bpl" ... ухожу в переустановку.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 24 мар 2009, 15:12
Добавлять, удалять юзеров. Возможно это штатными компонентами Delphi?
закладка компонент InterBase Admin. Собственно, поддержка сервисов впервые была сделана в IBX.
В FIBPlus - позже.
Если эта закладка компонент не видна, то значит delphi не находит gds32.dll. ее надо соорудить при помощи instclient.exe из fbclient.dll.
Возможно, кстати, падение среды с этим тоже связано.
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 24 мар 2009, 16:14
Пожалуйста подскажи поподробней как это соорудить. Действительно IB Admin нет вкладки в компонентах.
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 24 мар 2009, 16:21
сделал
C:\Program Files\Firebird\Firebird_2_1\bin>instclient i f
FBCLIENT.DLL has been installed to the System directory.
не появилась заклада все равно
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 24 мар 2009, 18:25
не появилась заклада все равно
дельфю перезапускал? Компоненты Interbase показываются если находится gds32.dll.
Компоненты Interbase Admin показываются, если версия клиента 6.0 или выше. instclient как раз делает из fbclient.dll копию gds32.dll с правильной инфой о версии - 6.3 и т.д.
То есть, если у тебя среда находит где-то старую или кривую gds32.dll, то InterBase Admin и не покажется, потому что он будет считать что клиентская библитека НЕ ПОДДЕРЖИВАЕТ Services API.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 24 мар 2009, 18:33
кстати. у меня в system32 лежит
gds32.dll версии 6.3.2.18116
это точно от FB, но какой версии - не помню.
-
hvlad
- Разработчик Firebird
- Сообщения: 1244
- Зарегистрирован: 21 мар 2005, 10:48
Сообщение
hvlad » 24 мар 2009, 19:02
zdm77 писал(а):сделал
C:\Program Files\Firebird\Firebird_2_1\bin>instclient i f
FBCLIENT.DLL has been installed to the System directory.
не появилась заклада все равно
Тебе gds32 надо.
instclient i
g
-
zdm77
- Сообщения: 12
- Зарегистрирован: 20 мар 2009, 15:37
Сообщение
zdm77 » 25 мар 2009, 09:23
После танцев с бубном заработало.Изготовил gds32.dll. Останавливаю FireBird, запускаю InterBase. Появляется вкладка IB Admin. Кидаю IBSecurityService, работает. Останвливаю InterBase, запускаю FireBird, Все на месте, работает. FibPlus по прежнему не хочет работать. Тут видимо косяк в компонентах.. с этим попозже тогда буду разбираться.
Всем спасибо.