SuiviConso: Unknown column ‘hchp2’ in ‘field list’

Salut

Suite à sa maj le plugin suiviconso ne fonctionne plus du tout chez moi:


Jeedom v4.3.17, plugin précédent qui fonctionne: 2022-07-27
aucune erreur dans la maj mais ensuite le dashboard est vide et plus rien ne marche.

J’ai forcé la maj du plugin comme dans ce post mais ca n’a rien réglé
Retour en arrière sur le backup pour l’instant

Merci pour vos lumières

A priori la maj des nouveaux champs (qui ne sont plus si nouveaux que ça :stuck_out_tongue_winking_eye:) ne s’est pas bien passé. Tous les nouveaux champs n’ont pas été créé dans les tables. Tu es en quelle version actuellement? Si ta dernière version date de juillet 2022, il te manque un paquet de version.
Si tu as beaucoup d’historique dans conso_teleinfo, cela peut être très long la maj. As tu attendu assez longtemps?

Merci pour ton retour @superbricolo
Je suis en v4.3.17 depuis plusieurs mois, mon plugin date de juillet dernier et il fonctionne tres bien. J’avais deja tenté la maj du plugin sans succès mais je n’avais pas eu le temps d’investiguer. J’evite de perturber ma prod donc je limite les maj en général. Oui j’ai attendu, j’ai aussi tenté de désactiver reactiver le plugin. Il doit manquer des colonnes. Tu ne fais pas des ALTER TABLE a l’install?

J’ai 2 ans d’historique je voudrais eviter de tout perdre…
Je suis sur un NUC Proxmox je peux faire des tests sur ma dev. Tu me conseilles quoi?

Il ne faut déjà surtout pas désactiver et réactiver le plugin, car pour perdre l’historique il y a pas mieux.
Normalement la maj doit passer. Ce que je te propose, tu m’ouvres un accès, et un soir je tente la maj et je corrige s’il y a un problème. Et au pire si on y arrive pas, tu reviens en arrière, mais au moins on aura vu ce qui ne pas pas pour corriger pour une prochaine tentative

ok ca marche merci
je te fais signe un soir

re @superbricolo
bon j’ai reinstallé sur ma dev.
Après maj conso_teleinfo a bien des champs hch*2 mis pas conso_current d’où l’erreur:

[MySQL] Error code : 42S22 (1054). Unknown column 'hchp2' in 'field list' : select timestamp,rec_date,hchp*1,hchc*1,hchp2*1,hchc2*1,hchp3*1,hchc3*1,ptec,papp*1 as papp,inst1,rec_time,imax1,temp,id_equipement, DATE_FORMAT(FROM_UNIXTIME(`timestamp`), "%d-%m-%Y %H:%i") as date From conso_current WHERE rec_date = current_date() AND id_equipement = 466 order by timestamp desc 
MariaDB [jeedom]> desc conso_current;
+---------------+-------------+------+-----+----------+-------+
| Field         | Type        | Null | Key | Default  | Extra |
+---------------+-------------+------+-----+----------+-------+
| timestamp     | bigint(10)  | NO   |     | 0        |       |
| rec_date      | date        | NO   |     | NULL     |       |
| rec_time      | time        | NO   |     | 00:00:00 |       |
| hchp          | bigint(9)   | NO   |     | 0        |       |
| hchc          | bigint(9)   | NO   |     | 0        |       |
| ptec          | varchar(4)  | NO   |     | NULL     |       |
| inst1         | smallint(6) | NO   |     | 0        |       |
| imax1         | smallint(6) | NO   |     | 0        |       |
| pmax          | int(5)      | NO   |     | 0        |       |
| papp          | int(5)      | NO   |     | 0        |       |
| id_equipement | int(11)     | NO   |     | 0        |       |
| temp          | float       | YES  |     | NULL     |       |
+---------------+-------------+------+-----+----------+-------+
12 rows in set (0,001 sec)

MariaDB [jeedom]> desc conso_teleinfo;
+---------------+-------------+------+-----+----------+-------+
| Field         | Type        | Null | Key | Default  | Extra |
+---------------+-------------+------+-----+----------+-------+
| timestamp     | bigint(10)  | NO   | PRI | 0        |       |
| rec_date      | date        | NO   | MUL | NULL     |       |
| rec_time      | time        | NO   | MUL | 00:00:00 |       |
| hchp          | bigint(9)   | NO   |     | 0        |       |
| hchc          | bigint(9)   | NO   | MUL | 0        |       |
| ptec          | varchar(4)  | NO   |     | NULL     |       |
| inst1         | smallint(6) | NO   |     | 0        |       |
| imax1         | smallint(6) | NO   |     | 0        |       |
| pmax          | int(5)      | NO   |     | 0        |       |
| papp          | int(5)      | NO   |     | 0        |       |
| id_equipement | int(11)     | NO   | PRI | 0        |       |
| temp          | float       | YES  |     | NULL     |       |
| hchp2         | bigint(9)   | NO   |     | 0        |       |
| hchc2         | bigint(9)   | NO   |     | 0        |       |
| hchp3         | bigint(9)   | NO   |     | 0        |       |
| hchc3         | bigint(9)   | NO   |     | 0        |       |
+---------------+-------------+------+-----+----------+-------+
16 rows in set (0,001 sec)

Je laisse tourner.
Pourrais tu me dire quels champs ajouter ou?

conso_current est une vue sur la table conso_teleinfo. Donc elle devrait prendre les nouveaux champs.
tu peux exécuter cette requête pour forcer un peu les chosess:

CREATE OR REPLACE VIEW `conso_current`  AS (SELECT * FROM conso_teleinfo WHERE rec_date = CURRENT_DATE() OR rec_date = DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY))

Par contre, auparavant, reforce une installation car les champs ne sont pas dans le bon ordre.

conso_teleinfo:
image

conso_jour:


Ou alors, il n’a pas fini de migrer la table

Bon j’ai forcé l’install et exécuté ta requête et miracle ca marche!!!
Merci encore pour ton aide :wink:

C’est top! :stuck_out_tongue_winking_eye:

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.