Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Clomosy ile değişken kullanımı
  Aktif Konular Aktif Konular RSS - nil kontrolü
  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.

nil kontrolü

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Topic Seçenekleri Topic Seçenekleri
M-Guney Açılır Kutu İzle
Kıdemli Üye
Kıdemli Üye


Kayıt Tarihi: 16 Eylül 2025
Konum: Konya, Meram, K
Durum: Aktif Değil
Puanlar: 122
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı M-Guney Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: nil kontrolü
    Gönderim Zamanı: 1 saat 49 Dakika Önce Saat 15:23
function DeclineRoleNeeds:Boolean
  var 
  LArr : TCLJSONArray;
  itemsJson : String;
  {
  //ShowMessage('Role: '+Role);
  try
    if( Role <> nil){
      
      //ShowMessage('Role True: '+Role);
    Result = False;
    if (Role == 'Chef')
    {
      AssignRoleAsChef;
      itemsJson = Clomosy.CLParseJSON(JsonResponse, 'items');
      LArr = TCLJSONArray.Create;
      LArr = TCLJSONArray.CreateFromJSON(itemsJson);
      CloseValuePnlVD(LArr); // ValuePnl.Visible = false; // Bütün + - butonlarını görünmez yapar. 
      LArr.free;
      Result = True;
      // Miktar büyümeli ve pozisyon ayarlanmalı
    }
    else if( role=='Waiter')
      AssignRoleAsWaiter;
    else if (role =='Cashier')
    {
      AssignRoleAsCashier;
      vScroll.Margins.bottom = (MainForm.clHeight * 0.2979); // 250 / 839 ≈ 0.2979   //Cashier
      noteMemo.Visible=False;  //cashier
      CompleteBtn.Margins.top = (MainForm.clHeight * 0.3814); // 320 / 839 ≈ 0.3814    //Cashier
      StateAndDateTimePnl.Margins.top = (MainForm.clHeight * 0.5721); // 480 / 839 ≈ 0.5721    //Cashier
      AmountPnl.Margins.top = (MainForm.clHeight * 0.1907); // 160 / 839 ≈ 0.1907//Cashier
    }
    else if (role == 'Boss')
      AssignRoleAsBoss;
    else {
    ShowMessage('Role is invalid');
    Result = False;
    }
    
  //}
  except
  ShowMessage('DeclineRoleNeeds Error, Exception Class: '+LastExceptionClassName+' Exception Message: '+LastExceptionMessage);
  }
}

role string bir değişken ve ben nil kontrolü yapmak istiyorum ama Invalid typecast hatası alıyorum 

 while (not hasAffected) {
          hasAffected = uWaiterAndChefDetails.DeclineRoleNeeds;
        }

bu şekilde kontrol ediyorum. Timer atamaktansa 
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" 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">
Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif
Puanlar: 445
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 1 saat 38 Dakika Önce Saat 15:34
String için nil kontrolü yapamıyoruz diye biliyorum Güney, 
bunun için boş string kontrolünü kullansak, 
if (Role == '')  
    {
      ShowMessage(' Role boş!');
      Result = False;
      Exit;
    }
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" 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">
Yukarı Dön
M-Guney Açılır Kutu İzle
Kıdemli Üye
Kıdemli Üye


Kayıt Tarihi: 16 Eylül 2025
Konum: Konya, Meram, K
Durum: Aktif Değil
Puanlar: 122
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı M-Guney Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 57 Dakika Önce Saat 16:15
function DeclineRoleNeeds:Boolean
  var 
  LArr : TCLJSONArray;
  itemsJson : String;
  {
  //ShowMessage('Role: '+Role);
  try
    if( role == ''){
    Result = False;
      Exit;
    }
      
    //ShowMessage('Role True: '+Role);
    if (Role == 'Chef')
    {
      AssignRoleAsChef;
      itemsJson = Clomosy.CLParseJSON(JsonResponse, 'items');
      LArr = TCLJSONArray.Create;
      LArr = TCLJSONArray.CreateFromJSON(itemsJson);
      CloseValuePnlVD(LArr); // ValuePnl.Visible = false; // Bütün + - butonlarını görünmez yapar. 
      LArr.free;
      Result = True;
      // Miktar büyümeli ve pozisyon ayarlanmalı
    }
    else if( role=='Waiter')
      AssignRoleAsWaiter;
    else if (role =='Cashier')
    {
      AssignRoleAsCashier;
      vScroll.Margins.bottom = (MainForm.clHeight * 0.2979); // 250 / 839 ≈ 0.2979   //Cashier
      noteMemo.Visible=False;  //cashier
      CompleteBtn.Margins.top = (MainForm.clHeight * 0.3814); // 320 / 839 ≈ 0.3814    //Cashier
      StateAndDateTimePnl.Margins.top = (MainForm.clHeight * 0.5721); // 480 / 839 ≈ 0.5721    //Cashier
      AmountPnl.Margins.top = (MainForm.clHeight * 0.1907); // 160 / 839 ≈ 0.1907//Cashier
    }
    else if (role == 'Boss')
      AssignRoleAsBoss;
    else {
    ShowMessage('Role is invalid');
    Result = False;
    }
    
  //}
  except
  ShowMessage('DeclineRoleNeeds Error, Exception Class: '+LastExceptionClassName+' Exception Message: '+LastExceptionMessage);
  }
}


