Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Genel İşlemler
  Aktif Konular Aktif Konular RSS - RE: proje
  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.

RE: proje

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

Kayıt Tarihi: 05 Mayıs 2026
Durum: Aktif Değil
Puanlar: 4
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı yagmur Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: RE: proje
    Gönderim Zamanı: 3 Saat 32 Dakika Önce Saat 11:39

stok listesinde sorun var bazı ürünleri eklemiyor veya eklenen ürünü düşmüyor


Var 
  Form1: TclForm;
  PnlLogin, PnlSignUp, PnlWelcome, PnlDashboard, PnlAddProduct, PnlOutProduct, PnlListStock: TclPanel;
  EdtLName, EdtLPass, EdtSName, EdtSPass: TclProEdit;
  BtnDoLogin, BtnRegister, BtnGoToSignUp, BtnContinue: TclProButton;
  BtnGotoAddPage, BtnGotoOutPage, BtnGotoListPage: TclProButton;
  BtnBackFromAdd, BtnBackFromOut, BtnBackFromList: TclProButton;
  BtnLogoutWelcome, BtnLogoutDash, BtnLogoutAdd, BtnLogoutOut, BtnLogoutList: TclProButton;
  BtnOutProduct, BtnSaveProduct: TclProButton;
  EdtAddName, EdtAddPrice, EdtAddAmount: TclProEdit;
  EdtOutName, EdtOutAmount, EdtSearch: TclProEdit;
  Qry: TClSQLiteQuery;
  i: integer;
  stPnl: TclPanel;
  stLbl: TCLLabel;
  lblAppTitle, lblWelcomeMsg: TclLabel;

// --- STOK LİSTESİ VE ARAMA ---
void RefreshStockList;
{
  try
    if (EdtSearch.Text == '')
      Qry = Clomosy.DBSQLiteQueryWith('SELECT * FROM Stocks ORDER BY pName ASC');
    else
      Qry = Clomosy.DBSQLiteQueryWith('SELECT * FROM Stocks WHERE pName LIKE ' + QuotedStr('%'+EdtSearch.Text+'%') + ' ORDER BY pName ASC');
    
    Qry.OpenOrExecute;
    Qry.First;
    i = i + 100; 
    
    while (not Qry.EOF)
    {
      stPnl = Form1.AddNewPanel(PnlListStock, 'stRow' + IntToStr(i));
      stPnl.Height = 75; stPnl.Align = alTop; stPnl.Margins.Top = 8;
      stPnl.StyleLookup = 'pushpanel';
      
      stLbl = Form1.AddNewLabel(stPnl, 'stLbl' + IntToStr(i), 
        Qry.FieldByName('pName').AsString + ' | Fiyat: ' + Qry.FieldByName('pPrice').AsString + ' TL | Stok: ' + Qry.FieldByName('pAmount').AsString);
      stLbl.Align = alClient; stLbl.Margins.Left = 20;
      
      // clRed yerine Hex kodu kullandık (#FF0000)
      if (Qry.FieldByName('pAmount').AsInteger < 10)
      {
        stLbl.TextSettings.FontColor = '#FF0000'; 
        stLbl.Text = '⚠️ ' + stLbl.Text + ' (KRITIK!)';
      } else {
        stLbl.TextSettings.FontColor = '#000000';
      }
      Qry.Next;
      i = i + 1;
    }
  except
    ShowMessage('Liste yuklenemedi!');
  }
}

// --- ÜRÜN GİRİŞ/ÇIKIŞ ---
void AddNewProduct;
{
  if ((EdtAddName.Text <> '') && (EdtAddAmount.Text <> ''))
  {
    try
      Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO Stocks (pName, pPrice, pAmount) VALUES (' + 
        QuotedStr(EdtAddName.Text) + ', ' + EdtAddPrice.Text + ', ' + EdtAddAmount.Text + ')';
      Clomosy.DBSQLiteQuery.OpenOrExecute;
      ShowMessage('Urun basariyla eklendi!');
      EdtAddName.Text = ''; EdtAddPrice.Text = ''; EdtAddAmount.Text = '';
    except
      ShowMessage('Kayit hatasi!');
    }
  } else ShowMessage('Lutfen alanlari doldurun!');
}

void SubProduct;
{
  if ((EdtOutName.Text <> '') && (EdtOutAmount.Text <> ''))
  {
    Qry = Clomosy.DBSQLiteQueryWith('SELECT pAmount FROM Stocks WHERE pName = ' + QuotedStr(EdtOutName.Text));
    Qry.OpenOrExecute;
    if (not Qry.Eof)
    {
      if (Qry.FieldByName('pAmount').AsInteger >= StrToInt(EdtOutAmount.Text))
      {
        Clomosy.DBSQLiteQuery.Sql.Text = 'UPDATE Stocks SET pAmount = pAmount - ' + EdtOutAmount.Text + ' WHERE pName = ' + QuotedStr(EdtOutName.Text);
        Clomosy.DBSQLiteQuery.OpenOrExecute;
        ShowMessage('Stok guncellendi!');
        EdtOutName.Text = ''; EdtOutAmount.Text = '';
      } else ShowMessage('Yetersiz stok!');
    } else ShowMessage('Urun bulunamadi!');
  }
}

