Delphi Can

Orjinalini görmek için tıklayınız: Access bağlantı
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

create değil formun show'una koyarak dene
(28-09-2021, Saat: 02:06)meko Adlı Kullanıcıdan Alıntı: [ -> ]
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

create değil formun show'una koyarak dene

Denedim Olmadı?
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

Merhaba,

Böyle dener misiniz.
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='''+ cari_ID.ToString+''' ');//bir adet parametre yaratıldı
ADOQuery1.Open;
end;

Close etmemişsiniz aslında sorun bu.
(28-09-2021, Saat: 14:39)pro_imaj Adlı Kullanıcıdan Alıntı: [ -> ]
(27-09-2021, Saat: 22:52)woywod Adlı Kullanıcıdan Alıntı: [ -> ]Merhabalar 
Ben müsteri listesi adında bir form olusturdum 



Dbgrid den ID sini alıp cari adında bir form olusturdum
bu form da public bir degisken verdim Cari_ID

procedure TCari_list_frm.DBGrid1CellClick(Column: TColumn);
var
Deger:integer;
begin

Deger:= strtoint(DBGrid1.Fields[0].AsString);

  if not Assigned( Cari_Frm) then
 begin

   Cari_Frm := TCari_Frm.Create(self);
    Cari_Frm.cari_ID:=Deger;
   Cari_Frm.Show;


 end

end;
simdi bundan sonra cari adın da fomrmunda create olayına
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='+ cari_ID.ToString);//bir adet parametre yaratıldı
ADOQuery1.Active:=True;
end;
*
fakat veriler gelmiyor
yanı cari formda cari_ID ye deger atanmıyor ? 
Nerde yanlıslık yaptım acaba ?

Merhaba,

Böyle dener misiniz.
procedure TCari_Frm.FormCreate(Sender: TObject);

begin

Cari_ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=veri.mdb';

ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select * From Cari_Tbl Where Cari_ID='''+ cari_ID.ToString+''' ');//bir adet parametre yaratıldı
ADOQuery1.Open;
end;

Close etmemişsiniz aslında sorun bu.
Teşekurler Elinize saglık calıstı Smile
Merhaba,

@pro_imaj 'a alternatif olarak parametreyi doğrudan SQL içerisine enjekte etmektense bu şekilde daha rahat olabilir ;

  with ADOQuery1 do
 begin
   Close;
   SQL.Clear;
   SQL.Add('select * from isimler where ad =:sy1');
   Parameters.ParamByName('sy1').Value := 'Mr.X';
   open;
 end;

En azından tırnak işaretlerinden kurtulmuş olursunuz. Tırnaklar fazla kafa karıştırıcı olabiliyor uzun SQL cümleciklerinde.
(30-09-2021, Saat: 20:27)Mr.X Adlı Kullanıcıdan Alıntı: [ -> ]Merhaba,

@pro_imaj 'a alternatif olarak parametreyi doğrudan SQL içerisine enjekte etmektense bu şekilde daha rahat olabilir ;

  with ADOQuery1 do
 begin
   Close;
   SQL.Clear;
   SQL.Add('select * from isimler where ad =:sy1');
   Parameters.ParamByName('sy1').Value := 'Mr.X';
   open;
 end;

En azından tırnak işaretlerinden kurtulmuş olursunuz. Tırnaklar fazla kafa karıştırıcı olabiliyor uzun SQL cümleciklerinde.
Tesekurler...