Homeputer-Projekte verwalten - SPG_Tools (Version 2.2.7)

Programmierung der HomeMatic CCU mittels contronics homeputer CL

Moderator: Co-Administratoren

Benutzeravatar
Sanys
Beiträge: 270
Registriert: 31.01.2007, 12:29
Wohnort: Wetterau

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von Sanys » 11.04.2010, 10:54

Hi Thomas,

super Sache, die jetzige Version der SPG-Tools. Ich nutze gerade die 1.7b**, bisher (für mich) schnell genug und Reimport nach Änderungen klappt auch.
Selbst die letzte Fehlermeldung beim Import (private Typdefinition existiert nicht, GLD erweitern?) wurde übernommen, so dass nun keine Fehler mehr beim Import kommen. Frage dazu: Arbeitsrechner / Entwicklungsrechner: wenn ich am Entwicklungsrechner z.B. neue Typen definiert habe und das Projekt auf den Arbeitsrechner kopiere (die spg), dann muss wohl auch die GLD mitkopiert werden, oder? Habs schon länger nicht mehr gemacht, aber ich glaube, nur so macht es Sinn.

Eine Sache ist mir aufgefallen: Ich habe ein paar Variablen "überwacht". Dann habe ich in HomeputerStudio einige der Variablen geändert. Wenn ich nun mit den SPG-Tools das Projekt reimportiere und auch auf aktualisieren klicke, werden die neuen/geänderten Variablen in der Überwachungsauswahl nicht angezeigt. Erst ein Neustart der SPG-Tools übernimmt dann auch die neuen Variablen. Evtl. kannst Du das ja beim aktualisieren auch mit machen, die Auswahl der Überwachung ist natürlich hinfällig, sollte sich etwas geändert haben.

Und noch eines: extern aufgerufene php-scripte: es wird nur ein Makro gefunden, in welchem ein externes php-script aufgerufen wird. Der Aufruf erfolgt bei mir immer nach dem selben Schema:

Param := "r:\xyz\php.exe -f phpscript.php"
startwin(Param)

wie gesagt, SPG-Tools findet nur eines, und zwar das als letztes angelegte.


Ein Vorschlag noch zum Handling mit notepad++:
Du hast ja die userDefineLang.xml angepasst, damit Studio-Objekte schön farblich markiert sind. Die Textfiles der Makros haben die Endung txt, wie also jeder andere Text auch, der eigentlich nicht Studio-like formatiert werden müsste. Vorschlag dazu: Die Makros bekommen eine andere Endung (z.B. studio), in der userDefineLang.xml wird die Definition entsprechend angepasst. Somit verwendet notepad++ bei Files mit der Endung studio die richtigen Farbmarkierungen. Windows kann man ja auch ganz einfach beibringen, *.studio-Files mit notepad++ zu öffen.


Alles in Allem Super Arbeit! Ich weiß, welcher Aufwand dahinter steckt!


Viele Grüße

Sanys
FHZ 1350PC Prof. mit HomeputerStudio 100224 + Direktsendebefehle à la tsa (v 8.0)
WIN XP Pro SP3 (neuester Stand) + buempi's Minibrowser + etliche fs20+HMS+FHT Komponenten + nie genug Zeit, das alles fertig zu bekommen ;-)

tsa
Beiträge: 725
Registriert: 03.01.2008, 17:42
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von tsa » 12.04.2010, 12:09

PeterM hat geschrieben:Nein noch nicht, aber ...
Also ich habe auch Wochen- /Monatelang versucht, meiner Familie so einen Touchsreen schmackhaft zu machen. Irgenwann hab ich dann einfach einen bestellt, und somit vollendete Tatsachen geschaffen. :lol:
Nur zum Einbau hab ich dann Frau und Kinder weggeschickt - das war eine sehr weise Entscheidung bei den "zentimeterhohen" Dreckschichten im ganzen Haus, die dabei entstanden sind. (Mir wollte einfach ein Deckendurchbruch -in für einen VGA-Stecker ausreichender Grösse- nicht gelingen. War einfach zu viel Stahl an dieser Stelle...) :wink:
tsa hat geschrieben:Mir passiert es immer wieder, das ich einmal zu oft auf die ESC-Taste drücke und dann die SPG_Tools geschlossen werden. Vielleicht bei nächsten Gelegenheit noch verhindern...
OK, hast recht. Ist schon erledigt und gibts im nächsten Update.
Sanys hat geschrieben:wenn ich am Entwicklungsrechner z.B. neue Typen definiert habe und das Projekt auf den Arbeitsrechner kopiere (die spg), dann muss wohl auch die GLD mitkopiert werden, oder?
Ja, genau so ist es.
Sanys hat geschrieben:...Wenn ich ... auf aktualisieren klicke, werden die neuen/geänderten Variablen in der Überwachungsauswahl nicht angezeigt
Weil der Aufbau des Dialoges so lange dauert, mach ich das nur einmal nach dem Programmstart. Werde ich ändern, danke für den Hinweis.
Sanys hat geschrieben:extern aufgerufene php-scripte: es wird nur ein Makro gefunden
Upps, fast übersehen. Hast Du das nachträglich hinzugefügt? Ich schau mir mal an, was ich da wieder verzapft habe. :roll:
Sanys hat geschrieben:Ein Vorschlag noch zum Handling mit notepad++
OK, darüber hatte ich auch schon nachgedacht, allerdings aus Kompatibilitätsgründen wieder verworfen. Sollte für normale Textdateien eigentlich kein Problem sein, da die spezielle Syntaxvhervorhebung nur unmittelbar bei Start des Editors aktiviert wird, und anschliessend die ursprüngliche XML-Datei (ohne Homeputer-Syntax) zurückkopiert wird. Ich könnte aber die Dateierweiterung für die exportierbaren Dateien in der INI parametrierbar machen...
Was meint Ihr dazu?
Sanys hat geschrieben:Alles in Allem Super Arbeit!
Danke.
Sanys hat geschrieben:Ich weiß, welcher Aufwand dahinter steckt!
Das glaub ich Dir sogar! :mrgreen:
Übrigens hab ich bei der (fast fertiggestellten) Suchfunktion Deine Idee für den Filter übernommen, ich gehe davon aus, dass ich keine Klage wegen Diebstahl geistigen Eigentums von Dir bekomme... :wink:

Gruss
Thomas
Zuletzt geändert von tsa am 13.04.2010, 16:44, insgesamt 1-mal geändert.

tsa
Beiträge: 725
Registriert: 03.01.2008, 17:42
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von tsa » 12.04.2010, 13:45

Sanys hat geschrieben:...extern aufgerufene php-scripte: es wird nur ein Makro gefunden...
Param := "r:\xyz\php.exe -f phpscript.php"
startwin(Param)
Das liegt daran, dass SPG_Tools keine Chance hat zu erkennen, in welchem Pfad denn diese PHP-Datei überhaupt liegt.

Ich mache das bei mir immer mit Pfadangabe, z.B.:

Code: Alles auswählen

Kommandozeile := ",z:\fs20\,php-win.exe,-f z:\fs20\php\Termine.php QuittierDatum=" + TermineBestaetigen.QuittierDatum
StartWin(Kommandozeile)

** ODER

Kommandozeile := ",z:\fs20\php\,z:\fs20\php-win.exe,-f Termine.php QuittierDatum=" + TermineBestaetigen.QuittierDatum
StartWin(Kommandozeile)
Übrigens kann Deine Aufrufmethode auch beim laufenden Homeputerprojekt zu Problemen führen (hatten wir ja schon mal im Zusammenhang mit der "Direktsende-DLL"): es braucht nur irgend ein ausgeführter Programmteil das "Aktuelle Verzeichnis" von Homputer verstellen (ein "Speichern unter" und Auswahl eines ANDEREN VERZEICHNISSES bei laufendem Homeputer sollte da schon reichen), dann wird die PHP nicht mehr gefunden...

Gruss
Thomas

Benutzeravatar
Sanys
Beiträge: 270
Registriert: 31.01.2007, 12:29
Wohnort: Wetterau

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von Sanys » 12.04.2010, 16:21

Hi Thomas,

das mit den php-Pfaden habe ich begriffen, umgesetzt und nun fuktioniert es auch in den SPG-Tools. Angemerkt sei, dass bei der "neuen" Schreibweise für Startwin Variablen in Form von Objektname.Variable angegeben werden müssen, bei der einfachen Schreibweise genügt der Variablenname, wenn er im aufrufenden Objekt angelegt ist.
Man lernt nie aus....

Zu notepad++:
Das Pogramm erkennt ja anhand der Endung, welche "Sprache" das File ist und wählt entsprechend die Formatierung. In der userDefineLang.xml kann man ja beliebig viele Definitionen anlegen, und so würde ich das am liebsten machen/haben. Das Ändern der xml habe ich bei mir noch nie bemerkt, da notepad++ bei mir quasi permanent mit irgendwelchen files geöffnet ist. Und so wird es auch zukünftig bleiben.
Du kannst das gerne über die ini lösen: Angabe der Endung, und ob die xml ausgetauscht werden soll. Das wäre prima.

weiterer Bug??
wenn ich links im Baum ein Objekt anklicke erscheint rechts das Makro etc. Verschiebe ich links die Markierung mittels Cursortasten dann ändert sich rechts nix. Sollte es aber meiner Meinung nach, sonst passt rechts und links nicht zusammen.
Übrigens hab ich bei der (fast fertiggestellten) Suchfunktion Deine Idee für den Filter übernommen, ich gehe davon aus, dass ich keine Klage wegen Diebstahl geistigen Eigentums von Dir bekomme... :wink:
nein, bestimmt kommt da keine Klage. Im Gegenteil, ich freue mich, wenn die Suche fertig ist!!. Mein Viewer läuft nämlich auch immer noch, da die Suche so ziemlich das beste dran ist!! Z.B. heute das mit den Pfaden: ich habe einfach php.exe (so heisst die bei mir) ins Suchfeld eingegeben und bekomme sofort die Liste, in welchem Objekt das steht. Somit habe ich gleich alle Makros im Überblick, die ich ändern muss. Aber bestimmt wird das bei Dir mindestens besser gelöst sein :wink:


Viele Grüße


Sanys
FHZ 1350PC Prof. mit HomeputerStudio 100224 + Direktsendebefehle à la tsa (v 8.0)
WIN XP Pro SP3 (neuester Stand) + buempi's Minibrowser + etliche fs20+HMS+FHT Komponenten + nie genug Zeit, das alles fertig zu bekommen ;-)

tsa
Beiträge: 725
Registriert: 03.01.2008, 17:42
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von tsa » 12.04.2010, 17:00

Sanys hat geschrieben:weiterer Bug??
It's not a Bug, it's a feature... :D
Ich war bisher zu faul, die Tastenereignisse abzufangen. Beim Klick-Ereignis war es relativ einfach - aber das Mausziehen etc. war solch ein "Sackgang" dass ich für die Auswahl mittels Tastatur keinen "Bock" mehr hatte... :cry:
(Bümpi kann bestimmt noch ein Lied davon singen)
Sanys hat geschrieben:Aber bestimmt wird das bei Dir mindestens besser gelöst sein
Na, ich geb mir Mühe - aber ob es besser ist... :?: :?: :?:

Gruss
Thomas

Benutzeravatar
Sanys
Beiträge: 270
Registriert: 31.01.2007, 12:29
Wohnort: Wetterau

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von Sanys » 13.04.2010, 10:30

Hi Thomas,

ich muss noch mal nerven.... Habe beide Threads zum Thema SPG-Tools gelesen und glaube zu verstehen, wie das Programm am sinnvollsten angewendet wird, aber noch nicht so ganz....
Meine Fragen:

