# Monday, May 15, 2006

Das papierlose Büro hätte es ja schon vor langer Zeit geben sollen. Noch ist es nicht soweit. Aber dennoch ist sehr viel Kommunikation heute elektronisch. Bei uns ist der Exchange Server zusammen mit Outlook als Client die zentrale Plattform.

Jeder Benutzer hat seinen eigenen Posteingang. Eingehende Faxe werden automatisch in einem öffentlichen Ordner abgelegt. Dann gibt es weitere öffentliche Ordner für generische E-Mails, die an unsere öffentlichen Adressen gesendet werden.

Der Posteingang sollte aber nicht zur Sammelstelle bearbeiteter und unbearbeiteter Dokumente verkommen. Mittlerweile ist die Suche nach E-Mails sehr einfach und effizient geworden. Diverse Desktop-Suchmaschinen machen das möglich. Auch Outlook selbst erlaubt eine Suche. Für eingehende geschäftliche Dokumente sollte es dazu aber nach meiner Meinung nicht kommen. Das gehört klassisch sortiert und abgelegt. Spätestens bei der Archivierung dieser Daten geht es eigentlich nicht mehr anders.

Somit müssen eingehende Dokumente im Laufe der Bearbeitung verschoben werden. Der nahe liegende Weg, per Drag & Drop die Dokumente in der Ordnerliste zu verschieben, wird bei vielen verschachtelten Ebenen zur nervigen Übung. Wer zügig arbeiten will, ist mit der Tastatur immer schneller als mit der Maus.

So entstand die Anforderung, per Tastaturabkürzung Objekte innerhalb von Outlook verschieben zu können. Dabei soll jedem Zielordner eine Tastaturabkürzung zugeordnet werden können.

In einem der nächsten Einträge gibt es mehr zur Realisierung zu lesen. Soviel vorab: Mit Visual Studio 2005 (VSTO) habe ich ein Outlook-Add-In gebastelt. Dieses Add-In ist seit einigen Tagen im Einsatz und funktioniert sehr gut. Ein paar Eindrücke von dieser Technologie werde ich noch dokumentieren und das Ergebnis als kostenlosen Download zur Verfügung stellen.

OutlookMoveTo für Outlook 2007

.NET | Admin | Tools
Monday, May 15, 2006 5:58:23 PM (W. Europe Daylight Time, UTC+02:00)  #
  Disclaimer  |  Comments [0]  | 
# Wednesday, March 22, 2006
SVG ist die Abkürzung von Scalable Vector Graphics. Dabei handelt es sich um ein W3C Spezifikation die in XML interaktive und animierbare Vektorgraphiken definiert. Innerhalb einer SVG Graphik kann mit Javascript richtig schön programmiert werden.
Wir haben SVG verwendet, um in unserem SQLCat Bilder stufenlos zu vergrößern. Es erscheint ein Übersichtsbild mit dem der sichtbare Ausschnitt verschoben werden kann. Aktive Flächen werden eingezeichnet. Tooltips werden dargestellt. Der Klick auf eine aktive Fläche führt zu einer Navigation im Katalog.



Als wir uns für dieses Format entschieden hatten, war der beste SVG Viewer von Adobe (ASV). Aktuell war die Version 3 und bei einer damaligen Acrobat Reader Installation wurde zusätzlich dieser Adobe SVG Viewer installiert. Der dominierende Browser war der Internet Explorer und ASV das dazu passende Plugin.

Natürlich lief nicht alles rund. Um einige Unzulänglichkeiten des Viewers mussten wir herumbasteln. Manches funktioniert immer noch nicht wie wir uns das dachten. Wie immer bei der Software Entwicklung hofft man natürlich auch auf das nächste Update. Typischerweise werden dann Bugs beseitigt und neue Features implementiert.

ASV Version 3 erschien 11/2001, zumindest sagt das das Adobe Archiv. Es gibt dann noch die Versionen 3.01, 3.02 und 3.03. Letztere ist immer noch die aktuelle Version. Immerhin von 05/2005. Die neuen Versionen sind aber offensichtlich nur Sicherheitsupdates. Von neuen Funktionen oder beseitigten funktionellen Fehlern keine Spur.

Für die ganz mutigen Entwickler gibt es von Adobe noch eine Preview auf die kommende Technologie. Die Technologie von morgen! Spektakulär, die Preview von Adobe Viewer Version 6! Natürlich haben wir uns auch daran versucht. Tatsächlich ist diese Version deutlich schneller und insgesamt besser als die Version 3. Aber das kann man keinem Kunden empfehlen. Ist ja eine Pre-Release, also abwarten und testen.

Wer jetzt genau hingesehen hat, dem ist auf der Download Seite für ASV 6 aufgefallen, dass wir jetzt seit fast 3 Jahren warten. 07/2003 steht da als Release Date. Zappelt es noch?

Inzwischen Unterstützt Firefox 1.5 SVG einfach so, natürlich funktioniert alles anders als beim Adobe Viewer. Aber wen man Google als Indikator nimmt, dann stellt man fest, dass die Kombination IE + ASV dort nicht mehr interessant ist. Deren Web Authoring Statistics werden damit nicht dargestellt: "We recommend Firefox 1.5".

Stirb langsam?  Eher mausetot!
Wednesday, March 22, 2006 6:09:00 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [1]  | 
# Tuesday, March 21, 2006
Bisher hatte ich noch nicht mit den Vorabversionen vom IE 7 gespielt. Heute meldet Golem, dass die Rendering Engine keine wesentlichen Veränderungen mehr erfahren soll (Aktualisierte Vorabversion des Internet Explorer 7). Also die neueste Beta 2 installiert und mal auf die eigenen Webauftritte gestürmt.

Hat alles direkt wie erwartet funktioniert. Auch unsere dynamischen SQLCat Seiten werden problemlos dargestellt.
Wenn alles in der normalen Ansicht passt, dann mal die Font-Größe verändern. Am schnellsten geht das ja, indem man bei gedrückter Strg-Taste das Mausrad dreht.
Hui! Was passiert da? Die komplette Webseite inklusive der Bilder wird skaliert. Ein echter Zoom quasi. Nur bei einer unserer Seiten mit vielen Frames (ja macht man nicht mehr, ist aber jetzt so ;) ist das Verhältnis der skalierten Framegrößen zueinander nicht optimal. Das kann man aber sicher noch besser codieren.

Insgesamt gefällt mir das sehr gut. Auch ansonsten fühlt sich der neue Internet Explorer deutlich moderner als sein Vorgänger an.

Das komplette Zoomen einer Seite führt leider beim eingebauten RSS Reader zu unerwünschten Effekten. Zumindest bei kleinen Fenstern wird die eingeblendete Navigation zu groß:

100% Zoom:



150% Zoom:



Details, Details. Natürlich. Alles wird gut. Zwei konkurrierende Browser sind besser, als ein stagnierender Markführer.
Tuesday, March 21, 2006 2:57:23 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Thursday, March 16, 2006
Wir vertreiben ein Tool zur Datensicherung: CPTec-Backup. Dieses Programm verwenden wir natürlich auch selbst. Und das ist gut so. Weil wir so leichter erkennen, an welchen Stellen wir nachbessern müssen.

Ein wichtiger Aspekt war für uns, dass wir auf externe USB Festplatten sichern können. Die kann man einfach abstecken und an sicheren Ort bringen. Natürlich verwendet man rotierende Sätze und die nächste Sicherung schreibt auf eine andere Platte. Dabei muss man darauf achten, dass man nicht von einem festen Laufwerksbuchstaben ausgehen kann. Also kann man CPTec-Backup so konfigurieren, dass es die Festplatte an den ersten Zeichen des Datenträgernamens (Volume Name) erkennt. Das funktioniert auch sehr gut. Alle externen Platten für einen Sicherungs-Job beginnen mit dem gleichen Präfix. Problem gelöst.

Im Laufe der Zeit ist uns aber noch eine andere Schwäche an dem Konzept aufgefallen: Externe Platte an einem sicheren Ort sind gut für die bereits gesicherten "alten" Daten. Aber ganz schlecht für neue Daten die zu einem späteren Zeitpunkt gesichert werden sollen. Dazu müssen diese USB-Platten nämlich ihren Weg zurück in die Firma finden. Das konnten wir nicht immer sicherstellen ;).
CPTec-Backup hatte erkannt, dass nicht alle Ziel-Laufwerke für die anstehende Sicherung vorhanden sind, dies gemeldet und die Sicherung abgebrochen. Schade.

Zusätzlich zur Sicherung auf die externe Festplatte sichern wir auch auf eine interne Platte. Jetzt gibt es ein neues Feature in CPTec-Backup, mit dem Ziele als optional markiert werden können. Fehlende optionale Ziele werden beim Start des Backups unter anderem per E-Mail gemeldet und unmittelbar vor dem ersten Zugriff erneut überprüft. Falls die Festplatte dann immer noch fehlt, wird das protokolliert und der Backup fortgesetzt.

Thursday, March 16, 2006 6:17:53 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Thursday, March 09, 2006
Eine ganz aktuelle Demo Version unserer elektronischen Ersatzteilkatalog Software SPCat ist erschienen. Es gibt viele Verbesserungen im Detail, aber der Umstieg auf Visual Foxpro 9 hat die deutlichste Veränderung ermöglicht.
Zur Darstellung von Graphiken mit Links wurde bisher eine selbstentwickelte Visual Basic 6 Komponente verwendet. Das hat sehr gut funktioniert, brachte aber ein paar Einschränkungen mit sich. Unter anderem konnten keine PNG Graphiken dargestellt werden und bei der Installation musste die VB6 Laufzeitumgebung eingerichtet und unser ActiveX-Control (OCX) registriert werden.
Jetzt zeichnen wir die Graphiken direkt mit VFP9 und GDI+. Damit ist unser Katalog nicht mehr auf Visual Basic angewiesen. Das verbessert die Lauffähigkeit von CD und vereinfacht die Installation. Auch PNG Graphiken können wir jetzt direkt darstellen.

