Page 24 sur 35
Re: Domotique Piscine
Publié : 09 avr. 2020, 08:09
par aleph0
Tu dois avoir un message d'erreur renvoyé par sqlite au lieu d'une valeur.
Pour débugger, juste avant la ligne en cause :
Code : Tout sélectionner
PpeFait=os.capture('sqlite3 '..dbPath..' "select sum(value3) from multimeter where devicerowid='..otherdevices_idx[dev_cptFl]..' and Date(date)=\''..today..'\'"')*5/cst_PpeFl_W
rajoute la ligne de debug suivante :
Code : Tout sélectionner
Dummy=os.capture('sqlite3 '..dbPath..' "select sum(value3) from multimeter where devicerowid='..otherdevices_idx[dev_cptFl]..' and Date(date)=\''..today..'\'"')
print("Retour sqlite",Dummy)
Puis poste nous ce que tu as dans les logs
Re: Domotique Piscine
Publié : 09 avr. 2020, 10:32
par lavinch31
Bonjour aleph0 ,
voici ce que me donne les log:
Code : Tout sélectionner
2020-04-09 10:31:00.503 Status: LUA: device => Temperature Piscine-svalues dev_TEau => 12.25-
2020-04-09 10:31:00.541 Status: LUA: Retour sqlite
2020-04-09 10:31:00.541 Status: LUA:
2020-04-09 10:31:00.580 Error: EventSystem: in Filtration_Piscine: [string "--[[ Script de gestion de la piscine ..."]:231: attempt to perform arithmetic on a string value
Re: Domotique Piscine
Publié : 09 avr. 2020, 10:39
par aleph0
C'est bien ce que je pensais

; il semblerai que ton compteur de marche de la pompe ne soit pas mis à jour : Peux-tu regarder de ce côté là ?
Re: Domotique Piscine
Publié : 09 avr. 2020, 10:47
par lavinch31
tu parles du compteur dev_cptFl = "Consommation Piscine" ?
SI oui , il se met pourtant bien a jour lorsque la pompe ( dev_PpeFl = "Pompe Piscine") est sur ON
pompe mis manuellement sur ON à 10:34
j'ai bien 62W de consommé sur environ 5 min d'utilisation
Re: Domotique Piscine
Publié : 09 avr. 2020, 10:50
par aleph0
Ok, donc maintenant qu'il y a une valeur dans le compteur, la commande sqlite devrait renvoyer cette valeur
Re: Domotique Piscine
Publié : 09 avr. 2020, 11:02
par lavinch31
j'ai alors un soucis avec Sqlite ?
car rien de remonte :
Code : Tout sélectionner
2020-04-09 11:01:00.540 Status: LUA: Script Piscine : Gestion de la filtration
2020-04-09 11:01:00.540 Status: LUA: device => Temperature Piscine-svalues dev_TEau => 13.25-
2020-04-09 11:01:00.566 Status: LUA: Retour sqlite
2020-04-09 11:01:00.566 Status: LUA:
2020-04-09 11:01:00.592 Error: EventSystem: in Filtration_Piscine: [string "--[[ Script de gestion de la piscine ..."]:231: attempt to perform arithmetic on a string value
Re: Domotique Piscine
Publié : 09 avr. 2020, 11:07
par aleph0
Ok... continuons à chercher...
Peux-tu modifier la ligne de debug de cette façon :
Code : Tout sélectionner
Dummy='sqlite3 '..dbPath..' "select sum(value3) from multimeter where devicerowid='..otherdevices_idx[dev_cptFl]..' and Date(date)=\''..today..'\'"'
print("Requette sqlite",Dummy)
Re: Domotique Piscine
Publié : 09 avr. 2020, 11:18
par lavinch31
voici la réponse dans les log :
Code : Tout sélectionner
2020-04-09 11:16:00.366 Status: LUA: Script Piscine : Gestion de la filtration
2020-04-09 11:16:00.366 Status: LUA: device => Temperature Piscine-svalues dev_TEau => 13.75-
2020-04-09 11:16:00.366 Status: LUA: Requette sqlite
2020-04-09 11:16:00.366 Status: LUA: sqlite3 /home/pi/domoticz/domoticz.db "select sum(value3) from multimeter where devicerowid=78 and Date(date)='2020-04-09'"
2020-04-09 11:16:00.397 Error: EventSystem: in Filtration_Piscine: [string "--[[ Script de gestion de la piscine ..."]:231: attempt to perform arithmetic on a string value
note: l'IDX 78 correspond bien a dev_cptFl = "Consommation Piscine"
Re: Domotique Piscine
Publié : 09 avr. 2020, 11:44
par aleph0
ok, peut-tu essayer d'exécuter les commandes suivantes :
sqlite3 /home/pi/domoticz/domoticz.db
.header on
select * from multimeter where devicerowid=78 and Date(date)='2020-04-09';
puis
select sum(value3) from multimeter where devicerowid=78 and Date(date)='2020-04-09';
Re: Domotique Piscine
Publié : 09 avr. 2020, 12:00
par lavinch31
alors pour la commande :
sqlite3 /home/pi/domoticz/domoticz.db
.header on
select * from multimeter where devicerowid=78 and Date(date)='2020-04-09';
j'ai la réponse :
Error: no such table: multimeter
puis pour la commande :
select sum(value3) from multimeter where devicerowid=78 and Date(date)='2020-04-09';
[/quote]
j'ai également la réponse:
Error: no such table: multimeter