bunu yapıyorum fakat invalid typecast hatası alıyorum type kontrolü nasıl yapabilirim.
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" 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">
Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif
Puanlar: 445
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 23 Dakika Önce Saat 16:49
function DeclineRoleNeeds: Boolean
var
  LArr: TCLJSONArray;
  itemsJson: String;
  RoleTrimmed: String;
{
  Try
  
    RoleTrimmed = Trim(Role);
    
    if (RoleTrimmed == '')
    {
      Result = False;
      Exit;
    }
    
    Result = False;
    
    if (Role == 'Chef')
    {
      AssignRoleAsChef;
      
      itemsJson = Clomosy.CLParseJSON(JsonResponse, 'items');
      
      if (itemsJson <> '')
      {
        LArr = TCLJSONArray.Create;
        Try
        
          LArr = TCLJSONArray.CreateFromJSON(itemsJson);
          CloseValuePnlVD(LArr);
          Result = True;
        
        finally
        
          if (LArr <> nil)
          {
            LArr.Free;
            LArr = nil;
          }
        }
      }
      else
      {
        Result = True; 
      }
    }
    else if (Role == 'Waiter')  
    {
      AssignRoleAsWaiter;
      Result = True;
    }
    else if (Role == 'Cashier')  
    {
      AssignRoleAsCashier;
      
      if (vScroll <> nil)
      {
        vScroll.Margins.Bottom = (MainForm.clHeight * 0.2979);
      }
      
      if (noteMemo <> nil)
      {
        noteMemo.Visible = False;
      }
      
      if (CompleteBtn <> nil)
      {
        CompleteBtn.Margins.Top = (MainForm.clHeight * 0.3814);
      }
      
      if (StateAndDateTimePnl <> nil)
      {
        StateAndDateTimePnl.Margins.Top = (MainForm.clHeight * 0.5721);
      }
      
      if (AmountPnl <> nil)
      {
        AmountPnl.Margins.Top = (MainForm.clHeight * 0.1907);
      }
      
      Result = True;
    }
    else if (Role == 'Boss')
    {
      AssignRoleAsBoss;
      Result = True;
    }
    else
    {
      ShowMessage('️ Geçersiz role: ' + Role);
      Result = False;
    }
  
  except
  
    ShowMessage(' DeclineRoleNeeds hatası: ' + LastExceptionClassName + ' - ' + LastExceptionMessage);
    Result = False;
  }
}
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" 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">
Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif
Puanlar: 445
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 14 Dakika Önce Saat 16:58
https://www.docs.clomosy.com/Trimhttps://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" 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">
Yukarı Dön
Emr.Erkmn Açılır Kutu İzle
Moderatör
Moderatör


Kayıt Tarihi: 28 Şubat 2025
Durum: Aktif
Puanlar: 445
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Emr.Erkmn Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 11 Dakika Önce Saat 17:01
function DeclineRoleNeeds_Safe: Boolean
var
  LArr: TCLJSONArray;
  itemsJson: String;
{
  Try
  
    if (Trim(Role) == '')
    {
      Result = False;
      Exit;
    }
    
    if (not IsValidRole(Role))
    {
      ShowMessage('️ Geçersiz role: ' + Role);
      Result = False;
      Exit;
    }
    
    Result = False;
    
    if (Role == 'Chef')
    {
      AssignRoleAsChef;
      
      itemsJson = Clomosy.CLParseJSON(JsonResponse, 'items');
      if (itemsJson <> '')
      {
        LArr = TCLJSONArray.Create;
        Try
      
          LArr = TCLJSONArray.CreateFromJSON(itemsJson);
          CloseValuePnlVD(LArr);
        
        finally
        
          if (LArr <> nil)
          {
            LArr.Free;
            LArr = nil;
          }
        }
      }
      Result = True;
    
    else if (Role == 'Waiter')
    {
      AssignRoleAsWaiter;
      Result = True;
    }
    else if (Role == 'Cashier')
    {
      AssignRoleAsCashier;
      
      if (vScroll <> nil) { vScroll.Margins.Bottom = (MainForm.clHeight * 0.2979); }
      if (noteMemo <> nil) { noteMemo.Visible = False; }
      if (CompleteBtn <> nil) { CompleteBtn.Margins.Top = (MainForm.clHeight * 0.3814); }
      if (StateAndDateTimePnl <> nil) { StateAndDateTimePnl.Margins.Top = (MainForm.clHeight * 0.5721); }
      if (AmountPnl <> nil) { AmountPnl.Margins.Top = (MainForm.clHeight * 0.1907); }
      
      Result = True;
    }
    else if (Role == 'Boss')
    {
      AssignRoleAsBoss;
      Result = True;
    }
  }
  except
  
    ShowMessage(' DeclineRoleNeeds_Safe hatası: ' + LastExceptionClassName + ' - ' + LastExceptionMessage);
    Result = False;
  }

Trimle kontrol yapmaya çalıştım Güney sende inceler misin
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" 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">
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,078 Saniyede Yüklendi.