Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.08.18;
Скачать: [xml.tar.bz2];

Вниз

TDataSetProvider, TClientDataSet   Найти похожие ветки 

 
Leran2003   (2003-07-23 15:14) [0]

Здравствуйте Мастаки!!!
Прошу Ващей помощи...

procedure ...
var
IBDatabase1: TIBDatabase;
IBTransaction1: TIBTransaction;
IBQuery1: TIBQuery;

DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
...
begin
IBDatabase1:=TIBDatabase.Create(Self);
IBDatabase1.Params.Add("user_name=SYSDBA");
IBDatabase1.Params.Add("password=masterkey");
IBDatabase1.LoginPrompt:=false;

IBTransaction1:=TIBTransaction.Create(Self);
IBTransaction1.Params.Add("read_committed");
IBTransaction1.Params.Add("rec_version");
IBTransaction1.Params.Add("nowait");

IBDatabase1.DefaultTransaction:=IBTransaction1;
IBDatabase1.DatabaseName:=...;
IBDatabase1.Open;

IBQuery1:=TIBQuery.Create(Self);
IBQuery1.Database:=IBDatabase1;
IBQuery1.SQL.Clear;
IBQuery1.SQL.Add("SELECT * FROM ...");

IBQuery1.Open;

DataSetProvider1:=TDataSetProvider.Create(Self);
DataSetProvider1.DataSet:=IBQuery1;

ClientDataSet1:=TClientDataSet.Create(Self);
ClientDataSet1.ProviderName:=DataSetProvider1.Name;

ClientDataSet1.Open; ( "test.cds")
Здравствуйте Мастаки!!!
Прошу Ващей помощи...

procedure ...
var
IBDatabase1: TIBDatabase;
IBTransaction1: TIBTransaction;
IBQuery1: TIBQuery;

DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
...
begin
IBDatabase1:=TIBDatabase.Create(Self);
IBDatabase1.Params.Add("user_name=SYSDBA");
IBDatabase1.Params.Add("password=masterkey");
IBDatabase1.LoginPrompt:=false;

IBTransaction1:=TIBTransaction.Create(Self);
IBTransaction1.Params.Add("read_committed");
IBTransaction1.Params.Add("rec_version");
IBTransaction1.Params.Add("nowait");

IBDatabase1.DefaultTransaction:=IBTransaction1;
IBDatabase1.DatabaseName:=...;
IBDatabase1.Open;

IBQuery1:=TIBQuery.Create(Self);
IBQuery1.Database:=IBDatabase1;
IBQuery1.SQL.Clear;
IBQuery1.SQL.Add("SELECT * FROM ...");

IBQuery1.Open;

DataSetProvider1:=TDataSetProvider.Create(Self);
DataSetProvider1.DataSet:=IBQuery1;

ClientDataSet1:=TClientDataSet.Create(Self);
ClientDataSet1.ProviderName:=DataSetProvider1.Name;

ClientDataSet1.Open; { вот здесь и возникает проблемс - Missing data provider or data packet }
ClientDataSet1.SaveToFile("test.cds");
ClientDataSet1.Close;


Что не так??? :((
Никак не дойду до истины...
Заранее спасибо за ответы...


 
AkaSaint   (2003-07-23 15:27) [1]

Попробуй DataSetProvider1.Exported := True; до работы с ClientDataSet.


 
Соловьев   (2003-07-23 15:29) [2]


> ClientDataSet1.ProviderName:=DataSetProvider1.Name;

что в Name?


 
Leran2003   (2003-07-23 15:32) [3]

DataSetProvider1.Name = "DataSetProvider1"

ClientDataSet1.ProviderName:=DataSetProvider1.Name;
ClientDataSet1.ProviderName:="DataSetProvider1";
- одно и то же, и так и так не идет...


 
Romkin   (2003-07-23 15:41) [4]

Ты запросу транзакцию не назначил, а надо. И если запрос сам открываешь, делай ResolveToDataset := true;


 
Leran2003   (2003-07-23 15:53) [5]


> Romkin ©


IBQuery1.Transaction:=IBTransaction1;
...
DataSetProvider1.ResolveToDataSet:=true;
...
Не помогло...

С запросом проблем нет, все открывается как надо...


 
Romkin   (2003-07-23 16:16) [6]

Попробуй явно дать имя провайдеру


 
Leran2003   (2003-07-23 16:18) [7]

Заработало!!! :))

uses DataMod;
...


procedure ...
var
DataModule1: TDataModule1;
begin
DataModule1:=TDataModule1.Create(Self);
DataModule1.ClientDataSet1.Open;
DataModule1.ClientDataSet1.SaveToFile("test.cds");
DataModule1.ClientDataSet1.Close;




unit DataMod;
...
type
TDataModule1 = class(TDataModule)
DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
IBDatabase1: TIBDatabase;
IBQuery1: TIBQuery;
IBTransaction1: TIBTransaction;
private
public
end;

//var
// DataModule1: TDataModule1;


Мля и чего мучался то???
Хотя это очень странно...


 
Leran2003   (2003-07-23 16:24) [8]

Всем спасибо!!!


 
Romkin   (2003-07-23 16:51) [9]

А, ну понятно, Parent у провайдера и cds должен быть одинаковым, если нет сервера. Забыл...



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

Форум: "Потрепаться";
Текущий архив: 2003.08.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.003 c
14-58463
Ден
2003-07-24 07:34
2003.08.18
Восстановление индексов


14-58459
II
2003-07-23 16:50
2003.08.18
Как обратится к значению поля в DataSet если имя поля неизвестно?


14-58414
Ketmar
2003-02-08 17:05
2003.08.18
ISO-Engines на воксельных объектах


14-58385
Maks Realov
2003-08-04 15:33
2003.08.18
Размещение памяти под массив указателей.


14-58484
galexis
2003-07-23 16:49
2003.08.18
Как внести в поле БД запись с , (запятой)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский