[***] Script GRAPH.vb chartdirector

Solution Ă  base d'un PC et du logiciel Homeseer. Vous trouverez ici les tutos, les discussions sur les plugs-in et les scripts Ă  base de VBasic, ASP, VBScript, etc

[***] Script GRAPH.vb chartdirector

Messagede steph@ne » 16 Nov 2010, 21:09

------------------------------
Mise Ă  jour le 18-11-2010
------------------------------
Voici la nouvelle version du script. Les nouveautés sont:
-Création de tous les graphiques en même temps (idée ycole)
-Ajout de System.data;System.Data.dll automatiquement dans settings.ini
-Création automatique de l'event recurent.

Ajouts de 3 clés dans graph.ini:
-GraphAuto=Liste des sections à dessiner (séparées par ",")
-EventNom=Nom de l'événement créé automatiquement
-EventAuto=valeur du nb de minutes pour la récurence de l'événement

Maintenant il faut:
- la 1ère fois lancer &hs.runex("GRAPH.vb","initialisation","") dans immediate script command. Ce qui crée l'événement, vérifie que la valeur 'System.data;System.Data.dll' soit bien dans settings.ini et la rajoute s'il faut. Après tout marche tout seul! Si vous voulez changer le nombre de minutes pour la récurence, il suffit de garder le même nom d'événement, de changer la valeur dans graph.ini et de relancer lancer &hs.runex("GRAPH.vb","initialisation","") et le tour est joué.

------------------------------


Salut,

Si comme moi vous utilisez plusieurs technologies pour récupérer vos températures (rfxcom ou onewire), que vous souhaitez récupérer d'autres valeurs et que vous voulez faire des graphiques en png récupérable dans HSTouch et personnalisés, ce script est pour vous.

Image

Il se compose d'une DB access dans laquelle vous pourrez enregistrer les valeurs de 15 devices (rfxcom, onewire, temperature, humidité, pourquoi pas des valeurs de conso électrique ou de votre taux de download de votre ligne ADSL ...). Vous paramétrez ensuite le fichier ini pour créer vos graphs.

Comment enregistrer les valeurs?
Dans un premier temps il faut remplir la section temperature du fichier ini. J'ai laissé mes valeurs pour exemple.
La clé "ConnectionString" est le chemin de la DB. Attention à votre version de HS.
Les clés de Device1 à 15 sont l'endroit où vous devez mettre les code devices que vous souhaitez enregistrer, la division de la valeur (10 par ex pour le rxfcom), et le nom associé. Le tout séparé par la caractère "|".
Après, vous devez créer un event qui lancera le script statement &hs.runex "GRAPH.vb","InsertionDB","" toutes les n minutes.

Comment paramétrer vos graph?
Pour chaque nouveau graphique il faut créer une section graph1, graph2 ..... Le plus simple est de copier une section existante et changer le nom.
La clé CheminFichier est le chemin de sortie de votre png. Je vous conseille de le mettre dans le répertoire HTML pour y accèder facilement depuis un autre PC ou HSTouch.
La clé Devicex est la liste de devices concernés par le graph. Vous pouvez par ex faire un graph avec 2,3,4 devices. Attention de bien les séparer par une virgule.
Les autres clés, c'est facile. Pas la peine de commenter. Si vous ne voulez pas de titre il suffit de ne pas en mettre dans la section. Si vous ne voulez pas de légende, il faut mettre la clé à 0 et la mettre à 1 si vous la souhaitez.
Une fois le tout paramétré, il faut lancer le script &hs.runex "CHART.vb","CreateChart","graph1" pour le graph1 par ex.

Tous les graphiques sont des relevés sur une période de 24h. Vous pouvez changer la couleur de fond, la police de caractères, la taille et la couleur de la police,la taille du graphique,
Comme d'habitude, le fichier INI va dans CONFIG, le VB dans SCRIPTS et la DB où vous voulez tant que le chemin est bien indiqué dans le INI et la dll à la racine de HS.
Pensez également à ajouter ChartDirector;netchartdir.dll dans la clé ScriptingReferences dans settings.ini.

Les fichiers : http://domotics.free.fr/upload/ScriptGraph1.1.zip
Merci de me dire ce que vous en pensez ou si vous avez d'autres idées.
SD
Dernière édition par steph@ne le 02 Déc 2010, 15:11, édité 8 fois.
Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Messagede ycole » 17 Nov 2010, 19:25

Excellente initiative, merci pour ce partage :D

Mais j'ai une erreur : Script compile error: Type 'OdbcConnection' non défini.on line 44

Pourtant il me semble avoir tout fait comme tu le décrivais :cry:

As-tu une idée ?
ycole
Dieu de domotique
 
Messages: 717
Inscription: 08 AoĂ» 2006, 12:44
Localisation: Pays de Caux (Normandie)

Messagede steph@ne » 17 Nov 2010, 19:45

Salut ycole,

Merci pour ton retour.
Concernant ton message, je pense qu'il te manque cette référence dans la clé ScriptingReferences du fichier settings.ini
Microsoft.Data.Odbc;Microsoft.Data.Odbc.dll
Une fois ajouter, ça devrait marcher.
Tiens moi au jus.
SD
Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Messagede ycole » 17 Nov 2010, 20:29

Ma ligne Ă©tait
ScriptingReferences=ChartDirector;netchartdir.dll

J'ai modifié en
ScriptingReferences=ChartDirector;netchartdir.dll,Microsoft.Data.Odbc;Microsoft.Data.Odbc.dll

mais du coup j'ai un Warning sans mĂŞme lancer ton script
VB Net scripting, could not add assembly referenced from settings.ini: Microsoft.Data.Odbc.dll
ycole
Dieu de domotique
 
Messages: 717
Inscription: 08 AoĂ» 2006, 12:44
Localisation: Pays de Caux (Normandie)

Messagede steph@ne » 17 Nov 2010, 20:30

Est ce que tu as la dll?
Essaye de faire une recherche... Copie la Ă  la racine de HS.
Il faut redémarrer HS aussi.
Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Messagede ycole » 17 Nov 2010, 21:21

Non pas de Microsoft.Data.Odbc.dll sur mon serveur.
Peux-tu l'ajouter pour être sûr d'avoir la même version ?
ycole
Dieu de domotique
 
Messages: 717
Inscription: 08 AoĂ» 2006, 12:44
Localisation: Pays de Caux (Normandie)

Messagede steph@ne » 17 Nov 2010, 21:26

Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Messagede ycole » 17 Nov 2010, 22:24

J'ai copié la dll, modifié le settings.ini et redémarré HS : Plus de warning avec cette dll mais toujours le même message d'erreur

Code: Tout sélectionner
17/11/2010 22:19:54  Event  Running script statement immediately: &hs.runex "GRAPH.vb","InsertionDB",""
17/11/2010 22:19:56  Error  Script compile error: Type 'OdbcConnection' non dĂ©fini.on line 44
ycole
Dieu de domotique
 
Messages: 717
Inscription: 08 AoĂ» 2006, 12:44
Localisation: Pays de Caux (Normandie)

Messagede steph@ne » 17 Nov 2010, 22:31

Essaye en ajoutant System.data;System.Data.dll dans settings.ini. Je crois que c'est ce qui manque en fait.
Je crois que tu peux mĂŞme virer Microsoft.Data.Odbc.dll car l'espace de nom System.Data.Odbc fait partie de System.Data (dans system.data.dll).
Merci encore pour tes tests.
SD
Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Messagede ycole » 17 Nov 2010, 23:21

Cette fois ça marche :D

Par contre tu as fait une petite erreur dans ta doc :
il faut lancer le script &hs.runex "GRAPH.vb","CreateChart","graph1" et non pas &hs.runex "CHART.vb","CreateChart","graph1"

Est-ce qu'il n'est pas possible de faire quelque chose du genre &hs.runex "GRAPH.vb","CreateChart",* pour créer tous les graphiques en même temps ?

Comment fait-on pour ne pas avoir la mention ChartDirector en bas des graphiques ? Puisque qu'elle n'y est pas dans RFXCharts par exemple, c'est bien qu'elle doit être enregistrée, non ?

Merci

Yves
ycole
Dieu de domotique
 
Messages: 717
Inscription: 08 AoĂ» 2006, 12:44
Localisation: Pays de Caux (Normandie)

Messagede steph@ne » 18 Nov 2010, 13:01

Salut Yves,
Merci pour ton retour.
Je vais essayé ce soir de faire une version modifié que je mettrai en ligne.
Pour ne pas avoir la mention chartdirector, il faut mettre un fichier lic dans c:\windows\system32.. Mais je sais pas si c'est bien légal....
A tout Ă  l'heure.
SD
Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Messagede steph@ne » 18 Nov 2010, 21:57

Mise Ă  jour voir en haut.
SD
Avatar de l’utilisateur
steph@ne
Dieu de domotique
 
Messages: 574
Inscription: 11 Mar 2009, 13:10
Localisation: Isère

Suivante

Retourner vers Homeseer

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

Copyright © 2011 - Touteladomotique.com - Tous droits rĂ©servĂ©s
Les blogs partenaires : Abavala, Domo-Blog, Domotique34, Maison et Domotique


cron