![]() |
| 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. |
Syntax error |
Yanıt Yaz
|
| Yazar | |
maliwankenobi254
Yeni Üye
Kayıt Tarihi: 23 Mart 2026 Durum: Aktif Değil Puanlar: 4 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı maliwankenobi254
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
Teşekkürler(0)
Alıntı Cevapla
Konu: Syntax errorGönderim Zamanı: 17 Saat 1 Dakika Önce Saat 22:00 |
|
selamun aleyküm yardımcı olabilirmisiniz hata alıyorum 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">
var MainForm: TclForm; MyMQTT: TclMQTT; TempLbl, SoilLbl, TankLbl, RainLbl: TclLabel; PmpBtn: TclProButton; HeaderPnl: TclProPanel; void OnMQTTMessage; var msg: String; jsonObj: TclJson; begin msg := MyMQTT.ReceivedMessage; try jsonObj := TclJson.Create; jsonObj.Parse(msg); TempLbl.Text := '🌡️ Hava: ' + jsonObj.GetValue('temp') + '°C'; SoilLbl.Text := '💧 Toprak Nemi: %' + jsonObj.GetValue('soil'); if jsonObj.GetValue('rain') == '1' then begin RainLbl.Text := '🌧️ Durum: Yağmur Yağıyor'; RainLbl.TextSettings.FontColor := clAlphaRed; end else begin RainLbl.Text := '☀️ Durum: Hava Açık'; RainLbl.TextSettings.FontColor := clAlphaLightgreen; end; if StrToInt(jsonObj.GetValue('tank')) > 20 then TankLbl.TextSettings.FontColor := clAlphaRed else TankLbl.TextSettings.FontColor := clAlphaWhite; TankLbl.Text := '🌊 Depo: ' + jsonObj.GetValue('tank') + ' cm'; finally jsonObj.Free; end; end; void OnPumpClick; begin if PmpBtn.Text == 'SULAMAYI BAŞLAT' then begin MyMQTT.SendToTopic('isabet/iot/ctrl', 'PUMP_ON'); PmpBtn.Text := 'DURDUR'; PmpBtn.clProSettings.BackgroundColor := clAlphaRed; end else begin MyMQTT.SendToTopic('isabet/iot/ctrl', 'PUMP_OFF'); PmpBtn.Text := 'SULAMAYI BAŞLAT'; PmpBtn.clProSettings.BackgroundColor := clAlphaDarkgreen; end; PmpBtn.SetclProSettings(PmpBtn.clProSettings); end; begin MainForm := TclForm.Create(Self); MainForm.SetFormColor('#1B2631', '', clGNone); MyMQTT := MainForm.AddNewMQTTConnection(MainForm, 'MyMQTT'); MyMQTT.OnReceivedMessage := 'OnMQTTMessage'; MyMQTT.Connect('broker.hivemq.com', 1883, 'Kemankes_Mali'); MyMQTT.Subscribe('isabet/iot/data'); HeaderPnl := MainForm.AddNewProPanel(MainForm, 'HeaderPnl'); HeaderPnl.Align := alTop; HeaderPnl.Height := 80; HeaderPnl.clProSettings.BackgroundColor := clAlphaColor.clHexToColor('#2C3E50'); HeaderPnl.SetclProSettings(HeaderPnl.clProSettings); TempLbl := MainForm.AddNewLabel(HeaderPnl, 'TempLbl', 'Bekleniyor...'); TempLbl.Align := alCenter; TempLbl.TextSettings.FontColor := clAlphaWhite; SoilLbl := MainForm.AddNewLabel(MainForm, 'SoilLbl', '💧 Toprak: --'); SoilLbl.Align := alTop; SoilLbl.Margins.Top := 40; SoilLbl.TextSettings.HorzAlign := taCenter; RainLbl := MainForm.AddNewLabel(MainForm, 'RainLbl', '☀️ Durum: --'); RainLbl.Align := alTop; RainLbl.Margins.Top := 10; RainLbl.TextSettings.HorzAlign := taCenter; TankLbl := MainForm.AddNewLabel(MainForm, 'TankLbl', '🌊 Depo: --'); TankLbl.Align := alTop; TankLbl.Margins.Top := 10; TankLbl.TextSettings.HorzAlign := taCenter; PmpBtn := MainForm.AddNewProButton(MainForm, 'PmpBtn', 'SULAMAYI BAŞLAT'); PmpBtn.Align := alBottom; PmpBtn.Height := 80; PmpBtn.Margins.All := 20; PmpBtn.clProSettings.BackgroundColor := clAlphaDarkgreen; PmpBtn.SetclProSettings(PmpBtn.clProSettings); MainForm.AddNewEvent(PmpBtn, tbeOnClick, 'OnPumpClick'); MainForm.Run; end; Unit Main: Syntax error. Source position: 21,34 |
|
![]() |
|
Emr.Erkmn
Moderatör
Kayıt Tarihi: 28 Şubat 2025 Durum: Aktif Değil Puanlar: 755 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı Emr.Erkmn
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
Teşekkürler(0)
Alıntı Cevapla
Gönderim Zamanı: 3 Saat 55 Dakika Önce Saat 11:06 |
|
Merhaba Mehmet Ali,
İlk belirtmem gereken programlama dili olarak Clomosy' de kullanılan TRObject dilini kullanman gerekir. Bazı Syntax hatalarının alınma sebebi budur. Ana Düzeltmeler Atama ve bloklar da := yerine = , begin...end; yerine {...} İf şartlarında koşulları parantez içerisine alman gerekir Renk tanımlamsında clAlphaRed yerine clAlphaColor.clRed formatında kullanman gerekir. Ayrıca MQTT kullanımı içinde Docs sitesinde yer alan https://www.docs.clomosy.com/index.php?title=TclMQTTClient incelemeni isterim 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"> |
|
![]() |
|
Emr.Erkmn
Moderatör
Kayıt Tarihi: 28 Şubat 2025 Durum: Aktif Değil Puanlar: 755 |
Mesaj Seçenekleri
Yanıt Yaz
Alıntı Emr.Erkmn
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
Teşekkürler(0)
Alıntı Cevapla
Gönderim Zamanı: 3 Saat 55 Dakika Önce Saat 11:06 |
|
var MainForm: TclForm; MyMQTT: TCLMqttClient; TempLbl, SoilLbl, TankLbl, RainLbl: TclLabel; PmpBtn: TclProButton; HeaderPnl: TclProPanel; void OnMQTTConnected; { MyMQTT.Subscribe('isabet/iot/data', 1); } void OnMQTTMessage; var msg: String; { msg = MainForm.clPayload; if (msg == '') Exit; TempLbl.Text = '🌡️ Hava: ' + Clomosy.CLParseJSON(msg, 'temp') + '°C'; SoilLbl.Text = '💧 Toprak Nemi: %' + Clomosy.CLParseJSON(msg, 'soil'); if (Clomosy.CLParseJSON(msg, 'rain') == '1') { RainLbl.Text = '🌧️ Durum: Yağmur Yağıyor'; RainLbl.TextSettings.FontColor = clAlphaColor.clRed; } else { RainLbl.Text = '☀️ Durum: Hava Açık'; RainLbl.TextSettings.FontColor = clAlphaColor.clLightgreen; } if (StrToInt(Clomosy.CLParseJSON(msg, 'tank')) > 20) { TankLbl.TextSettings.FontColor = clAlphaColor.clRed; } else { TankLbl.TextSettings.FontColor = clAlphaColor.clWhite; } TankLbl.Text = '🌊 Depo: ' + Clomosy.CLParseJSON(msg, 'tank') + ' cm'; } void OnPumpClick; { MyMQTT.Channel = 'isabet/iot/ctrl'; if (PmpBtn.Text == 'SULAMAYI BAŞLAT') { MyMQTT.Send('PUMP_ON', 1, False); PmpBtn.Text = 'DURDUR'; PmpBtn.clProSettings.BackgroundColor = clAlphaColor.clRed; } else { MyMQTT.Send('PUMP_OFF', 1, False); PmpBtn.Text = 'SULAMAYI BAŞLAT'; PmpBtn.clProSettings.BackgroundColor = clAlphaColor.clDarkgreen; } PmpBtn.SetclProSettings(PmpBtn.clProSettings); } { MainForm = TclForm.Create(Self); MainForm.SetFormColor('#1B2631', '', clGNone); MyMQTT = MainForm.AddNewMQTTClient(MainForm, 'MyMQTT'); MainForm.AddNewEvent(MyMQTT, tbeOnMQTTClientMessage, 'OnMQTTMessage'); MainForm.AddNewEvent(MyMQTT, tbeOnMQTTClientConnected, 'OnMQTTConnected'); MyMQTT.BrokerHost = '192.168.1.20'; MyMQTT.Port = 1883; MyMQTT.Connect; HeaderPnl = MainForm.AddNewProPanel(MainForm, 'HeaderPnl'); HeaderPnl.Align = alTop; HeaderPnl.Height = 80; HeaderPnl.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2C3E50'); HeaderPnl.SetclProSettings(HeaderPnl.clProSettings); TempLbl = MainForm.AddNewLabel(HeaderPnl, 'TempLbl', 'Bekleniyor...'); TempLbl.Align = alCenter; TempLbl.TextSettings.FontColor = clAlphaColor.clWhite; SoilLbl = MainForm.AddNewLabel(MainForm, 'SoilLbl', '💧 Toprak: --'); SoilLbl.Align = alTop; SoilLbl.Margins.Top = 40; SoilLbl.TextSettings.HorzAlign = taCenter; RainLbl = MainForm.AddNewLabel(MainForm, 'RainLbl', '☀️ Durum: --'); RainLbl.Align = alTop; RainLbl.Margins.Top = 10; RainLbl.TextSettings.HorzAlign = taCenter; TankLbl = MainForm.AddNewLabel(MainForm, 'TankLbl', '🌊 Depo: --'); TankLbl.Align = alTop; TankLbl.Margins.Top = 10; TankLbl.TextSettings.HorzAlign = taCenter; PmpBtn = MainForm.AddNewProButton(MainForm, 'PmpBtn', 'SULAMAYI BAŞLAT'); PmpBtn.Align = alBottom; PmpBtn.Height = 80; PmpBtn.clProSettings.BackgroundColor = clAlphaColor.clDarkgreen; PmpBtn.clProSettings.FontColor = clAlphaColor.clWhite; PmpBtn.SetclProSettings(PmpBtn.clProSettings); MainForm.AddNewEvent(PmpBtn, tbeOnClick, 'OnPumpClick'); MainForm.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">
|
|
![]() |
|
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 |