Sayfayı Yazdır | Pencereyi Kapat

kaydetmeme hatası

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Clomosy ile değişken kullanımı
Forum Tanımlaması: TRObject dili ile değişken tanımlaması ve ekranda gösterme
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=1586
Tarih: 03 Temmuz 2026 Saat 17:59
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: kaydetmeme hatası
Mesajı Yazan: Hüseyin_Sadik
Konu: kaydetmeme hatası
Mesaj Tarihi: 03 Temmuz 2026 Saat 14:32
var
  AnaForm: TclForm;
  PnlAna, PnlUrunler, PnlYeniUrun: TclPanel;

  QrKod: TClQRCodeGenerator;
  BtnUrunGit: TclProButton;
  LytAnaOrta: TclLayout;

  PnlUrunlerUst, PnlUrunlerAlt: TclProPanel;
  BtnUrunGeri, BtnYeniUrunEkran: TclProButton;
  ScrUrunler: TclVertScrollBox;

  BtnYeniUrunGeri, BtnKaydet, BtnFotoSec: TclProButton;
  EdtUrunAdi, EdtUrunFiyat: TclEdit;
  ImgUrunFoto: TclImage;
  
  BaseURL: String;

void EkraniGoster(PnlGoster: TclPanel);
{
  PnlAna.Visible = False;
  PnlUrunler.Visible = False;
  PnlYeniUrun.Visible = False;
  PnlGoster.Visible = True;
}

void UrunSil;
var
  SilRest: TclRest;
  reqBody: String;
  BtnSil: TclProButton;
{
  BtnSil = TclProButton(AnaForm.clSender);
  reqBody = '{"action":"delete_product", "id":' + IntToStr(BtnSil.clTagInt) + ', "restaurant_id":1}';
  
  SilRest = TclRest.Create;
  SilRest.BaseURL = BaseURL + 'api.php';
  SilRest.Accept = 'application/json';
  SilRest.Method = rmPOST;
  SilRest.AddBody(reqBody, 'application/json');
  SilRest.Execute;
  
  ShowMessage('Ürün başarıyla silindi!');
  TclProPanel(BtnSil.Parent).Visible = False;
}

void UrunleriYukle;
var
  clRest: TclRest;
  dataset: TCLJSONQuery;
  LblUrunAd, LblUrunFiyat: TclProLabel;
  PnlUrunItem: TclProPanel;
  BtnSilItem: TclProButton;
{
  ScrUrunler.Free;
  ScrUrunler = AnaForm.AddNewVertScrollBox(PnlUrunler, 'ScrUrunler');
  ScrUrunler.Align = alClient;
  
  clRest = TclRest.Create;
  clRest.BaseURL = BaseURL + 'api.php?action=get_products&restaurant_id=1&format=flat';
  clRest.Method = rmGET;
  clRest.Execute;
  
  if clRest.Response <> ''
  {
    dataset = Clomosy.ClDataSetFromJSON(clRest.Response);
    
    while (dataset.Eof == False)
    {
      PnlUrunItem = AnaForm.AddNewProPanel(ScrUrunler, 'Pnl_' + dataset.FieldByName('id').AsString);
      PnlUrunItem.Align = alTop;
      PnlUrunItem.Height = 100;
      PnlUrunItem.Margins.Top = 10;
      PnlUrunItem.Margins.Left = 10;
      PnlUrunItem.Margins.Right = 10;
      PnlUrunItem.clProSettings.BorderColor = clAlphaColor.clHexToColor('#E74C3C');
      PnlUrunItem.clProSettings.BorderWidth = 2;
      PnlUrunItem.clProSettings.IsRound = True;
      PnlUrunItem.clProSettings.RoundWidth = 15;
      PnlUrunItem.clProSettings.RoundHeight = 15;
      PnlUrunItem.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#FFFFFF');
      PnlUrunItem.SetclProSettings(PnlUrunItem.clProSettings);
      
      LblUrunAd = AnaForm.AddNewProLabel(PnlUrunItem, 'LblAd_' + dataset.FieldByName('id').AsString, dataset.FieldByName('name').AsString);
      LblUrunAd.Align = alTop;
      LblUrunAd.Height = 35;
      LblUrunAd.Margins.Left = 15;
      LblUrunAd.Margins.Top = 10;
      LblUrunAd.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000');
      LblUrunAd.clProSettings.FontSize = 18;
      LblUrunAd.SetclProSettings(LblUrunAd.clProSettings);
      
      BtnSilItem = AnaForm.AddNewProButton(PnlUrunItem, 'BtnSil_' + dataset.FieldByName('id').AsString, 'SİL');
      BtnSilItem.Align = alRight;
      BtnSilItem.Width = 60;
      BtnSilItem.Margins.Right = 10;
      BtnSilItem.Margins.Bottom = 10;
      BtnSilItem.clTagInt = dataset.FieldByName('id').AsInteger;
      BtnSilItem.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C');
      BtnSilItem.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
      BtnSilItem.clProSettings.IsRound = True;
      BtnSilItem.clProSettings.RoundWidth = 10;
      BtnSilItem.clProSettings.RoundHeight = 10;
      BtnSilItem.SetclProSettings(BtnSilItem.clProSettings);
      AnaForm.AddNewEvent(BtnSilItem, tbeOnClick, 'UrunSil');
      
      LblUrunFiyat = AnaForm.AddNewProLabel(PnlUrunItem, 'LblFiyat_' + dataset.FieldByName('id').AsString, dataset.FieldByName('price').AsString + ' TL');
      LblUrunFiyat.Align = alRight;
      LblUrunFiyat.Width = 120;
      LblUrunFiyat.Margins.Right = 5;
      LblUrunFiyat.Margins.Bottom = 10;
      LblUrunFiyat.clProSettings.FontHorzAlign = palTrailing;
      LblUrunFiyat.clProSettings.FontVertAlign = palCenter;
      LblUrunFiyat.clProSettings.FontColor = clAlphaColor.clHexToColor('#E74C3C');
      LblUrunFiyat.clProSettings.FontSize = 16;
      LblUrunFiyat.SetclProSettings(LblUrunFiyat.clProSettings);
      
      dataset.Next;
    }
  }
}