Die Demo ist als selbststartende CD ausgelegt. Dazu gibt es ein ISO-Image oder den Inhalt der CD als Zip Archiv. Die schnellste Möglichkeit, den Katalog zu testen ist das Zip Archiv zu entpacken und im "cd" Verzeichnis das "intro.exe" zu starten. In dem dann erscheinenden Dialog einfach "Katalog von CD aus starten" wählen.



Wer sich mehr für die technischen Details interessiert, den verweise ich auf einen früheren Blogeintrag dazu: VFP 9: GDI+ und normale Foxpro Controls auf einer Form

Thursday, March 09, 2006 12:15:26 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Wednesday, March 01, 2006
Ich möchte nicht auf die genauen Hintergründe des Patent-Streits zwischen Eolas und Microsoft eingehen. Das kann man in dem Artikel Patch für Internet Explorer wegen Eolas-Patent auf Golem und an anderen Stellen nachlesen.
Im Wesentlichen verletzt man das Eolas Patent, wenn interaktive Objekte in einer Webseite dargestellt werden. Microsoft versucht nun mit dem Patch KB912945  den IE so zu verändern, dass diese Objekte nicht interaktiv starten, sondern aktiviert werden müssen. In den meisten Fällen bedeutet aktivieren für den Anwender hier "hineinklicken".

Wir von CPTec haben mit SQLCat eine Internet Anwendung entwickelt, um Elektronische Ersatzteilkataloge im Browser darstellen zu können. Die hierarchische Struktur der Ersatzteile wird mit einem Java Applet visualisiert. Dieses Java Applet stellt die Struktur in einem Treeview dar.  Die Inhalte werden beim Navigieren dynamisch vom Server geladen. Das funktioniert sehr gut und schnell.
Nach der Installation des neuen Patches von Microsoft funktioniert dieses Treeview immer noch. Unter anderem navigiert das Treeview mit, wenn man einen Treffer einer Suchabfrage auswählt. Es reagiert lediglich auf Benutzereingaben, wie z.B: Mausbewegungen nicht:



Erst nach einem Click in das Control wird dieses aktiv und zeigt unter anderem im Statusbar das Ersatzteil unter dem Mauszeiger an:



Unser Treeview ist von dieser Änderung betroffen, weil es über ein "APPLET" Befehl in die HTML Seite eingebunden ist. Der Internet Explorer könnte das Eolas Patent verletzen, wenn er dieses interaktive Objekt direkt in die Seite einbindet. Also wird es nicht interaktiv eingebunden, sondern einfach deaktiviert. Die erste Benutzereingabe erweckt dann das Objekt aus seine Dornröschenschlaf und alles ist gut.

Jetzt gibt es aber noch eine andere Möglichkeit, dieses Patent zu umgehen. Microsoft dokumentiert das in Activating ActiveX Controls. Es werden einige Wege beschrieben. Aber es läuft darauf hinaus, durch Javascript die Objekte nachträglich in die Seite einzubauen. Der Benutzer sollte davon nichts merken, aber das Patent von Eolas deckt diesen Fall wohl nicht ab. Alles funktioniert wie früher, jeder Webentwickler durfte etwas Zeit investieren, Microsoft hat viele Anwälte und Entwickler beschäftigt und Eolas geht hoffentlich leer aus.

Ich wundere mich immer wieder, wieso derart allgemein gehaltene Patente erteilt werden und deren Gültigkeit vor Gericht bestätigt wird. Die Einen basteln einen realen C++ Code, der bunte, interaktive Seiten aus kleinen statischen Textdateien macht und die Anderen lassen sich ein abstraktes, allgemeines Prinzip schützen. Deswegen bereitet es mir eine diebische Freude, zu sehen, wie geschickt sich Microsoft hier aus dieser kniffeligen Patent-Falle befreit hat.

Jetzt geht es wieder zurück an den HTML Code und brav den MS Workaround einbauen...

Wednesday, March 01, 2006 2:26:41 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Tuesday, February 14, 2006
Graphische Benutzeroberflächen und die dazugehörige Interaktion mit Maus und Tastatur sind uns allen bekannt. Sie sind verschieden hübsch und jeweils leicht anders zu bedienen. Aber grundsätzlich ist es immer das Gleiche: Man schiebt einen Mauszeiger auf dem Bildschirm herum und kann mit den dargestellt Objekten interagieren. Für kompliziertere Kommandos oder Texte gibt es die Tastatur.
Die Maus Bewegung kann auch durch einen Touchscreen ersetzt werden. Es bleibt aber bei einem Punkt der aktiv ist.