// --- NAVİGASYON ---
void ShowLogin; { PnlSignUp.Visible = False; PnlWelcome.Visible = False; PnlDashboard.Visible = False; PnlAddProduct.Visible = False; PnlOutProduct.Visible = False; PnlListStock.Visible = False; PnlLogin.Visible = True; }
void ShowWelcome; { PnlLogin.Visible = False; PnlSignUp.Visible = False; PnlWelcome.Visible = True; lblWelcomeMsg.Text = 'Sayin ' + EdtLName.Text + ',' + #13 + 'Sisteme Hos Geldiniz'; }
void ShowDashboard; { PnlWelcome.Visible = False; PnlAddProduct.Visible = False; PnlOutProduct.Visible = False; PnlListStock.Visible = False; PnlDashboard.Visible = True; }
void ShowAddPage; { PnlDashboard.Visible = False; PnlAddProduct.Visible = True; }
void ShowOutPage; { PnlDashboard.Visible = False; PnlOutProduct.Visible = True; }
void ShowListPage; { PnlDashboard.Visible = False; PnlListStock.Visible = True; RefreshStockList; }
void ShowSignUp; { PnlLogin.Visible = False; PnlSignUp.Visible = True; }

// --- AUTH ---
void DoLogin; 
{
  Clomosy.DBSQLiteQuery.Sql.Text = 'SELECT * FROM Users WHERE userName=' + QuotedStr(EdtLName.Text) + ' AND userPassword=' + QuotedStr(EdtLPass.Text);
  Clomosy.DBSQLiteQuery.OpenOrExecute;
  if (not Clomosy.DBSQLiteQuery.Eof) ShowWelcome;
  else ShowMessage('Hatali Giris!');
}

void DoRegister; 
{
  Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO Users (userName, userPassword) VALUES (' + QuotedStr(EdtSName.Text) + ', ' + QuotedStr(EdtSPass.Text) + ')';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
  ShowMessage('Kayit Basarili!'); ShowLogin;
}

void SetupDatabase; 
{
  Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'ClomoStockV21.db3', '');
  Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE IF NOT EXISTS Users(userName TEXT, userPassword TEXT)';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
  Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE IF NOT EXISTS Stocks(pName TEXT, pPrice INTEGER, pAmount INTEGER)';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
}

