![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите создать TDataSetProvider в рантайме [D6, Win2k]
mvg_first © (2002-11-13 20:22:00)Вообщем создал RemoteDataModule, положил в него Запрос и провайдер, соединил, написал клиент, в клиенте положил DComConnection, ClientDataSet все подключил - работает.
Решил усложнить задачу. В RDM используя TypeLibrary добавил метод TestExec(TabName :BSTR) и реализовал в нем следующий код
procedure TMainRDM.TestExec(const TabName: WideString);
begin
TestQ := TADOQuery.Create(self);
TestDSP := TDataSetProvider.Create(self);
TestQ.Connection := ADOConnection1;
TestQ.CursorLocation := clUseServer;
TestQ.CursorType := ctKeyset;
TestQ.SQL.Text := "SELECT * FROM "+TabName;
TestDSP.Exported := true;
TestDSP.DataSet := TestQ;
end;
Переменные TestQ -объявлены в Public секции модуля данных.
В клиенте делаю следующуе
procedure TForm2.ToolButton2Click(Sender: TObject);
var
ws : WideString;
begin
ws := "SC115";
DcoMConnection1.Connected := true;
DCOMConnection1.AppServer.TestExec(ws);
ClientDataSet1.ProviderName := "TestDSP";
ClientDataSet1.Open;
end;
При запуске - выдает ошибку:
Provider not exported: TestDSP
Почему? Что я делаю не так? Или провайдеров в рантайме нельзя создавать?
mvg_first (2002-11-14 12:09:00) [1]Спасибо :)
Помогло :)
Набережных С. (2002-11-13 22:10:00) [2]Попробуй TestDSP.Name:="TestDSP"; Авось...