Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Genel İşlemler
  Aktif Konular Aktif Konular RSS - Tür Dönüşüm Hatası
  SSS SSS  Forumu Ara   Etkinlikler   Kayıt Ol Kayıt Ol  Giriş Giriş

Clomosy Resmi Forum Sitesidir. Amacımız kullanıcılarımıza, iş ortaklarımıza, danışmanlara, yazılımcılara programlarımız hakkında destek ve bilgi vermektir.

Tür Dönüşüm Hatası

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Topic Seçenekleri Topic Seçenekleri
CelalTugay Açılır Kutu İzle
Yeni Üye
Yeni Üye


Kayıt Tarihi: 07 Temmuz 2025
Konum: Konya
Durum: Aktif Değil
Puanlar: 21
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı CelalTugay Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: Tür Dönüşüm Hatası
    Gönderim Zamanı: 6 Saat 7 Dakika Önce Saat 14:56
Merhabalar burası benim uUretim unitim burayı açınca verileri ekle butonuna basınca could not convert variant of type (UnicodeString) into type (Boolean) hatası alıyorum aşşağıda uUretim unitim var 
var
  UretimForm: TclForm;
  edtSulama, edtSicaklik, edtNem, edtIlaclama, edtHasatPlan, edtGunlukIs: TclProEdit;
  btnEkle, btnGuncelle, btnGeri: TclProButton;
  gridUretim: TclProGrid;
  Sorgu: TclSQLiteQuery;
  SecilenSatirID: Integer; // Düzenleme için seçilen kayıt ID'si
  dbPath: String;
// Veritabanı bağlantı yolu
//const
 

// Verileri veritabanından al ve gridde göster
void VerileriYukle
var
  yeniSatir: Integer;
  Sorgu: TclSQLiteQuery;
{
  try {
    Clomosy.DBSQLiteConnect(dbPath, '');

    Sorgu = Clomosy.DBSQLiteQueryWith('SELECT UretimID, Sulama, Sicaklik, Nem, Ilaclama, Hasat_Plan, Gunluk_Is FROM ÜretimTablosu ORDER BY UretimID DESC');
    Sorgu.OpenOrExecute;

    gridUretim.RowCount = 1; // sadece başlık

    while (not Sorgu.Eof) {
      yeniSatir = gridUretim.RowCount;
      gridUretim.RowCount = yeniSatir + 1;

      gridUretim.Cells[0, yeniSatir] = Sorgu.FieldByName('UretimID').AsString;
      gridUretim.Cells[1, yeniSatir] = Sorgu.FieldByName('Sulama').AsString;
      gridUretim.Cells[2, yeniSatir] = Sorgu.FieldByName('Sicaklik').AsString;
      gridUretim.Cells[3, yeniSatir] = Sorgu.FieldByName('Nem').AsString;
      gridUretim.Cells[4, yeniSatir] = Sorgu.FieldByName('Ilaclama').AsString;
      gridUretim.Cells[5, yeniSatir] = Sorgu.FieldByName('Hasat_Plan').AsString;
      gridUretim.Cells[6, yeniSatir] = Sorgu.FieldByName('Gunluk_Is').AsString;

      
      
      edtSulama.Text = '';
      edtSicaklik.Text = '';
      edtNem.Text = '';
      edtIlaclama.Text = '';
      edtHasatPlan.Text = '';
      edtGunlukIs.Text = '';
      SecilenSatirID = 0;

      Sorgu.Next;
    }
  }
  except {
    ShowMessage('Veriler yüklenirken hata: ' + LastExceptionMessage);
  }
}
}




// Gridde satır seçildiğinde verileri düzenleme alanlarına getir
void GridSatirSecildi;
var 
  secilenSatir: Integer; // Integer olarak tanımla
{
  secilenSatir = UretimForm.ClSenderRow; // Değer ata
  
  if (secilenSatir <= 0) Exit; // Şimdi integer karşılaştırması

  SecilenSatirID = StrToInt(gridUretim.Cells[0, secilenSatir]);
  edtSulama.Text = gridUretim.Cells[1, secilenSatir];
  edtSicaklik.Text = gridUretim.Cells[2, secilenSatir];
  edtNem.Text = gridUretim.Cells[3, secilenSatir];
  edtIlaclama.Text = gridUretim.Cells[4, secilenSatir];
  edtHasatPlan.Text = gridUretim.Cells[5, secilenSatir];
  edtGunlukIs.Text = gridUretim.Cells[6, secilenSatir];

  btnEkle.Visible = False;
  btnGuncelle.Visible = True;
}


