Форум: "Базы";
Текущий архив: 2007.03.11;
Скачать: [xml.tar.bz2];
ВнизНе могу динамически задать 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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.039 c