Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.11;
Скачать: CL | DM;

Вниз

Не могу динамически задать TClientDataSet.ProviderName   Найти похожие ветки 

 
Shaman_ ©   (2006-12-14 17:43) [0]

Создаю в рантайме объект TDataSetProvider и пытаюсь привязать его к TClientDataSet. Неясность в том, что значение TClientDataSet.ProviderName является обычной string строкой. В рантайме ему значение через указание наименования объекта не работает, да и не логично это. Как бы передать значение ProviderName с помощью указателя (pointer) на объект?


 
Desdechado ©   (2006-12-14 17:47) [1]

 fProvider := TDataSetProvider.Create( Application );
 with( fProvider ) do
   begin
     Name := "p"+IntToStr(Integer(fProvider));
     DataSet := fSQLDataSet;
     Options := [ poAllowCommandText ];
   end;
 fMainQuery := TClientDataSet.Create( Application );
 fMainQuery.ProviderName := fProvider.Name;


 
Reindeer Moss Eater ©   (2006-12-14 17:51) [2]

If the provider is in the same application as the client dataset, it must have the same Owner as the client dataset. To use a local provider that has a different Owner, use the SetProvider method instead.


 
Shaman_ ©   (2006-12-14 18:07) [3]

Desdechado ©   (14.12.06 17:47) [1]
Интересный вариант :)
Правда у меня такой способ передачи указателя не прокатил. Пожалуй не стану заниматься колдовством, так как Reindeer Moss Eater указал на менее извращенный вариант решения проблемы.

Всем спасибо за помощь!



Страницы: 1 вся ветка

Текущий архив: 2007.03.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.049 c
15-1171536100
Boronin
2007-02-15 13:41
2007.03.11
Срочно требуются программисты Delphi+SQL


15-1171630707
DrDe
2007-02-16 15:58
2007.03.11
Реестр


15-1170142655
k2
2007-01-30 10:37
2007.03.11
Поздравляю с рождением дочки!


6-1159880537
Scar89
2006-10-03 17:02
2007.03.11
411 Length Required


2-1171856337
A$$embler
2007-02-19 06:38
2007.03.11
Эквалайзер на Delphi7