Siteden tcno sorgulama örneğini aldım. Allah razı olsun arkdaşlar hazırlamış biz faydalanalım diye de bir yere geldim takıldım...
Burada il ve ilçe bilgileri listbox'a ekleniyor ama bunları combox'a eklemek istiyorum. Kodları aşağıdaki şekilde düzenliyorum combobox'a göre İl bilgileri combobox'a dolduruluyor. Ama il seçtiğim zaman diğer combobox'a ilçeler gelmesi gerekirken tuhaf bir hata veriyor neden olabilir sizce arkadaşlar...
Kod: Tümünü seç
unit tcnoform;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, StdCtrls, kpsPublic, Gpshape, cxDropDownEdit,
cxContainer, cxEdit, cxControls, cxTextEdit, InvokeRegistry, Rio,
SOAPHTTPClient, cxMaskEdit ;
type
Ttcnofrm = class(TForm)
ManyShape1: TManyShape;
Label1: TLabel;
SpeedButton12: TSpeedButton;
ManyShape2: TManyShape;
GroupBox1: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
cxTextEdit1: TcxTextEdit;
cxTextEdit2: TcxTextEdit;
cxTextEdit3: TcxTextEdit;
cxTextEdit4: TcxTextEdit;
cxEditStyleController1: TcxEditStyleController;
cxComboBox1: TcxComboBox;
cxTextEdit5: TcxTextEdit;
cxTextEdit6: TcxTextEdit;
Label10: TLabel;
HTTPRIO1: THTTPRIO;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
procedure SpeedButton12Click(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
private
Kps: KPSPublicWebServiceSoap;
function KimlikNoDogrula(const KimlikNo: Int64): TCKimlikNoDogrulamaSonucu;
procedure PrepareIlListesi;
end;
var
tcnofrm: Ttcnofrm;
implementation
{$R *.dfm}
procedure Ttcnofrm.SpeedButton12Click(Sender: TObject);
begin
Close;
end;
procedure Ttcnofrm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_Escape Then Close;
end;
procedure Ttcnofrm.FormCreate(Sender: TObject);
begin
KPS:= GetKPSPublicWebServiceSoap(False, '', HTTPRIO1);
PrepareIlListesi;
end;
function Ttcnofrm.KimlikNoDogrula(
const KimlikNo: Int64): TCKimlikNoDogrulamaSonucu;
begin
Result:= KPS.TCKimlikNoDogrula(KimlikNo);
end;
procedure Ttcnofrm.FormDestroy(Sender: TObject);
begin
KPS:= nil;
end;
procedure Ttcnofrm.PrepareIlListesi;
var
IlListesi: ArrayOfIlBilgisi;
I: Integer;
begin
IlListesi:= KPS.IlListesiGetir;
for I:= 0 to Length(IlListesi) - 1 do
ComboBox1.Items.Append(IntToStr(IlListesi[I].Kod) +
'=' + IlListesi[I].Ad);
end;
procedure Ttcnofrm.ComboBox1Change(Sender: TObject);
var
IlceListesi: ArrayOfIlceBilgisi;
I: Integer;
comboboxIl, comboboxIlce: TComboBox;
begin
if TComboBox(Sender).Name = 'Combobox1' then
begin
comboboxIl:= ComboBox1;
comboboxIlce:= ComboBox2;
end;
IlceListesi:=
KPS.IleBagliIlceListesiGetir(
StrToInt(comboboxIl.Items.Names[comboboxIl.ItemIndex]));
comboboxIlce.Clear;
for I:= 0 to Length(IlceListesi) - 1 do
comboboxIlce.Items.Append(IntToStr(IlceListesi[I].Kod) +
'-' + IlceListesi[I].Ad);
end;
end.
Ilcelistesi := denen yerde geliyor hata veriyor. Hata ise aşağıdaki gibidir...

Şimdiden yardımlarınız için tşk ediyorum...