// Güncelle butonu tıklaması
void btnEkleTikla;
{
  if (edtSulama.Text == '' || edtSicaklik.Text == '' || edtNem.Text == '' ||
      edtIlaclama.Text == '' || edtHasatPlan.Text == '' || edtGunlukIs.Text == '') {
    ShowMessage('Lütfen tüm alanları doldurun!');
    Exit;
  }

  try
    Clomosy.DBSQLiteConnect(dbPath, '');
    
    // STRING olarak kaydet (StrToInt çevirimi kaldırıldı)
    Clomosy.DBSQLiteQuery.SQL.Text = 
      'INSERT INTO ÜretimTablosu (Sulama, Sicaklik, Nem, Ilaclama, Hasat_Plan, Gunluk_Is) VALUES (' +
      QuotedStr(Trim(edtSulama.Text)) + ', ' +
      QuotedStr(Trim(edtSicaklik.Text)) + ', ' +
      QuotedStr(Trim(edtNem.Text)) + ', ' +
      QuotedStr(Trim(edtIlaclama.Text)) + ', ' +
      QuotedStr(Trim(edtHasatPlan.Text)) + ', ' +
      QuotedStr(Trim(edtGunlukIs.Text)) + ')';

    Clomosy.DBSQLiteQuery.OpenOrExecute; // OpenOrExecute yerine OpenOrExecute

    ShowMessage('Veri başarıyla eklendi!');
    VerileriYukle; // Grid'i yenile
    
  except
    ShowMessage('Veri eklenirken hata: ' + LastExceptionMessage);
  }
}


/*void btnGuncelleTikla;
{
  if (SecilenSatirID <= 0) {
    ShowMessage('Lütfen güncellenecek kaydı seçin!');
    Exit;
  }

  if (edtSulama.Text == '' || edtSicaklik.Text == '' || edtNem.Text == '' ||
      edtIlaclama.Text == '' || edtHasatPlan.Text == '' || edtGunlukIs.Text == '') {
    ShowMessage('Lütfen tüm alanları doldurun!');
    Exit;
  }

  try
    Clomosy.DBSQLiteConnect(dbPath, '');
    
    Clomosy.DBSQLiteQuery.SQL.Text = 
      'UPDATE ÜretimTablosu SET ' +
      'Sulama = ' + QuotedStr(Trim(edtSulama.Text)) + ', ' +
      'Sicaklik = ' + QuotedStr(Trim(edtSicaklik.Text)) + ', ' +
      'Nem = ' + QuotedStr(Trim(edtNem.Text)) + ', ' +
      'Ilaclama = ' + QuotedStr(Trim(edtIlaclama.Text)) + ', ' +
      'Hasat_Plan = ' + QuotedStr(Trim(edtHasatPlan.Text)) + ', ' +
      'Gunluk_Is = ' + QuotedStr(Trim(edtGunlukIs.Text)) + ' ' +
      'WHERE ID = ' + IntToStr(SecilenSatirID);

    Clomosy.DBSQLiteQuery.OpenOrExecute;

    ShowMessage('Veri başarıyla güncellendi!');
    VerileriYukle; // Grid'i yenile
    
  except
    ShowMessage('Veri güncellenirken hata: ' + LastExceptionMessage);
  }
}*/


// Geri butonu tıklaması
void btnGeriTikla {
  UretimForm.Close;
}

