Merhaba Projemi compile ettiğimde.
H2077 Value assigned to 'CariGenKod' never used uyarısını veriyor. normalde tanımlayıp ama kullanmadığım değişkenlerde bu uyarıyı verir bende kullanmıyorsam o değişkeni kaldırırdım. Fakat burada CariGenKod değişkenine değer atıyorum ve kullanıyorum bu uyarıyı neden veriyor?
var
CariGenKod: Integer;
begin
CariGenKod:=0;
unqry_CariUyari.Close;
unqry_CariUyari.SQL.Text :=
'select gen_id(GEN_CARILER_ID,1) from RDB$DATABASE';
unqry_CariUyari.Open;
CariGenKod := unqry_CariUyari.FieldByName('gen_id').value;
(23-12-2016, Saat: 16:50)edo Adlı Kullanıcıdan Alıntı: [ -> ] (23-12-2016, Saat: 16:22)masteryoda Adlı Kullanıcıdan Alıntı: [ -> ]Merhaba Projemi compile ettiğimde.
H2077 Value assigned to 'CariGenKod' never used uyarısını veriyor. normalde tanımlayıp ama kullanmadığım değişkenlerde bu uyarıyı verir bende kullanmıyorsam o değişkeni kaldırırdım. Fakat burada CariGenKod değişkenine değer atıyorum ve kullanıyorum bu uyarıyı neden veriyor?
var
CariGenKod: Integer;
begin
CariGenKod:=0;
unqry_CariUyari.Close;
unqry_CariUyari.SQL.Text :=
'select gen_id(GEN_CARILER_ID,1) from RDB$DATABASE';
unqry_CariUyari.Open;
CariGenKod := unqry_CariUyari.FieldByName('gen_id').value;
Kodun tamamı bilmiyorum ama bu kodun devamı varsa bile try bloğu kullanmadığınız sürece CariGenKod'a yaptığınız ilk değer ataması gereksiz. Zaten ileride CariGenKod üzerine başka bir değer atıyorsunuz. Yok kodun tamamı bu kadarsa CariGenKod ile zaten bir şey yapmıyorsunuz demektir
kodun devamında
unqry_HizliCari.ParamByName('CARI_ID').value := CariGenKod;
olarak kullanıyorum uyarıyı görünce en başta :=0 ataması yaptım yine uyarı verecekmi test etmek için.
(23-12-2016, Saat: 17:01)masteryoda Adlı Kullanıcıdan Alıntı: [ -> ]kodun devamında
unqry_HizliCari.ParamByName('CARI_ID').value := CariGenKod;
olarak kullanıyorum uyarıyı görünce en başta :=0 ataması yaptım yine uyarı verecekmi test etmek için.
Bu şekilde uyarı veriyor:
var
CariGenKod: Integer;
begin
CariGenKod:=0;
CariGenKod := unqry_CariUyari.FieldByName('gen_id').AsInteger;
unqry_CariUyari.FieldByName('CARI_ID').AsInteger := CariGenKod;
end;
Bu şekilde uyarı vermiyor:
var
CariGenKod: Integer;
begin
CariGenKod := unqry_CariUyari.FieldByName('gen_id').AsInteger;
unqry_CariUyari.FieldByName('CARI_ID').AsInteger := CariGenKod;
end;
Ama sizin kodunuzda aşağıdaki gibi mutlak göz ardı edilecek bir durum varsa yine bu uyarıyı alırsınız:
var
CariGenKod: Integer;
begin
CariGenKod := unqry_CariUyari.FieldByName('gen_id').AsInteger;
if False then //if 1=2 then
begin
unqry_CariUyari.FieldByName('CARI_ID').AsInteger := CariGenKod;
end;
end;
Herhangi bir if blogu yok kodun devamında
unqry_HizliCari.ParamByName('CARI_ID').value := CariGenKod;
kodun olduğu bloğu try except bloğuna aldığımda uyarı kalkıyor.
Hocam kodun tamamını paylaşabilir misin? Ayrıca hangi Delphi versiyonu ile derliyorsun?
var
CariGenKod : Integer;
begin
unqry_CariUyari.Close;
unqry_CariUyari.SQL.Text :=
'select gen_id(GEN_CARILER_ID,1) from RDB$DATABASE';
unqry_CariUyari.Open;
CariGenKod := unqry_CariUyari.FieldByName('gen_id').value;
unqry_HizliCari.Close;
unqry_HizliCari.SQL.Add('INSERT INTO CARILER ');
unqry_HizliCari.SQL.Add
(' (CARI_ID, FIRMA_ID, CARIKOD, CARIUNVAN, IL, ILCE, TELEFON1, TELEFON2, ');
unqry_HizliCari.SQL.Add
(' FAX, CEPTEL1, CEPTEL2, EMAIL, BORC, ALACAK, BAKIYE, KAYIT_TARIHI, YERELBORC, YERELALACAK, YERELBAKIYE, ADRES) ');
unqry_HizliCari.SQL.Add(' VALUES ');
unqry_HizliCari.SQL.Add
('(:CARI_ID, :FIRMA_ID, :CARIKOD, :CARIUNVAN, :IL, :ILCE, :TELEFON1, :TELEFON2,');
unqry_HizliCari.SQL.Add
(':FAX, :CEPTEL1, :CEPTEL2, :EMAIL, :BORC, :ALACAK, :BAKIYE, :KAYIT_TARIHI, :YERELBORC, :YERELALACAK, :YERELBAKIYE, :ADRES)');
unqry_HizliCari.ParamByName('CARI_ID').value := CariGenKod;
unqry_HizliCari.ParamByName('FIRMA_ID').value := firmaid;
unqry_HizliCari.ParamByName('CARIKOD').Text := edt_CariKod.Text;;
unqry_HizliCari.ParamByName('CARIUNVAN').Text := Mem_CariUnvan.Text;
unqry_HizliCari.ParamByName('IL').Text := cmb_IL.Text;
unqry_HizliCari.ParamByName('ILCE').Text := cmb_ILCE.Text;
unqry_HizliCari.ParamByName('TELEFON1').Text := edt_Telefon1.Text;
unqry_HizliCari.ParamByName('TELEFON2').Text := '';
unqry_HizliCari.ParamByName('FAX').Text := '';
unqry_HizliCari.ParamByName('CEPTEL1').Text := edt_CepTel1.Text;
unqry_HizliCari.ParamByName('CEPTEL2').Text := '';
unqry_HizliCari.ParamByName('EMAIL').Text := '';
unqry_HizliCari.ParamByName('BORC').value := 0;
unqry_HizliCari.ParamByName('ALACAK').value := 0;
unqry_HizliCari.ParamByName('BAKIYE').value := 0;
unqry_HizliCari.ParamByName('KAYIT_TARIHI').value := Date;
unqry_HizliCari.ParamByName('YERELBORC').value := 0;
unqry_HizliCari.ParamByName('YERELALACAK').value := 0;
unqry_HizliCari.ParamByName('YERELBAKIYE').value := 0;
unqry_HizliCari.ParamByName('ADRES').Text := Mem_Adres.Text;
unqry_HizliCari.ExecSQL;
end;
Ide Versiyon bilgisi Embarcadero® RAD Studio 10.1 Berlin Version 24.0.22858.6822
başka procedure yada fucntionda CariGenKod gibi kullanılmayan değişken olabilir mi ? üstüne tıkladığında nereye götürüyor bi bak muhtemelen başka yerede yazıp unutmuş olabilirsin
(24-12-2016, Saat: 00:03)esrehmaan Adlı Kullanıcıdan Alıntı: [ -> ]başka procedure yada fucntionda CariGenKod gibi kullanılmayan değişken olabilir mi ? üstüne tıkladığında nereye götürüyor bi bak muhtemelen başka yerede yazıp unutmuş olabilirsin
Sadece tek bir yerde tanımlı ve paylaştığım koda focus oluyor.