Döviz Kurları İçinde TL Gizlenmesi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen erdogan_ozkaya »

Arkadaşlar,

VT Para_Birimi Diye Bir Tablom var tabloya eklenen para birimleri sonraki aşamalarda alcak verecek gibi yerlerde para birimi seçerken çıkması için kullanıyorum hemde kur oranlarını görüp takip edebiliyorum fakat tabloda TL olmadığı için daha sonra bir yerde göremiyorum TL ekleyincede doviz güncellerken Para birimi bulunamadı diye hata veriyor.

özet: güncellerken "Aciklama" satırındaki TL kontrol etmesin

Kod: Tümünü seç

procedure TPara_Birimi_Kayit.SpeedButton2Click(Sender: TObject);
var
       S,Alis,Satis,Aranan: String;
       Aranand:ARRAY [1..100] OF String;
       Yer,i,j : Integer;
begin
       ProgressBar1.Visible := true;
       S:=IdHTTP1.Get('http://tcmb.gov.tr/kurlar/today.html');
       Para_Birimi_DB.Last;
       Para_Birimi_DB.first;
       for j:=0 to Para_Birimi_DB.RecordCount-1 do
begin
Aranand[j]:= Para_Birimi_DB.FieldByname('Aciklama').AsString;
Aranan:=Aranand[j];
       ProgressBar1.Position :=j;
       Yer:=pos(Aranan,S);
       if Yer=0 then
begin
       ShowMessage('       Kur Bilgisi Bulunamadı. YTL / TL / YKR Güncellenmemektedir.      ');
       exit;
              ProgressBar1.Visible := false;
       end
       else
begin
       Yer:=Yer+length(Aranan);
       S:=copy(S,Yer,length(S)-Yer);
       S:=Trim(S);
       Alis:=copy(S,1,9);
       Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := Alis;
       S:=copy(S,10,length(S)-9);
       S:=trim(S);
       Satis:=copy(S,1,7);
       Para_Birimi_DB.FieldByName('Satis_Tutari').AsString := Satis;
       Para_Birimi_DB.Next;
end;
       end;
       ProgressBar1.Visible := false;
end;
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen conari »

tablona TL eklediysen şu şekilde yap,TL karşılığı 1 atarsın. tabi yanlış anlamadı isem.

Kod: Tümünü seç

ProgressBar1.Position :=j;
       Yer:=pos(Aranan,S);
 if Yer=0 then
begin
       Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := 1; 
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := 1;
Para_Birimi_DB.Next;
       end
       else
begin
       Yer:=Yer+length(Aranan);
       S:=copy(S,Yer,length(S)-Yer);
       S:=Trim(S);
       Alis:=copy(S,1,9);
       Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := Alis;
       S:=copy(S,10,length(S)-9);
       S:=trim(S);
       Satis:=copy(S,1,7);
       Para_Birimi_DB.FieldByName('Satis_Tutari').AsString := Satis;
       Para_Birimi_DB.Next;
end;
       end;
       ProgressBar1.Visible := false;
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen erdogan_ozkaya »

Hocam Çok Teşekkür Ederim Cevabın için,

tablodaki bilgiler sabit ben ek olarak TL ekliyorum http://tcmb.gov.tr/kurlar/today.html sitede TL olmadığı için bulamıyor bulmayıncada hata veriyor. aynı hata devam ediyor.

Teşekkürler
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen conari »

yer=0 neyi gösteriyor DB de 0 TL ye karşılık gelmiyormu?

yani VT de TL ye geldiğini nasıl anlıyorsun?

yapman gereken döngüde TL ye geldiğinde karşılığında VT ye 1 yazdırmak TL de değil ise html den karşılığını post etmek.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen erdogan_ozkaya »

Hocam, http://tcmb.gov.tr/kurlar/today.html bu siteyi (DÖVİZİN CİNSİ) sorguluyor ve vt (DÖVİZİN CİNSİ) karşılaştırıp aynı olanın karşılığını yazıyor fakat sitede TL olmadığı için bulamıyor bulamayınca da hata veriyor.

Programın kodu aşağıdaki gibi ekteki dosya calışma hali var bakabilirseniz sevinirim kolay gelsin.

Kod: Tümünü seç