{
  UretimForm = TclForm.Create(Self);
  SecilenSatirID = 0;
  dbPath = Clomosy.AppFilesPath + 'MantarLAR.db';

  UretimForm.SetFormBGImage('https://resmim.net/cdn/2025/07/18/Xm5rHT.jpg');

  edtSulama = UretimForm.AddNewProEdit(UretimForm, 'edtSulama', 'Sulama');
  edtSulama.Align = alTop;
  edtSulama.Height = 50;
  edtSulama.Margins.Top = 10;
  edtSulama.Margins.Left = 30;
  edtSulama.Margins.Right = 30;
  edtSulama.clProSettings.IsRound = True;
  edtSulama.SetclProSettings(edtSulama.clProSettings);

  edtSicaklik = UretimForm.AddNewProEdit(UretimForm, 'edtSicaklik', 'Sıcaklık');
  edtSicaklik.Align = alTop;
  edtSicaklik.Height = 50;
  edtSicaklik.Margins.Top = 10;
  edtSicaklik.Margins.Left = 30;
  edtSicaklik.Margins.Right = 30;
  edtSicaklik.clProSettings.IsRound = True;
  edtSicaklik.SetclProSettings(edtSicaklik.clProSettings);

  edtNem = UretimForm.AddNewProEdit(UretimForm, 'edtNem', 'Nem');
  edtNem.Align = alTop;
  edtNem.Height = 50;
  edtNem.Margins.Top = 10;
  edtNem.Margins.Left = 30;
  edtNem.Margins.Right = 30;
  edtNem.clProSettings.IsRound = True;
  edtNem.SetclProSettings(edtNem.clProSettings);

  edtIlaclama = UretimForm.AddNewProEdit(UretimForm, 'edtIlaclama', 'İlaçlama');
  edtIlaclama.Align = alTop;
  edtIlaclama.Height = 50;
  edtIlaclama.Margins.Top = 10;
  edtIlaclama.Margins.Left = 30;
  edtIlaclama.Margins.Right = 30;
  edtIlaclama.clProSettings.IsRound = True;
  edtIlaclama.SetclProSettings(edtIlaclama.clProSettings);

  edtHasatPlan = UretimForm.AddNewProEdit(UretimForm, 'edtHasatPlan', 'Hasat Planı');
  edtHasatPlan.Align = alTop;
  edtHasatPlan.Height = 50;
  edtHasatPlan.Margins.Top = 10;
  edtHasatPlan.Margins.Left = 30;
  edtHasatPlan.Margins.Right = 30;
  edtHasatPlan.clProSettings.IsRound = True;
  edtHasatPlan.SetclProSettings(edtHasatPlan.clProSettings);

  edtGunlukIs = UretimForm.AddNewProEdit(UretimForm, 'edtGunlukIs', 'Günlük İş');
  edtGunlukIs.Align = alTop;
  edtGunlukIs.Height = 50;
  edtGunlukIs.Margins.Top = 10;
  edtGunlukIs.Margins.Left = 30;
  edtGunlukIs.Margins.Right = 30;
  edtGunlukIs.clProSettings.IsRound = True;
  edtGunlukIs.SetclProSettings(edtGunlukIs.clProSettings);

  btnEkle = UretimForm.AddNewProButton(UretimForm, 'btnEkle', 'Ekle');
  btnEkle.Align = alTop;
  btnEkle.Height = 45;
  btnEkle.Margins.Top = 20;
  btnEkle.Margins.Left = 80;
  btnEkle.Margins.Right = 80;
  btnEkle.clProSettings.IsRound = True;
  btnEkle.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#ff894f');
  btnEkle.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  btnEkle.SetclProSettings(btnEkle.clProSettings);
  UretimForm.AddNewEvent(btnEkle, tbeOnClick, 'btnEkleTikla');

  /*btnGuncelle = UretimForm.AddNewProButton(UretimForm, 'btnGuncelle', 'Güncelle');
  btnGuncelle.Align = alTop;
  btnGuncelle.Height = 45;
  btnGuncelle.Margins.Top = 10;
  btnGuncelle.Margins.Left = 80;
  btnGuncelle.Margins.Right = 80;
  btnGuncelle.clProSettings.IsRound = True;
  btnGuncelle.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#3b8b2e');
  btnGuncelle.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  btnGuncelle.SetclProSettings(btnGuncelle.clProSettings);
  UretimForm.AddNewEvent(btnGuncelle, tbeOnClick, 'btnGuncelleTikla');
  btnGuncelle.Visible = False;*/

  btnGeri = UretimForm.AddNewProButton(UretimForm, 'btnGeri', 'Geri');
  btnGeri.Align = alBottom;
  btnGeri.Height = 50;
  btnGeri.Margins.Bottom = 20;
  btnGeri.Margins.Left = 80;
  btnGeri.Margins.Right = 80;
  btnGeri.clProSettings.IsRound = True;
  btnGeri.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#ea5b6f');
  btnGeri.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  btnGeri.SetclProSettings(btnGeri.clProSettings);
  UretimForm.AddNewEvent(btnGeri, tbeOnClick, 'btnGeriTikla');

  gridUretim = UretimForm.AddNewProGrid(UretimForm, 'gridUretim');
  gridUretim.Align = alClient;
  gridUretim.Margins.Top = 20;
  gridUretim.FixedRows = 1;
  gridUretim.ColumnCount = 8; // Kolon sayısını belirt
  gridUretim.RowCount = 1;
  gridUretim.Cells[0, 0] = 'ID';
  gridUretim.Cells[1, 0] = 'Sulama';
  gridUretim.Cells[2, 0] = 'Sıcaklık';
  gridUretim.Cells[3, 0] = 'Nem';
  gridUretim.Cells[4, 0] = 'İlaçlama';
  gridUretim.Cells[5, 0] = 'Hasat Planı';
  gridUretim.Cells[6, 0] = 'Günlük İş';
  

  UretimForm.AddNewEvent(gridUretim, tbeOnProGridCellClick, 'GridSatirSecildi');


  
  VerileriYukle; // Verileri yükle
  UretimForm.Run;

}


Aşşağıda da create tablom var 

    Clomosy.DBSQLiteQuery.SQL.Clear;
    Clomosy.DBSQLiteQuery.SQL.Add(
      'CREATE TABLE IF NOT EXISTS ÜretimTablosu (' +
      'UretimID INTEGER PRIMARY KEY AUTOINCREMENT, ' +
      'Sulama TEXT NOT NULL, ' +
      'Sicaklik TEXT NOT NULL, ' +
      'Nem TEXT NOT NULL, ' +
      'Ilaclama TEXT NOT NULL, ' +
      'Hasat_Plan TEXT NOT NULL, ' +
      'Gunluk_Is TEXT NOT NULL' +  // Sonda virgül yok!
      ')');
    Clomosy.DBSQLiteQuery.OpenOrExecute;


iyi çalışmalar.


Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu İzle

Forum Software by Web Wiz Forums® version 12.07
Copyright ©2001-2024 Web Wiz Ltd.

Bu Sayfa 0,047 Saniyede Yüklendi.