![]() |
| 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. |
Farklı Unitten fonksiyon kullanımı |
Yanıt Yaz
|
| Yazar | |
M-Guney
Deneyimli Üye
Kayıt Tarihi: 16 Eylül 2025 Konum: Konya, Meram, K Durum: Aktif Puanlar: 86 |
Mesaj Seçenekleri
Teşekkürler(0)
Alıntı Cevapla
Konu: Farklı Unitten fonksiyon kullanımıGönderim Zamanı: 3 Saat 26 Dakika Önce Saat 10:42 |
|
Main'imde bulunan IsArrayContain fonksiyonundan aldığım boolean değerini değişkene atamak istiyorum fakat ne hata veriyor ne de değişkene yeni veeriyi yazıyor. Fakat showmessage içinde verdiğimde başarılı bir şekilde True yazısı geliyor değişkene ise atayamıyorum.
Boolean gelen veriyi boolean'a atamk istiyorum fakat atayamadım.
void GetUserPrivilegesCompletedV var jsonResponse: String; Arr : TCLJSONArray; I: Integer; hasViewOrders, hasTakePayment: Boolean; { jsonResponse = TCRest.Response; ShowMessage('query completed'); //ShowMessage(jsonResponse); Arr = TCLJSONArray.Create; Arr = TCLJSONArray.CreateFromJSON(jsonResponse); if(jsonResponse == ''){ ShowMessage('Yetkiler listesi boş herhangi bir yetki yok.') }else{ ShowMessage('Privileges output: '+ jsonResponse); ShowMessage( Main.IsArrayContain(Arr, jsonResponse, 'privilege_name', 'VIEW_ORDERS')); hasViewOrders = Main.IsArrayContain(Arr, jsonResponse, 'privilege_name', 'VIEW_ORDERS'); ShowMessage('hasViewOrders: '+ hasViewOrders); hasTakePayment = Main.IsArrayContain(Arr, jsonResponse, 'privilege_name', 'TAKE_PAYMENT'); ShowMessage('hasTakePayment: '+ hasTakePayment); //ShowMessage('Table Tag: ' + TClProButton(MainForm.Clsender).clTagInt); // clTagStr if (hasViewOrders && hasTakePayment) { Clomosy.RunUnit('SelectRoleV'); } else if (hasViewOrders) { Clomosy.RunUnit('uWaiterAndChefDetails'); } else if (hasTakePayment) { Clomosy.RunUnit('uCashierDetails'); } else { ShowMessage('Uyarı: Gereken yetki bulunamadı!'); } } } // MAIN CODE function IsArrayContain(FArr: TCLJSONArray; FJson: String; FArrayItem: String; FLookingStr: String): Boolean var I: Integer; currentValue: String; { Result = False; Try if (FArr == nil) { ShowMessage('Array is nil return back.'); Result = False; Exit; } if (FJson == '') { ShowMessage('Array is empty return back.'); Result = False; Exit; } for (I = 0 to (FArr.Count - 1)) { Try currentValue = Clomosy.CLParseJSON(FJson, IntToStr(I) + '.' + FArrayItem); if (currentValue == FLookingStr) { Result = True; ShowMessage('Find Item in Array.' + FLookingStr); Exit; } except } } except 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"> |
|
![]() |
|
M-Guney
Deneyimli Üye
Kayıt Tarihi: 16 Eylül 2025 Konum: Konya, Meram, K Durum: Aktif Puanlar: 86 |
Mesaj Seçenekleri
Teşekkürler(0)
Alıntı Cevapla
Gönderim Zamanı: 2 Saat 47 Dakika Önce Saat 11:21 |
|
Ek olarak farklı unitteki fonksiyonu çağırıp title ı değiştirmek istiyorum
if(Main.IsArrayContain(Arr, jsonResponse, 'privilege_name', 'VIEW_ORDERS')){ //ShowMessage('Table Tag: ' + TClProButton(MainForm.Clsender).clTagStr); // clTagStr uWaiterAndChefDetails.SetTitleV(TClProButton(MainForm.Clsender).clTagStr); Clomosy.RunUnit('uWaiterAndChefDetails'); } Tag doğru string olarak gelmesine rağmen değiştiremiyorum. 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">
ve o unit açılmıyor. void SetTitleV(FTableName : String) { TitleLbl.Text = FTableName + 'Sipariş'; } |
|
![]() |
|
M-Guney
Deneyimli Üye
Kayıt Tarihi: 16 Eylül 2025 Konum: Konya, Meram, K Durum: Aktif Puanlar: 86 |
Mesaj Seçenekleri
Teşekkürler(0)
Alıntı Cevapla
Gönderim Zamanı: 34 Dakika Önce Saat 13:34 |
|
clSender dan aldığım veriyi farklı bir değişkene atayınca problemi gidersim fakat hata mesajı döndürmeden direk kodun çalışmaması nedeniyle anlamam biraz uzun sürdü. void GetUserPrivilegesCompletedV var jsonResponse, TableName: String; Arr : TCLJSONArray; I, OrderID: Integer; hasViewOrders, hasTakePayment: Boolean; { jsonResponse = TCRest.Response; //ShowMessage(jsonResponse); Arr = TCLJSONArray.Create; Arr = TCLJSONArray.CreateFromJSON(jsonResponse); if(jsonResponse == ''){ ShowMessage('Yetkiler listesi boş herhangi bir yetki yok.') }else{ if(Main.IsArrayContain(Arr, jsonResponse, 'privilege_name', 'VIEW_ORDERS')){ TableName = TClProButton(MainForm.Clsender).clTagStr; OrderID = TClProButton(MainForm.Clsender).clTagInt; //ShowMessage(TableName); Clomosy.RunUnit('uWaiterAndChefDetails'); uWaiterAndChefDetails.SetTitleV(TableName); uWaiterAndChefDetails.SetOrderIDV(OrderID); 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">
|
|
![]() |
|
Yanıt Yaz
|
|
| Tweet |
| Forum Atla | Forum İzinleri ![]() Kapalı Foruma Yeni Konu Gönderme Kapalı Forumdaki Konulara Cevap Yazma Kapalı Forumda Cevapları Silme Kapalı Forumdaki Cevapları Düzenleme Kapalı Forumda Anket Açma Kapalı Forumda Anketlerde Oy Kullanma |