procedure TPara_Birimi_Kayit.SpeedButton2Click(Sender: TObject);
var
       S,Alis,Satis,Aranan: String;
       Aranand:ARRAY [1..100] OF String;
       Yer,i,j : Integer;
begin
       ProgressBar1.Visible := true;
       S:=IdHTTP1.Get('http://tcmb.gov.tr/kurlar/today.html');
       Para_Birimi_DB.Last;
       Para_Birimi_DB.first;
       for j:=0 to Para_Birimi_DB.RecordCount-1 do
begin
Aranand[j]:= Para_Birimi_DB.FieldByname('Aciklama').AsString;
Aranan:=Aranand[j];
       ProgressBar1.Position :=j;
       Yer:=pos(Aranan,S);
       if Yer=0 then
begin        
       ProgressBar1.Visible := False;
       ShowMessage('       Kur Bilgisi Bulunamadı. YTL / TL / YKR Güncellenmemektedir.      ');
       exit;
       end
       else
begin
       Yer:=Yer+length(Aranan);
       S:=copy(S,Yer,length(S)-Yer);
       S:=Trim(S);
       Alis:=copy(S,1,9);
       Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := Alis;
       S:=copy(S,10,length(S)-9);
       S:=trim(S);
       Satis:=copy(S,1,7);
       Para_Birimi_DB.FieldByName('Satis_Tutari').AsString := Satis;
       Para_Birimi_DB.Next;
end;
       end;
       ProgressBar1.Visible := false;
end;
Dosya ekleri
Döviz.rar
döviz kurları
(12.88 KiB) 100 kere indirildi
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen conari »

İşte bulamadığı birim için 1 yazdırıyoruz.

Kod: Tümünü seç

var
       S,Alis,Satis,Aranan: String;
       Aranand:ARRAY [1..100] OF String;
       Yer,i,j : Integer;
begin
       ProgressBar1.Visible := true;
       S:=IdHTTP1.Get('http://tcmb.gov.tr/kurlar/today.html');
       Para_Birimi_DB.Last;
       Para_Birimi_DB.first;
       for j:=0 to Para_Birimi_DB.RecordCount-1 do
begin
       Aranand[j]:= Para_Birimi_DB.FieldByname('Aciklama').AsString;
       Aranan:=Aranand[j];
       ProgressBar1.Position :=j;
       Yer:=pos(Aranan,S);
       if Yer=0 then
begin
     //  ProgressBar1.Visible := False;
     //  ShowMessage('       Kur Bilgisi Bulunamadı. YTL / TL / YKR Güncellenmemektedir.      ');
     //  exit;
           Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := '1.0000';
       Para_Birimi_DB.FieldByName('Satis_Tutari').AsString := '1.0000';
       Para_Birimi_DB.Next;
       end
       else
begin
       Yer:=Yer+length(Aranan);
       S:=copy(S,Yer,length(S)-Yer);
       S:=Trim(S);
       Alis:=copy(S,1,9);
       Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := Alis;
       S:=copy(S,10,length(S)-9);
       S:=trim(S);
       Satis:=copy(S,1,7);
       Para_Birimi_DB.FieldByName('Satis_Tutari').AsString := Satis;
       Para_Birimi_DB.Next;
end;
       end;
       ProgressBar1.Visible := false;
end;
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: Döviz Kurları İçinde TL Gizlenmesi

Mesaj gönderen erdogan_ozkaya »

tam düşündüğüm değil ama daha sonra geliştirilebilir çok teşekkür ederim fikir için. (bazen kurla isimleri değişebiliyor dolayısıyla bulamadığı her kura aynısını yapacak )

teşekkürler.

son hali :)

Kod: Tümünü seç

begin
     //  ProgressBar1.Visible := False;
     //  ShowMessage('       Kur Bilgisi Bulunamadı. YTL / TL / YKR Güncellenmemektedir.      ');
     //  exit;
       Para_Birimi_DB.Edit;
       Para_Birimi_DB.FieldByName('Alis_Tutari').AsString := '1.0000';
       Para_Birimi_DB.FieldByName('Satis_Tutari').AsString := '1.0000';
       Para_Birimi_DB.Next;
       ShowMessage('       Kur Bilgisi Başarıyla Güncellenmiştir.      ');
       Exit;
       end
       else
begin
Cevapla