Sagen wir mal, ich habe die Makros extrahiert und einige per Editor geändert und gespeichert. Klicke ich nun auf Reimport wird die SPG neu erzeugt, gleichzeitig sie Bak's um 1 verschoben und eine neue Bak angelegt. Diese neue SPG öffne ich zum Test in der Anwendung.
Wenn ich nun innerhalb der Anwendung etwas ändere, z.B. In der Ansicht etwas verschiebe oder ein Makro verändere, dann brauche ich nur noch mal auf SPG-Extract zu klicken und es werden nur die geänderten Daten geschrieben, richtig?
Klick auf Aktualisieren liest nur die extrahierten Makros nochmal (z.B. nach Änderung im Editor?)?? Allerdings erscheint kurz ein kleines Fenster mit "Einlesen der SPG"

Variablen kann ich SPG-Tools im jeweiligen Makro anlegen?

Ansichten anpassen (is klar)

neue Objekte anlegen: nur in Studio??
neue Ansichten definieren: auch nur in Studio??

Strukturierung der Objekte: habe ich noch nicht gemacht, werde ich demnächst angehen. Was passiert, wenn ich Objekte lösche, neue erstelle etc. mit meiner Struktur? bleibt das erhalten? gelöschte fliegen raus, neue werden unsortiert angezeigt??


Vielleicht kannst Du das noch etwas genauer erklären :D


btw. "SPG-Reimport" finde ich etwas unglücklich, bedeutet doch eher, die SPG nochmals zu importieren (also in die SPG-Tools). Wie wäre es mit SPG-Rebuild (oder neudeutsch SPG Neu erstellen)?


So, nun störe ich Dich nicht weiter, damit die Suchfunktion fertig wird :D :D :D


Viele Grüße


Sanys
FHZ 1350PC Prof. mit HomeputerStudio 100224 + Direktsendebefehle à la tsa (v 8.0)
WIN XP Pro SP3 (neuester Stand) + buempi's Minibrowser + etliche fs20+HMS+FHT Komponenten + nie genug Zeit, das alles fertig zu bekommen ;-)

tsa
Beiträge: 725
Registriert: 03.01.2008, 17:42
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von tsa » 13.04.2010, 17:33

Sanys hat geschrieben:Wenn ich nun innerhalb der Anwendung etwas ändere, z.B. In der Ansicht etwas verschiebe oder ein Makro verändere, dann brauche ich nur noch mal auf SPG-Extract zu klicken und es werden nur die geänderten Daten geschrieben, richtig?
JA. Bis hierher richtig.
Sanys hat geschrieben:Klick auf Aktualisieren liest nur die extrahierten Makros nochmal
Falsch, Aktualisieren liest nicht die Makros, sondern die SPG neu ein, und baut dann den Objektbaum und die internen Objekt- und Variablenlisten neu auf.
Sanys hat geschrieben:"SPG-Reimport" finde ich etwas unglücklich, bedeutet doch eher, die SPG nochmals zu importieren (also in die SPG-Tools)
Da hast Du recht, ist historisch entstanden als es noch keine Oberfläche gab. Gemeint war hier immer aus Sicht der SPG...

Hier noch mal zur besseren Verständlichkeit: SPG_Tools arbeitet immer mit (und aus der Sicht) der SPG!
Alles was dargestellt wird (ausser die Textvorschau der extrahierten Makros und Ansichten) ist IMMER der Inhalt der SPG.
- "Extract" ist nur ein Werkzeug um aus der SPG heraus die Makros herauszulösen.
- Ebenso der "Reimport", dieser holt (nur) die eventuell veränderten Makro-Dateien wieder in die SPG zurück.
- Bei Veränderungen der SPG, sei es durch Homeputer oder durch den Reimport, sollte man im Anschluss "Aktualisieren", damit SPG_Tools die SPG neu einliest.
Sanys hat geschrieben:Variablen kann ich SPG-Tools im jeweiligen Makro anlegen?
Ja.
Sanys hat geschrieben:neue Objekte anlegen: nur in Studio??
Ja. Bisher schon. Da werden so viele internen Zähler und Variablen gesetzt, dass es nur so Sinn macht. Man könnte höchstens zukünftig Homeputer fernsteuern, um diese Aufgaben zu übernehmen...
Sanys hat geschrieben:neue Ansichten definieren: auch nur in Studio??
Nein, wenn Du eine neue Datei mit richtigem Namen und richtigen Kopfzeilen anlegst, entsteht beim ReImport eine neue Ansicht.
Sanys hat geschrieben:Was passiert, wenn ich Objekte lösche, neue erstelle etc. mit meiner Struktur? bleibt das erhalten? gelöschte fliegen raus, neue werden unsortiert angezeigt??
Schau Dir mal die .ORD-Datei an. SPG_Tools sucht darin beim Aufbau des Objektbaumes nach dem Pfad des Objektes, wird es fündig, kann das Objekt entsprechend positioniert werden. Wird kein Eintrag gefunden, dann erscheint das Objekt in der Root (unterhalb des Knotens "Objekte"). Überzählige Einträge in der .ORD-Datei werden ignoriert und fliegen beim nächsten Abspeichern der Sortierung raus.

