![]() |
| 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. |
Kontrol yapısında hata |
Yanıt Yaz
|
| Yazar | |
M-Guney
Kıdemli Üye
Kayıt Tarihi: 16 Eylül 2025 Konum: Konya, Meram, K Durum: Aktif Değil Puanlar: 119 |
Mesaj Seçenekleri
Teşekkürler(0)
Alıntı Cevapla
Konu: Kontrol yapısında hataGönderim Zamanı: 11 Saat 29 Dakika Önce Saat 14:34 |
|
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) { ShowMessage('Find Item in Array: ' + FLookingStr); Result = True; //Exit; } //ShowMessage('Not Equal: ' + currentValue + 'LookingStr: '+ FLookingStr); except } } except Result = False; } } bunu kullanmak istiyorum fakat bulsa bile Result = True; döndürmüyor. |
|
![]() |
|
M-Guney
Kıdemli Üye
Kayıt Tarihi: 16 Eylül 2025 Konum: Konya, Meram, K Durum: Aktif Değil Puanlar: 119 |
Mesaj Seçenekleri
Teşekkürler(0)
Alıntı Cevapla
Gönderim Zamanı: 10 Saat 12 Dakika Önce Saat 15:51 |
|
Return tipini boolean dan stringe çevirince return işlemini gerçekleştridi fakat yine de kontrol edip ona göre işlem yapamıyorum.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">
void GetUserPrivilegesCompletedV(Sender) var TempTableLbl : TclProLabel; jsonResponse: String; Arr : TCLJSONArray; I: Integer; hasViewOrders, hasTakePayment: Boolean; { hasTakePayment = False; hasViewOrders = False; jsonResponse = TCLRest(Sender).Response; //ShowMessage('DB Connected: '+ 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')){ Clomosy.RunUnit('uWaiterAndChefDetails'); uWaiterAndChefDetails.SetOrderIDV(OrderID); TempTableLbl = MainForm.clFindComponent(TableName) as TclProLabel; uWaiterAndChefDetails.SetTitleV(TempTableLbl.Text); TCLRest(Sender).Free; }else { ShowMessage('yetkin yok'); }*/ //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 ShowMessage(hasViewOrders.type); if (hasViewOrders) { Clomosy.RunUnit('uWaiterAndChefDetails'); ShowMessage('hasViewOrders: '+ hasViewOrders); } if (hasViewOrders && hasTakePayment) { Clomosy.RunUnit('SelectRoleV'); } else if (hasViewOrders) { Clomosy.RunUnit('uWaiterAndChefDetails'); } else if (hasTakePayment) { Clomosy.RunUnit('uCashierDetails'); } else { ShowMessage('Uyarı: Gereken yetki bulunamadı!'); } uWaiterAndChefDetails.SetOrderIDV(OrderID); TempTableLbl = MainForm.clFindComponent(TableName) as TclProLabel; uWaiterAndChefDetails.SetTitleV(TempTableLbl.Text); TCLRest(Sender).Free; } } örnek yetkilerim [{"privilege_name":"ADD_ORDER"},{"privilege_name":"DELETE_ORDER"},{"privilege_name":"VIEW_ORDERS"},{"privilege_name":"User"},{"privilege_name":"EDIT_ORDER"}] |
|
![]() |
|
M-Guney
Kıdemli Üye
Kayıt Tarihi: 16 Eylül 2025 Konum: Konya, Meram, K Durum: Aktif Değil Puanlar: 119 |
Mesaj Seçenekleri
Teşekkürler(0)
Alıntı Cevapla
Gönderim Zamanı: 10 Saat 10 Dakika Önce Saat 15:53 |
|
Fakat yine aldığım veriye göre işlem yapamıyorum void GetUserPrivilegesCompletedV(Sender) var TempTableLbl : TclProLabel; jsonResponse: String; Arr : TCLJSONArray; I: Integer; hasViewOrders, hasTakePayment: Boolean; { hasTakePayment = False; hasViewOrders = False; jsonResponse = TCLRest(Sender).Response; //ShowMessage('DB Connected: '+ 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')){ Clomosy.RunUnit('uWaiterAndChefDetails'); uWaiterAndChefDetails.SetOrderIDV(OrderID); TempTableLbl = MainForm.clFindComponent(TableName) as TclProLabel; uWaiterAndChefDetails.SetTitleV(TempTableLbl.Text); TCLRest(Sender).Free; }else { ShowMessage('yetkin yok'); }*/ //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 ShowMessage(hasViewOrders.type); if (hasViewOrders) { Clomosy.RunUnit('uWaiterAndChefDetails'); ShowMessage('hasViewOrders: '+ hasViewOrders); } if (hasViewOrders && hasTakePayment) { Clomosy.RunUnit('SelectRoleV'); } else if (hasViewOrders) { Clomosy.RunUnit('uWaiterAndChefDetails'); } else if (hasTakePayment) { Clomosy.RunUnit('uCashierDetails'); } else { ShowMessage('Uyarı: Gereken yetki bulunamadı!'); } uWaiterAndChefDetails.SetOrderIDV(OrderID); TempTableLbl = MainForm.clFindComponent(TableName) as TclProLabel; uWaiterAndChefDetails.SetTitleV(TempTableLbl.Text); TCLRest(Sender).Free; } } [{"privilege_name":"ADD_ORDER"},{"privilege_name":"DELETE_ORDER"},{"privilege_name":"VIEW_ORDERS"},{"privilege_name":"User"},{"privilege_name":"EDIT_ORDER"}]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 |