An diese einfachen Zusammenhänge haben wir uns gewöhnt. Andere Mensch-Computer Interaktionen sind dem Science Fiction Genre vorbehalten. In der momentanen Evolution der Benutzeroberflächen freuen wir uns auf bunter, schneller und transparenter.

Nachdem ich jetzt in einem Video gesehen habe, wie eine Interaktion mit dem Computer aussehen kann, ist mir die Lust auf Windows Forms und Webseiten mit Ajax vergangen. Was will ich denn mit Windows Vista? Das System von Jeff Hahn ist die Zukunft: Multi-Touch Interaction Research



Per Rückprojektion wird die Benutzeroberfläche auf einer Acrylplatte dargestellt. Auf dieser durchsichtigen Acrylplatte kann man mit dem Dargestellten interagieren. Und zwar mit mehreren Fingern gleichzeitig und drucksensitiv. Die Position der Finger wird durch Lichtreflexion bestimmt.

Das erinnert an das System aus dem Film Minority Report. Nur noch spannender. Will ich haben :)

Tuesday, February 14, 2006 7:20:05 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Friday, January 27, 2006
Günter Ratz hat sich mit Google Local - CPTec Lageplan einmal anders viel Mühe gegeben, CPTec in München mit Google Maps zu lokalisieren. Sehr schöne Bilder, wirklich.
Nur finde ich, ein wesentlicher Vorteil dieses Dienstes ist zu kurz gekommen. Man kann zu einem gewünschte Kartenausschnitt auch einfach verlinken.

Also, hier ist der Link zum anklicken: CPTec in München

Ein anderer sehr schöner Fleck in München, der ausreichend weit weg von der Arbeit ist :).

Edit: Ups. Günter hatte schon einen Link :). Aber ganz unten. Urgs, war ich wohl zu scroll-faul.

Friday, January 27, 2006 5:34:35 PM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Friday, January 20, 2006
Wir haben schon seit einiger  Zeit unsere interne Datensicherung umgestellt. Die Preise für Festplatten wurden immer billiger. Die Datenmengen sind angewachsen. Nur die Bänder blieben relativ teuer. Also hatten wir uns entschlossen auf Festplatten zu sichern. Unsere ausführliche Motivation kann man unter Backup-Software für Festplatten-Medien nachlesen.

Natürlich muss man jedes Backup-Konzept regelmäßig überprüfen. Kann ich die Daten zurücksichern? Wurde alles gespeichert? Sind die Medien noch in Ordnung?
Auch bei unseren Backups auf interne IDE- und externe USB-Festplatten schauen wir nach dem Rechten. Gerade war ich mal wieder auf dem Server unterwegs. Dabei hatte ich ein seltsam wohliges Gefühl. Man kann das sicher auch mit vielen Argumenten begründen, aber es ist einfach nur angenehm die gesicherten Daten als Verzeichnisse vor sich zu haben:



In jedem dieser Verzeichnisse stecken die seit der letzten Sicherung geänderten Daten. Also ein inkrementeller Backup. Da kann man einfach ein Verzeichnis öffnen und Dateien kopieren. Man muss kein Band in ein Bandlaufwerk legen. Kein Warten, kein Bangen. Der Server kann kaputt gehen, egal, baue ich die HD ein einen anderen Rechner. Eine Platte kann kaputt gehen, die Daten liegen auf 2 Festplatten. Schön!




Das gleiche gilt für die wöchentliche Sicherung. Alles ist im direkten Zugriff vorhanden. Auch schön.

Zusätzlich sind die Daten noch auf externen USB-Festplatten, die an einem anderen Standort gelagert werden. Sehr schön.

Wir hatten zwar nie ein ernsthaftes Problem mit unseren früheren Bandsicherungen und auch Festplatten gehen kaputt. Aber mit auf 2 Festplatten redundant gespeicherten Sicherungen fühle ich mich wohler.
Friday, January 20, 2006 10:56:53 AM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  | 
# Wednesday, January 18, 2006
Eigentlich gehört das ja nicht hierher. Aber das ist bestimmt der beste Blondinenwitz überhaupt. Der Witz ist zwar auf englisch, aber ganz leicht zu übersetzen!

The best blonde joke ever

Erzählt von Scobleizer - Microsoft Geek Blogger

Edit: Der Link von Scoble geht mit dem Firefox nicht. Hier der Link von Greg Hughes

Wednesday, January 18, 2006 11:38:46 AM (W. Europe Standard Time, UTC+01:00)  #
  Disclaimer  |  Comments [0]  |