// --- ANA PROGRAM ---
{
  Form1 = TclForm.Create(Self);
  SetupDatabase;
  i = 0;

  // 1. LOGIN
  PnlLogin = Form1.AddNewPanel(Form1, 'PnlLogin'); PnlLogin.Align = alClient;
  EdtLName = Form1.AddNewProEdit(PnlLogin, 'EdtLName', 'Kullanici Adi'); EdtLName.Align = alTop; EdtLName.Margins.Top = 50;
  EdtLPass = Form1.AddNewProEdit(PnlLogin, 'EdtLPass', 'Sifre'); EdtLPass.Align = alTop; EdtLPass.Password = True;
  BtnDoLogin = Form1.AddNewProButton(PnlLogin, 'BtnDoLogin', 'GIRIS YAP'); BtnDoLogin.Align = alTop; Form1.AddNewEvent(BtnDoLogin, tbeOnClick, 'DoLogin');
  BtnGoToSignUp = Form1.AddNewProButton(PnlLogin, 'BtnGoToSignUp', 'HESAP OLUSTUR'); BtnGoToSignUp.Align = alTop; Form1.AddNewEvent(BtnGoToSignUp, tbeOnClick, 'ShowSignUp');

  // 2. SIGNUP
  PnlSignUp = Form1.AddNewPanel(Form1, 'PnlSignUp'); PnlSignUp.Align = alClient; PnlSignUp.Visible = False;
  EdtSName = Form1.AddNewProEdit(PnlSignUp, 'EdtSName', 'Yeni Kullanici'); EdtSName.Align = alTop;
  EdtSPass = Form1.AddNewProEdit(PnlSignUp, 'EdtSPass', 'Yeni Sifre'); EdtSPass.Align = alTop;
  BtnRegister = Form1.AddNewProButton(PnlSignUp, 'BtnRegister', 'KAYIT OL'); BtnRegister.Align = alTop; Form1.AddNewEvent(BtnRegister, tbeOnClick, 'DoRegister');

  // 3. WELCOME
  PnlWelcome = Form1.AddNewPanel(Form1, 'PnlWelcome'); PnlWelcome.Align = alClient; PnlWelcome.Visible = False;
  lblAppTitle = Form1.AddNewLabel(PnlWelcome, 'lblAppTitle', 'ClomoStock');
  lblAppTitle.Align = alTop; lblAppTitle.Height = 50; lblAppTitle.TextSettings.Font.Size = 30;
  lblWelcomeMsg = Form1.AddNewLabel(PnlWelcome, 'lblWelcomeMsg', '');
  lblWelcomeMsg.Align = alTop; lblWelcomeMsg.Height = 50;
  BtnContinue = Form1.AddNewProButton(PnlWelcome, 'BtnContinue', 'DEVAM ET');
  BtnContinue.Align = alTop; Form1.AddNewEvent(BtnContinue, tbeOnClick, 'ShowDashboard');

  // 4. DASHBOARD
  PnlDashboard = Form1.AddNewPanel(Form1, 'PnlDashboard'); PnlDashboard.Align = alClient; PnlDashboard.Visible = False;
  BtnGotoAddPage = Form1.AddNewProButton(PnlDashboard, 'BtnA', 'URUN GIRISI'); BtnGotoAddPage.Align = alTop; Form1.AddNewEvent(BtnGotoAddPage, tbeOnClick, 'ShowAddPage');
  BtnGotoOutPage = Form1.AddNewProButton(PnlDashboard, 'BtnO', 'URUN CIKISI'); BtnGotoOutPage.Align = alTop; Form1.AddNewEvent(BtnGotoOutPage, tbeOnClick, 'ShowOutPage');
  BtnGotoListPage = Form1.AddNewProButton(PnlDashboard, 'BtnL', 'STOK LISTESI'); BtnGotoListPage.Align = alTop; Form1.AddNewEvent(BtnGotoListPage, tbeOnClick, 'ShowListPage');

  // 5. URUN GIRIS
  PnlAddProduct = Form1.AddNewPanel(Form1, 'PnlAddProduct'); PnlAddProduct.Align = alClient; PnlAddProduct.Visible = False;
  EdtAddName = Form1.AddNewProEdit(PnlAddProduct, 'EdtAN', 'Urun Adi'); EdtAddName.Align = alTop;
  EdtAddPrice = Form1.AddNewProEdit(PnlAddProduct, 'EdtAP', 'Fiyat'); EdtAddPrice.Align = alTop;
  EdtAddAmount = Form1.AddNewProEdit(PnlAddProduct, 'EdtAA', 'Adet'); EdtAddAmount.Align = alTop;
  BtnSaveProduct = Form1.AddNewProButton(PnlAddProduct, 'BtnSv', 'KAYDET'); BtnSaveProduct.Align = alTop; Form1.AddNewEvent(BtnSaveProduct, tbeOnClick, 'AddNewProduct');
  BtnBackFromAdd = Form1.AddNewProButton(PnlAddProduct, 'BtnBa', 'GERI'); BtnBackFromAdd.Align = alBottom; Form1.AddNewEvent(BtnBackFromAdd, tbeOnClick, 'ShowDashboard');

  // 6. URUN CIKIS
  PnlOutProduct = Form1.AddNewPanel(Form1, 'PnlOutProduct'); PnlOutProduct.Align = alClient; PnlOutProduct.Visible = False;
  EdtOutName = Form1.AddNewProEdit(PnlOutProduct, 'EdtON', 'Urun Adi'); EdtOutName.Align = alTop;
  EdtOutAmount = Form1.AddNewProEdit(PnlOutProduct, 'EdtOA', 'Adet'); EdtOutAmount.Align = alTop;
  BtnOutProduct = Form1.AddNewProButton(PnlOutProduct, 'BtnOp', 'CIKIS YAP'); BtnOutProduct.Align = alTop; Form1.AddNewEvent(BtnOutProduct, tbeOnClick, 'SubProduct');
  BtnBackFromOut = Form1.AddNewProButton(PnlOutProduct, 'BtnBo', 'GERI'); BtnBackFromOut.Align = alBottom; Form1.AddNewEvent(BtnBackFromOut, tbeOnClick, 'ShowDashboard');

  // 7. LISTE
  PnlListStock = Form1.AddNewPanel(Form1, 'PnlListStock'); PnlListStock.Align = alClient; PnlListStock.Visible = False;
  EdtSearch = Form1.AddNewProEdit(PnlListStock, 'EdtSearch', 'Ara...'); EdtSearch.Align = alTop;
  Form1.AddNewEvent(EdtSearch, tbeOnChange, 'RefreshStockList');
  BtnBackFromList = Form1.AddNewProButton(PnlListStock, 'BtnBl', 'GERI'); BtnBackFromList.Align = alBottom; Form1.AddNewEvent(BtnBackFromList, tbeOnClick, 'ShowDashboard');

  Form1.Run;
}
https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" 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">
4GWTRS
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,027 Saniyede Yüklendi.