Knowledgebase
31 Mrz
Wie speichert man hierarchische Daten (Bäume, Graphen…) effizient in einer relationalen Datenbank. Die Grundgedanken dazu müssen ersteinmal bestimmen, in welche Richtung hauptsächlich optimiert werden soll:
Um alle Optimierungen gleichzeitig effizient zu bekommen, ist mir nichts Passendes untergekommen. Wohl läßt sich mit Stored Procedures und einigen Kniffen einiges erreichen, denoch bleiben bei jeder Implementierung Wünsche offen:
Tree
DAG (Directed Acyclic Graph):
Nested Sets
Diese kleine Sammlung stammt noch aus Mitte 2008, hatte sich im Entwurfsordner versteckt…
5 Mrz
Ein Fehlermeldung in (Excel-) VBA, der mich seit einiger Zeit umtreibt:
“Die Objektbibliothek ist ungültig oder enthält Verweise Objektdefenitionen, die nicht gefunden werden konnten”
Der Compiler bleibt bereits in der Zeile “Option Explicit” eines beliebigen Moduls hängen. Die Verweise auf externe Module sind die Selben (klar, es wird auch immer die gleiche Excel-Datei verwendet), es sind auch alle in der gleichen Version installiert und verfügbar.
Das Problem ist, dass es nicht auf jedem Rechner und jeder Installation gleich ist. Auf den PCs wird Windows XP und Office XP mit einer selbsterstellten Unattended Installation aufgespielt, alle Rechner hängen am gleichen WSUS, so dass es theoretisch keine Unterschiede geben dürfte. Tut es aber.
Zufällig bin ich in den letzten Tagen auf die Problematik mit einem Update zum Killbit (KB960715) gestoßen, das Microsoft vollautomatisch verteilt. Dies verhindert eine korrekte Ausführung der OCX, meist blockiert das MSFlexGrid. Aber der Clou an der Geschichte ist: Das wird vom Internet-Explorer kontrolliert! Da muss man erstmal drauf kommen.
Im Endeffekt geht es nun darum, in der Registry unter
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\
all denjenigen OCXs den Wert von “Compatibility Flags” auf 0 (DWORD) zu setzen. Allerdings muss man ersteinmal wissen, welche Controls der VBA-Code verwendet. Hier hilft das kleine Tool ACM (AcctiveX Compatibility Manager), der alle AciveX-Controls in diesem Teil der Registry anzeigt. Nun hilft nur manuelles suchen, welche Controls Verwendung finden, bei diesen muss der Eintrag abgeändert werden.Am Besten raussuchen (ein schneller Weg ist RegmonNt/ProcessMonitor von Sysinternals), in einer .REG-Datei exportieren und diese dann verteilen und überall importieren.
siehe auch:
2 Nov
Anscheinend tuen sich hier neue Gräben zwischen den Anhängern der Versionsverwaltungssysteme auf. GIT ist momentan der große Hype, viele große OpenSource-Projekte (Liste) stellen darauf um. Es muss also zu den bisherigen Systemen Vorteile haben. Scott Chagon hat eine kleinen Vergleich zu GIT dokumentiert.
siehe Scott Chagon, CVS, GIT (GIT f. Windows)
30 Sep
Wer mit SOAP arbeitet, wird sich schon manches mal über sein bisheriges oder nicht vorhandenes Tool zum Testen der SOAP-Requests geärgert haben. Tools wie Altovas XML-Spy sind sehr teuer und auch nicht immer des Users Freund…
Hier springt SOAPui in die Bresche. Die in der Grundversion kostenlose Software verfügt über alle nötigen Funktionen, um sinnvoll mit einem Dienst sprechen, die Einstellungen speichern und die Auswertungen verfolgen zu können. Verfügbar für Windows, Mac, Linux.
siehe soapui.org