Страница 1 из 1

EOleException..."Объект или поставщик не может выполнить..>>

Добавлено: 25 окт 2010, 17:10
Xunnu
Проект project1.exe вызвал исключение класса EOleException с сообщением "Объект или поставщик не может выполнить требуемую операцию"

Доброго времени суток... Нужна помощь...
Скажу сразу, я не спец по базам, новичок я.
Пишу простенькую базу на Delphi 7, использую FireBird///
Значит дело было так:
1. Поставил FireBird 2.1, к нему IBProvider_trial_32-64_3.1.0 и начал писать...
2. Спустя определенное время вышло время, я "тупо" не заметил слово TRIAL... IBProvider встал...
3. Скачал IBProvider_free, поставил -> ошибка... IBP_free не работает с FB2.1
4. Скачал FB2.0, поставил... в базе было немного полей таблиц, просто заново сделал базу уже на FB2.0, сам код программы оставил без изменений...
5. Запускаю, ошибка(!в начале поста!)... компилирую пошагово.. прохожу ошибку, все норм работает, с базой конектится добавляет удаляет записи...
6. Так вот... подскажите пжста... как избавится от данной ошибки???

ошибка появляется здесь-

Код: Выделить всё

begin
    Application.Initialize;
    Application.CreateForm(TForm1, Form1);
    Application.CreateForm(TDataModule2, DataModule2);
[color=#FF0000]->[/color] Application.CreateForm(TSotrud, Sotrud);
или подскажите где почитать об этом... Спасибо за внимание В)

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 25 окт 2010, 18:08
kdv
обращайтесь в IBProvider. Письмо удалю завтра утром, т.к. к "ремонту БД" и к самому ФБ оно не имеет отношения.

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 26 окт 2010, 09:50
Xunnu
почему же к ФБ не имеет отношения... мне кажется это изза него... может библиотеки какой не хватает или еще чего... подскажите в какой ветке форума можно задать этот вопрос? Очень надо...

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 26 окт 2010, 11:03
kdv
Вы лучше обьясните, накой хрен Вы в Delphi 7 вместо IBX начали работать с FB через IBProvider???

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 26 окт 2010, 12:37
Xunnu
хм.. хороший вопрос). Не знаю, мне показалось что это оптимальный и простой способ связи с базой... как я уже выше указал, новичок я в этом деле). Так Вы думаете IBX лучше подходит?

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 27 окт 2010, 09:44
kdv
мне показалось что это оптимальный и простой способ связи с базой.
это один из самых "непрямых" способов связи с базой.
Процитирую себя:
Если вы пишете приложения в Delphi и C++Builder, и работаете с InterBase или Firebird, то использование ADO будет оправдано только тем, что вы привыкли к ADO или из этого приложения надо работать как с MS SQL, так и с другими СУБД. В остальных случаях ADO с InterBase/Firebird лучше не использовать, т.к. есть более прямые пути (компоненты) доступа.

www.ibase.ru/devinfo/choosecomp.htm

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 27 окт 2010, 14:08
Xunnu
спасибо Вам большое за время и терпение) темку можно в утиль, буду читать делать заново В)

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 29 окт 2010, 17:55
Xunnu
доброго времени суток!
Еще есть один вопрос В)
Я пока не нашел инфы об этом...
Значит так. Есть 5форм, на каждой форме есть Грид подключенный к отдельной таблице из БД.
Есть 6ая форма, из которой пользователь вызывает одну из тех форм/таблиц которая ему нужна.
Я сделал банально, те 5форм с гридами/таблицами я просто спрятал visible false, а при их выборе просто показываю ту или иную.
На формах возможен Insert Edit полей. Работа с таблицами происходит через IBDataSet, соответственно у каждого грида свой датасёрс и ибдатасет.


Итак сам вопрос! То что я просто прячу их(visible) не грузит ли систему? Как на быстродействии сказывается?
Возможно лучше при выборе той или иной формы на он креат(или иначе) поставить подключение всех узлов(IBDataset,DataSource...)??? Или сойдет и с визибл??? База небольшая, до 10тыс записей.


Если лучше иначе, посоветуйте пожалуйста как оптимально. ОГРОМНОЕ спасибо! Заранее)

Re: EOleException..."Объект или поставщик не может выполнить

Добавлено: 02 ноя 2010, 10:46
kdv
чем больше форм открывается при старте приложения, тем медленнее оно стартует. Поэтому чаще имеет смысл создавать форму (и соответственно открывать на ней датасет) только когда к этой форме произошло обращение.
Дальше держать форму открытой или удалять ее из памяти по закрытию - зависит от того, насколько "тяжело" эта форма открывается.

В общем, тут нет никаких тайных знаний, которые бы Вы не смогли выяснить самостоятельно.
То что я просто прячу их(visible) не грузит ли систему? Как на быстродействии сказывается?
если форма сама по себе ничего не делает, как она может "грузить" систему? На быстродействии сказывается только если на форме есть бесконечный цикл с обработкой каких-то данных. В общем, не морочьте себе и людям голову :-)