void GoToUrunler;
{
  EkraniGoster(PnlUrunler);
  UrunleriYukle;
}

void GoToAna;
{
  EkraniGoster(PnlAna);
}

void GoToYeniUrun;
{
  EkraniGoster(PnlYeniUrun);
}

void FotoSec;
{
  try
    Clomosy.ImageChooser(AnaForm, ImgUrunFoto);
  except
    ShowMessage('Kamera açılamadı, lütfen tekrar deneyin.');
  }
}

void YeniUrunKaydet;
var
  KaydetRest: TclRest;
  reqBody: String;
  LBase64Veri: String;
  LMemStream: TCLMemoryStream;
{
  if EdtUrunAdi.Text == ''
  {
    ShowMessage('Ürün adı giriniz!');
    Exit;
  }
  
  if EdtUrunFiyat.Text == ''
  {
    ShowMessage('Fiyat giriniz!');
    Exit;
  }
  
  LMemStream = TCLMemoryStream.Create;
  try
    if ImgUrunFoto.Bitmap == Nil
    {
      ShowMessage('Lütfen önce bir fotoğraf seçiniz!');
      LMemStream.Free;
      Exit;
    }
    
    ImgUrunFoto.Bitmap.SaveToStream(LMemStream);
    
    if (LMemStream.Size == 0)
    {
      ShowMessage('Fotoğraf boş, lütfen tekrar seçiniz!');
      Exit;
    }
    
    LBase64Veri = LMemStream.AsBase64;
    
    reqBody = '{"restaurant_id":1, "category_id":1, "name":"'+EdtUrunAdi.Text+'", "description":"'+EdtUrunAdi.Text+'", "price":'+EdtUrunFiyat.Text+', "image_base64":"' + LBase64Veri + '"}';
    
    KaydetRest = TclRest.Create;
    try
      KaydetRest.BaseURL = BaseURL + 'api.php?action=save_product';
      KaydetRest.Accept = 'application/json';
      KaydetRest.Method = rmPOST;
      KaydetRest.AddBody(reqBody, 'application/json');
      KaydetRest.Execute;
      
      if KaydetRest.Response <> ''
      {
        ShowMessage('Sunucu Yanıtı: ' + KaydetRest.Response);
        EdtUrunAdi.Text = '';
        EdtUrunFiyat.Text = '';
        ImgUrunFoto.Bitmap = Nil;
        GoToUrunler;
      }
      else
      {
        ShowMessage('Sunucudan yanıt alınamadı, tekrar deneyin.');
      }
    finally
      KaydetRest.Free;
    }
    
  finally
    LMemStream.Free;
  }
}

