Tu as bien des enfants associés au père?
Tu a fait comment ?
Oui bien sûr, tous sauf le photovoltaïque qui est un père mais sans enfants
Essaie d’exécuter cette requête
SELECT myid AS id, IF(IFNULL(istotal,0)>0 ,"Total",IF(categorie="NC",myname,categorie)) AS name_cat, isHCHP , istotal , SUM(shc) AS totalhc, SUM(shp) AS totalhp, ROUND(SUM(shp)+SUM(shc),2) AS total, ROUND(SUM(hcprix),2) AS prixhc, ROUND(SUM(hpprix),2) AS prixhp, ROUND(SUM(totalprix),2) AS prix, ROUND(SUM(shc)*100/(res.totalhc+res.totalhp),2) AS total_percent_ecq_hc, ROUND(SUM(shp)*100/(res.totalhc+res.totalhp),2) AS total_percent_ecq_hp, SUM(shc)*100/(SUM(shp)+SUM(shc)) AS percent_ecq_hc, SUM(shp)*100/(SUM(shp)+SUM(shc)) AS percent_ecq_hp, ROUND((SUM(shc)+SUM(shp))*100/(res.totalhc+res.totalhp),2) AS percent_ecq, myid FROM ( SELECT CASE WHEN configuration like '%"visibleConsumptionLight":"1"%' THEN "Lumieres" WHEN configuration like '%"visibleConsumptionElectrical":"1"%' THEN "Electromenager" WHEN configuration like '%"visibleConsumptionAutomatism":"1"%' THEN "Automatisme" WHEN configuration like '%"visibleConsumptionHeating":"1"%' THEN "Chauffage" WHEN configuration like '%"visibleConsumptionMultimedia":"1"%' THEN "Multimedia" WHEN configuration LIKE '%"visibleConsumptionVehicules":"1"%' THEN "Véhicules" WHEN configuration LIKE '%"visibleConsumptionOther":"1"%' THEN "Autres" ELSE "NC" END as categorie, id AS myid, IF(INSTR(configuration, '"type_abo":"HCHP"' )>0 , 1 , 0 ) AS isHCHP , IF(INSTR(configuration, '"total":"1"' )>0 , 1 , 0 ) AS istotal , NAME AS myname, /* MIN(j.rec_date) AS DATE,*/ periode, hc AS shc, hp AS shp, totalhp, totalhc, prix_hc * hc AS hcprix, prix_hp * hp AS hpprix, (prix_hc * hc) + (prix_hp * hp) AS totalprix, DATE_FORMAT(j.`rec_date`,"%d%c%Y") AS mois, j.`rec_date`, p.id_eq FROM conso_jour j INNER JOIN ( SELECT jo.id_eq, DATE_FORMAT(jo.`rec_date`,"%d%c%Y"), jo.rec_date, SUM(hp) AS totalhp, SUM(hc) AS totalhc, (SELECT FORMAT(hc,4) AS hc FROM conso_price WHERE type_ecq LIKE "%elect%" AND UNIX_TIMESTAMP(DATE_FORMAT(jo.rec_date , "%Y-%m-%d")) BETWEEN UNIX_TIMESTAMP( DATE_FORMAT( date_debut, "%Y-%m-%d" ) ) AND UNIX_TIMESTAMP( DATE_FORMAT( date_fin, "%Y-%m-%d" ) ) LIMIT 0,1) AS prix_hc, (SELECT FORMAT(hp,4) AS hc FROM conso_price WHERE type_ecq LIKE "%elect%" AND UNIX_TIMESTAMP(DATE_FORMAT(jo.rec_date , "%Y-%m-%d")) BETWEEN UNIX_TIMESTAMP( DATE_FORMAT( date_debut, "%Y-%m-%d" ) ) AND UNIX_TIMESTAMP( DATE_FORMAT( date_fin, "%Y-%m-%d" ) ) LIMIT 0,1 ) AS prix_hp FROM conso_jour jo INNER JOIN eqLogic eqc ON eqc.id = jo.id_eq WHERE jo.id_eq in (2033,2063,2032) and DATE_FORMAT(jo.`rec_date`,"%d%c%Y") = DATE_FORMAT(CURDATE(),"%d%c%Y") AND configuration LIKE "%elect%" AND configuration LIKE '%"total":"1"%' GROUP BY DATE_FORMAT(jo.`rec_date`,"%d%c%Y"), jo.id_eq ) AS p ON DATE_FORMAT(p.`rec_date`,"%d%c%Y") = DATE_FORMAT(j.`rec_date`,"%d%c%Y") INNER JOIN eqLogic eq ON eq.id = j.id_eq AND isEnable = 1 WHERE j.id_eq in (2033,2063,2032) and DATE_FORMAT(j.`rec_date`,"%d%c%Y") = DATE_FORMAT(CURDATE(),"%d%c%Y") AND configuration LIKE "%elect%" /* GROUP BY j.id_eq*/ ) AS res GROUP BY DATE_FORMAT(res.`rec_date`,"%d%c%Y"), myname ORDER BY istotal DESC
en modifiant 2033,2063,2032 par la liste de tes enfants et du père séparé par des virgules.
Et tu me donnes le résultat
Père = 61
J’ai pas mis le photovoltaïque qui n’a pas d’enfant et qui est configuré comme un père … seul (c’est triste). Il te le faut aussi ?
Pas besoin du photovoltaïque. Tu n’a pas coché la case pour lui?
Sinon tu as un abonnement en heure base?
Je n’ai pas coché la case pour le photovoltaïque non.
Abonnement heure de base oui.
C’est une piste pour ton problème. Car les modifs, je les ai testées en tarif HCHP.
Ah bon . Le tarif de base étant plus simple ça serait quand même bizarre que ça fonctionne pour le HCHP et pas pour l’autre mais bon, why not. Il te faut un mode debug pour trouver ?
Non pas pour l’instant. je regarde et sir je trouve un truc, je te proposerais une modif pour valider
Essaies de remplacer dans conso\core\class\conso_teleinfo.class.php la ligne 1550 par:
'tooltip_data' => ($ishphc ? ['Conso : ' . (((float)$result[$totalkey]['percent_ecq'] - (float)$other_total) < 0 ? $total_hp : (float)$val['totalhp']) . 'Kwh<br>Prix : ' . (((float)$result[$totalkey]['percent_ecq'] - (float)$other_total) < 0 ? $prix_hp : (float)$val['prixhp']) .config::byKey('Devise', 'conso'), 'Conso : ' . (((float)$result[$totalkey]['percent_ecq'] - (float)$other_total) < 0 ? $total_hc : (float)$val['totalhc']) . 'Kwh<br>Prix : ' . (((float)$result[$totalkey]['percent_ecq'] - (float)$other_total) < 0 ? $prix_hc : (float)$val['prixhc']) . config::byKey('Devise', 'conso')] : ['Conso : ' . (((float)$result[$totalkey]['percent_ecq'] - (float)$other_total) < 0 ? $total : (float)$val['total']) . 'Kwh<br>Prix : ' . (((float)$result[$totalkey]['percent_ecq'] - (float)$other_total) < 0 ? $prix : (float)$val['prix']) . config::byKey('Devise', 'conso')])));
Pas mieux avec ce remplacement non
Toujours dans le même fichier, essaie de remplacer la ligne 1609 par
[(float)(($result[$totalkey]['totalhp'] - $total_hp) * 100) / $result[$totalkey]['totalhp']]),
Tu n’as pas remplacé la bonne ligne. C’est la ligne 1612 qu’il faut remplacer dans ta copie d’écran
Ah oui vu que j’avais commenté la précédente modif ça a décalé pardon.
Donc là oui, bien joué c’est bon
Par contre j’ai laissé l’autre modification (ligne 1550). Faut que je repasse sur la 1550 non modifiée ou pas ?
Super , que ça marche. Snon tu peux laisser l’autre ligne. C’était également un soucis.
OK Bravo @superbricolo !
Tu veux faire un post de ce qu’il fallait remplacer pour que je le passe en solution ou je passe en solution uniquement le post de la ligne 1609 ?
Je ne refais pas un autre poste , je vais demander @Mickeys de republier sur sur le Market. Tu passes juste le dernier post en solution
Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.