Ich hoffe, das befriedigt Deinen Wissensdurst erst mal. :wink:

Gruss
Thomas

Benutzeravatar
Sanys
Beiträge: 270
Registriert: 31.01.2007, 12:29
Wohnort: Wetterau

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.7.b)

Beitrag von Sanys » 13.04.2010, 17:55

Hi Thomas
tsa hat geschrieben: Sanys hat geschrieben:Klick auf Aktualisieren liest nur die extrahierten Makros nochmal

Falsch, Aktualisieren liest nicht die Makros, sondern die SPG neu ein, und baut dann den Objektbaum und die internen Objekt- und Variablenlisten neu auf.
Dann muss ich also, sollte ich von Studio aus etwas geändert haben, am Besten In Studio speichern, dann in den SPG-Tools SPG-Extract und dann aktualisieren, damit in den SPG-Tools sowohl Anzeige als auch Makro-Texte den gleichen Stand haben, ja?

Irgendwo habe ich gelesen, dass nur neuere Makros extrahiert werden. Dann kann ich ja in Studio sagen wir mal an einem Makro etwas ändern, in SPG-Tools an einem anderen über den Editor, und nach dem SPG-Extract habe ich jeweils die geänderten (weil neueren) Versionen?

Ja, sind ziemlich viele Fragen, aber die meisten Dinge sind einfach und zuverlässig, wenn man es :lol: richtig macht :lol: . Deshalb will ich gerne vorher wissen, wie es geht, bevor ich mein Projekt "zerkonfiguriert" :oops: habe.


Viele Grüße


Sanys
FHZ 1350PC Prof. mit HomeputerStudio 100224 + Direktsendebefehle à la tsa (v 8.0)
WIN XP Pro SP3 (neuester Stand) + buempi's Minibrowser + etliche fs20+HMS+FHT Komponenten + nie genug Zeit, das alles fertig zu bekommen ;-)

tsa
Beiträge: 725
Registriert: 03.01.2008, 17:42
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.8)

Beitrag von tsa » 14.04.2010, 05:31

Sanys hat geschrieben:Dann muss ich also, sollte ich von Studio aus etwas geändert haben, am Besten In Studio speichern, dann in den SPG-Tools SPG-Extract und dann aktualisieren, damit in den SPG-Tools sowohl Anzeige als auch Makro-Texte den gleichen Stand haben, ja?
Genau, und dabei ist sogar egal, ob Du erst extrahierst und danach aktualisierts, oder umgekehrt, denn sowohl "Extract" als auch "Reimport" benutzen immer die SPG direkt von der Festplatte...
(Nur beim "Reimport" macht es natürlich Sinn, die Aktualisierung hinterher zu machen. :lol:)
tsa hat geschrieben:Irgendwo habe ich gelesen, dass nur neuere Makros extrahiert werden. Dann kann ich ja in Studio sagen wir mal an einem Makro etwas ändern, in SPG-Tools an einem anderen über den Editor, und nach dem SPG-Extract habe ich jeweils die geänderten (weil neueren) Versionen?
Nö, das geht (leider) noch nicht!!! Ich habe im Moment noch keine Unterscheidungsmöglichkeit, auf welcher Seite (SPG oder Makro-Textdatei) etwas geändert wurde. Ich kann nur unterscheiden, dass etwas anders ist! Aber zum Glück gibt's ja die Bakup-Dateien. :oops:

Folgendermassen funktioniert das Schreiben der Dateien:
a) Extrahieren: jedes Makro wird vollständig im Speicher erzeugt, dann wird mit der eventuell vorhandenen Textdatei ein Volltext-Vergleich getätigt. Gibt es da Unterschiede, wird ein *.bak angelegt und neu geschrieben.

b) Reimport: Alle existierenden Makro-Textdateien werden komplett eingelesen und (im Speicher) in die SPG überführt. Unterscheidet sich die SPG im Speicher nun von der "real existierenden" :wink: Ziel-Datei, erfolgt die "Bakup-Prozedur" und die SPG wird neu geschrieben.

Noch etwas (bevor Du fragst :P): Die userDefineLang.xml im SPG_Tools-Verzeichnis wird nur neu erzeugt, wenn sie nicht dort vorhanden ist. Beim Aufruf eines Editors wird ausgehend von dieser "Musterdatei" eine Kopie im Notpad++ - Verzeichnis abgelegt, die allerdings um den variablen Anteil des ganz persönlichen Homeputer-Projektes ergänzt ist. Diese Kopie hat allerdings nur so lange Bestand, bis der Startvorgang des Editors abgeschlossen ist, danach wird die vorher im Notpad++ - Verzeichnis existierende Original-Datei restauriert.
Das bedeutet: Du kannst auch Deine anderen Sprach-Definitionen in der Musterdatei mit unterbringen. Achte allerdings darauf, dass die Homeputer-Definition (jetzt "*.txh") als erste GANZ OBEN steht!!! Meine XML-Verarbeitung hat nämlich nicht sehr viel Intelligenz abbekommen. :mrgreen:

Gruss
Thomas

PS: Hat nicht jemand Lust, diese Beschreibungen gleich mal in einer Art Handbuch zusammenzufassen?

Benutzeravatar
Sanys
Beiträge: 270
Registriert: 31.01.2007, 12:29
Wohnort: Wetterau

Re: Homeputer-Projekte verwalten - SPG_Tools (Version 1.8)

Beitrag von Sanys » 14.04.2010, 08:55

Guten Morgen Thomas,
tsa hat geschrieben:von tsa » 14.04.2010, 05:31
_______________________ ^^^^!!! :o

Respekt! Vermutlich hast Du die ganze Nacht programmiert, um heute ganz früh fertig zu sein :wink: :wink: :lol:

Spass beiseite: Super Arbeit! Habe es bei mir gleich neu eingerichtet, incl. notepad++ und der Anpassung der userDefineLang.xml, jetzt läuft es wunschgemäß!

Die Suche (erster Kurztest) ist auch gut gelöst, vor allem dass man nach mehreren Dingen Filtern kann! (siehste, ist doch viiieeel besser als bei mir :wink: )
tsa hat geschrieben:PS: Hat nicht jemand Lust, diese Beschreibungen gleich mal in einer Art Handbuch zusammenzufassen?
Die Lust hält sich zwar in Grenzen, da ich nicht wirklich gerne redaktionelle Arbeit mache, aber ich werde es mal angehen.
Vor einiger Zeit bin ich auf lexiCan3 gestossen , ein Tool, um "Wissensgebiete" anzulegen, so eine Art Wiki. Da habe ich mal mein Projekt ein wenig mit Text versehen. Aus lexican heraus kann man quasi auf Knopfdruck chm oder html-Hilfen erstellen. Das werde ich mal für die SPG-Tools versuchen. Ich schick Dir dann die chm per PN und Du kannst sie mit in den Thread packen. Aber erst mal muss ich sie schreiben....



Viele Grüße


Sanys
FHZ 1350PC Prof. mit HomeputerStudio 100224 + Direktsendebefehle à la tsa (v 8.0)
WIN XP Pro SP3 (neuester Stand) + buempi's Minibrowser + etliche fs20+HMS+FHT Komponenten + nie genug Zeit, das alles fertig zu bekommen ;-)

Antworten

Zurück zu „homeputer CL“