{
  BaseURL = ' http://192.168.1.43/qrmenu/" rel="nofollow - http://192.168.1.43/qrmenu/ ';

  AnaForm = TclForm.Create(Self);
  AnaForm.SetFormColor('#FFFFFF', '', clGNone);
  
  PnlAna = AnaForm.AddNewPanel(AnaForm, 'PnlAna');
  PnlAna.Align = alClient;
  
  LytAnaOrta = AnaForm.AddNewLayout(PnlAna, 'LytAnaOrta');
  LytAnaOrta.Align = alCenter;
  LytAnaOrta.Width = 300;
  LytAnaOrta.Height = 450;
  
  QrKod = AnaForm.AddNewQRCodeGenerator(LytAnaOrta, 'QrKod', BaseURL + 'menu.php?id=1&i=1');
  QrKod.Align = alTop;
  QrKod.Height = 300;
  QrKod.Width = 300;
  
  BtnUrunGit = AnaForm.AddNewProButton(LytAnaOrta, 'BtnUrunGit', 'Ürünlere Git -->');
  BtnUrunGit.Align = alBottom;
  BtnUrunGit.Height = 60;
  BtnUrunGit.Margins.Bottom = 20;
  BtnUrunGit.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnUrunGit.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
  BtnUrunGit.clProSettings.BorderColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnUrunGit.clProSettings.BorderWidth = 2;
  BtnUrunGit.clProSettings.IsRound = True;
  BtnUrunGit.clProSettings.RoundWidth = 15;
  BtnUrunGit.clProSettings.RoundHeight = 15;
  BtnUrunGit.clProSettings.FontSize = 18;
  BtnUrunGit.SetclProSettings(BtnUrunGit.clProSettings);
  AnaForm.AddNewEvent(BtnUrunGit, tbeOnClick, 'GoToUrunler');
  
  PnlUrunler = AnaForm.AddNewPanel(AnaForm, 'PnlUrunler');
  PnlUrunler.Align = alClient;
  PnlUrunler.Visible = False;
  
  PnlUrunlerUst = AnaForm.AddNewProPanel(PnlUrunler, 'PnlUrunlerUst');
  PnlUrunlerUst.Align = alTop;
  PnlUrunlerUst.Height = 60;
  
  BtnUrunGeri = AnaForm.AddNewProButton(PnlUrunlerUst, 'BtnUrunGeri', 'Geri');
  BtnUrunGeri.Align = alRight;
  BtnUrunGeri.Width = 80;
  BtnUrunGeri.Margins.Right = 10;
  BtnUrunGeri.Margins.Top = 10;
  BtnUrunGeri.Margins.Bottom = 10;
  BtnUrunGeri.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnUrunGeri.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
  BtnUrunGeri.clProSettings.BorderColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnUrunGeri.clProSettings.BorderWidth = 2;
  BtnUrunGeri.clProSettings.IsRound = True;
  BtnUrunGeri.clProSettings.RoundWidth = 5;
  BtnUrunGeri.clProSettings.RoundHeight = 5;
  BtnUrunGeri.SetclProSettings(BtnUrunGeri.clProSettings);
  AnaForm.AddNewEvent(BtnUrunGeri, tbeOnClick, 'GoToAna');
  
  PnlUrunlerAlt = AnaForm.AddNewProPanel(PnlUrunler, 'PnlUrunlerAlt');
  PnlUrunlerAlt.Align = alBottom;
  PnlUrunlerAlt.Height = 80;
  
  BtnYeniUrunEkran = AnaForm.AddNewProButton(PnlUrunlerAlt, 'BtnYeniUrunEkran', '+ Ürün ekle');
  BtnYeniUrunEkran.Align = alCenter;
  BtnYeniUrunEkran.Width = 200;
  BtnYeniUrunEkran.Height = 50;
  BtnYeniUrunEkran.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#FFFFFF');
  BtnYeniUrunEkran.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000');
  BtnYeniUrunEkran.clProSettings.BorderColor = clAlphaColor.clHexToColor('#000000');
  BtnYeniUrunEkran.clProSettings.BorderWidth = 2;
  BtnYeniUrunEkran.clProSettings.IsRound = True;
  BtnYeniUrunEkran.clProSettings.RoundWidth = 25;
  BtnYeniUrunEkran.clProSettings.RoundHeight = 25;
  BtnYeniUrunEkran.clProSettings.FontSize = 16;
  BtnYeniUrunEkran.SetclProSettings(BtnYeniUrunEkran.clProSettings);
  AnaForm.AddNewEvent(BtnYeniUrunEkran, tbeOnClick, 'GoToYeniUrun');
  
  ScrUrunler = AnaForm.AddNewVertScrollBox(PnlUrunler, 'ScrUrunler');
  ScrUrunler.Align = alClient;

  PnlYeniUrun = AnaForm.AddNewPanel(AnaForm, 'PnlYeniUrun');
  PnlYeniUrun.Align = alClient;
  PnlYeniUrun.Visible = False;
  
  BtnYeniUrunGeri = AnaForm.AddNewProButton(PnlYeniUrun, 'BtnYeniUrunGeri', 'Geri');
  BtnYeniUrunGeri.Align = alTop;
  BtnYeniUrunGeri.Height = 50;
  BtnYeniUrunGeri.Margins.Left = 10;
  BtnYeniUrunGeri.Margins.Right = 10;
  BtnYeniUrunGeri.Margins.Top = 10;
  BtnYeniUrunGeri.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnYeniUrunGeri.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
  BtnYeniUrunGeri.clProSettings.BorderColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnYeniUrunGeri.clProSettings.BorderWidth = 2;
  BtnYeniUrunGeri.clProSettings.IsRound = True;
  BtnYeniUrunGeri.clProSettings.RoundWidth = 10;
  BtnYeniUrunGeri.clProSettings.RoundHeight = 10;
  BtnYeniUrunGeri.SetclProSettings(BtnYeniUrunGeri.clProSettings);
  AnaForm.AddNewEvent(BtnYeniUrunGeri, tbeOnClick, 'GoToUrunler');
  
  EdtUrunAdi = AnaForm.AddNewEdit(PnlYeniUrun, 'EdtUrunAdi', 'Ürün Adı');
  EdtUrunAdi.Align = alTop;
  EdtUrunAdi.Height = 40;
  EdtUrunAdi.Margins.Top = 20;
  
  EdtUrunFiyat = AnaForm.AddNewEdit(PnlYeniUrun, 'EdtUrunFiyat', 'Fiyat (Örn: 150.50)');
  EdtUrunFiyat.Align = alTop;
  EdtUrunFiyat.Height = 40;
  EdtUrunFiyat.Margins.Top = 10;
  
  ImgUrunFoto = AnaForm.AddNewImage(PnlYeniUrun, 'ImgUrunFoto');
  ImgUrunFoto.Align = alTop;
  ImgUrunFoto.Height = 200;
  ImgUrunFoto.Margins.Top = 20;
  
  BtnFotoSec = AnaForm.AddNewProButton(PnlYeniUrun, 'BtnFotoSec', 'Kameradan Fotoğraf Seç');
  BtnFotoSec.Align = alTop;
  BtnFotoSec.Height = 50;
  BtnFotoSec.Margins.Top = 10;
  BtnFotoSec.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnFotoSec.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
  BtnFotoSec.clProSettings.IsRound = True;
  BtnFotoSec.clProSettings.RoundWidth = 10;
  BtnFotoSec.clProSettings.RoundHeight = 10;
  BtnFotoSec.SetclProSettings(BtnFotoSec.clProSettings);
  AnaForm.AddNewEvent(BtnFotoSec, tbeOnClick, 'FotoSec');
  
  BtnKaydet = AnaForm.AddNewProButton(PnlYeniUrun, 'BtnKaydet', 'Ürünü Kaydet');
  BtnKaydet.Align = alBottom;
  BtnKaydet.Height = 60;
  BtnKaydet.Margins.Bottom = 20;
  BtnKaydet.Margins.Left = 20;
  BtnKaydet.Margins.Right = 20;
  BtnKaydet.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C');
  BtnKaydet.clProSettings.FontColor = clAlphaColor.clHexToColor('#FFFFFF');
  BtnKaydet.clProSettings.IsRound = True;
  BtnKaydet.clProSettings.RoundWidth = 20;
  BtnKaydet.clProSettings.RoundHeight = 20;
  BtnKaydet.SetclProSettings(BtnKaydet.clProSettings);
  AnaForm.AddNewEvent(BtnKaydet, tbeOnClick, 'YeniUrunKaydet');
  
  AnaForm.Run;
}

https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">



Cevaplar:
Mesajı Yazan: kayra.55
Mesaj Tarihi: 03 Temmuz 2026 Saat 16:27
Sorununuz devam ediyor mu ?  https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net