Vier D HomeArchivSeminareNachrichten - Twitter4D Expertise
Antworten auf Ihre Fragen •
Datenbank-Pflege •
4D Coaching •
OpenDDDD •
Termine •
4D Expert
V11/V12-Service • Konzepte •
Alternativen •
Meine Apps
Gebrauchtes Mac + iPhone: zu verkaufenFinden Geo-Themen + Projekte GoogleMap-Integration • GeoDDDD • Database Publishing • Database PhotographyVerschiedenes |
3. Mai 2010 Ich wollte schon immer eine automatisierte Ablage der verschiedenen Versionen meiner Datenbanken haben, also ein System zur Versionsverwaltung von Quelltext, CVS. In der 4D Werkstadt.nord wurde ich von Patrick Poetschke auf die richtige Idee gebracht: statt auf ein etabliertes System irgendwo aufzusetzen, mir ein eigenes in 4D zu schreiben. Die Kommunikation von der Projekt-Datenbank zur VCS-Datenbank läuft über SOAP und wird von Macros angestoßen. Patrick führte seines vor, nutzbar für ihn aber keine fertige Komponente.
Nur 4D-Mittel (Macros und SOAP) – kein Gedöns mit WebArea-JavaScript oder gar in eins der Standard-CVS sichern. Haben wollenDas wird noch dauern, Zeit haben, nächste Woche gar nicht, nächsten Monat eigentlich auch nicht, …. Das Macro
ist kurz. Es ruft die 4D Methode VCS_Mngr auf und übergibt den Auftrag "Sichern" und den Namen der aufrufenen Methode. Hier das Macro in seiner ganzen Schönheit: Die Methode VCS_Mngrholt sich über Die SOAP-Methodehabe ich mir vom WebService-Wizzard generieren lassen und leicht ausgebaut: Mischung V2004 und V11Eigene Projekte laufen unter V2004. Hier muß ich das Sichern-Makro manuell aufrufen. In meinen Kunden-DBs unter V11 wird das Macro bei jedem Sichern einer Methode aufgerufen. Das ist kommod.
Es gibt in 4D bzgl. Macros und Methoden dies und das, was nicht zu Ende oder zu kompliziert gedacht ist – die zurückgegebene Methode wird ans Ende gerollt und alle Einrückungen ausgeklappt. Das ist lästig. Um Beides habe ich drum herum gearbeitet, missen will ich das System nicht mehr. Mein VCS-Managerläuft seit Mitte Februar im Hintergrund, ausgeblendet, unauffällig und zuverlässig. Wenn ich an eine Methode ran muß, sieht das so aus: Im Popup-Menü wähle ich die Projektdatenbank - hier Equident, in der Liste darunter die Methode - hier Dicom_Tool, und in der Liste daneben sehen ich die verschiedenen Varianten und nur einen Doppelklick weg die Methode selbst. Will ich eine ältere Version wieder haben, geht es über den Button TextCopy in die Zwischenablage und in der Zieldatenbank, die nicht mit der Ursprungsdatenbank identisch sein muß, wird der Methodentext in die Zielmethode eingesetzt. Noch mehr wegnehmen geht nicht, hinzufügen könnte ich noch manches. Sie möchten den Sourcecode haben? Kein Problem! Überweisen Sie, was es Ihnen wert ist auf mein PayPal-Konto: info@mettre.de. Was ist denn üblich? |