SSIS 2005 Suche-Task – Wo ist meine Spalte?

Wenn kleine Buchstaben groß sein sollten

Es gibt Bugs, die sind, wenn man sie denn kennt und zu umschiffen weiß, eher amüsant als ärgerlich. Zumeist sind sie längst bekannt und zaubern ein Lächeln ins Gesicht des Eingeweihten, wenn er diesem beim Entwickeln einmal mehr begegnet. Und doch kann es passieren, dass sich ein solcher Bug eben doch nicht überall herumgesprochen hat, was dann oftmals zu Unmut und Verwirrung führt.

Ein Klassiker dieser Art ist der Suche-Task der Integration Services 2005 in deutscher Sprachversion. Dieser birgt nämlich einen gemeinen Fallstrick, der oft zu wirren ETL-Paketen führt, wenn man auch nur einen einzigen Mausklick vergisst. Der Sachverhalt ist folgender: Nach erfolgter Definition der Spalten-Zuordnungen für die Übereinstimmungsbedingungen und Auswahl der entsprechenden Spalten in der Verweistabelle vergisst der Task anscheinend seine Konfiguration der Spalten, nachdem man die Einstellungen mit OK bestätigt und sich der Dialog schließt. Konkret könnte das Ganze ungefähr so ausschauen:
clip_image002

Nach dem Bestätigen verschwindet aber die eben neu hinzugefügte Spalten wie von Geisterhand wieder:

clip_image004

Auch nach erneutem Öffnen des Konfigurationsdialogs hat es den Anschein, als wäre hier niemals etwas eingestellt worden. Die eingangs erwähnten wirren ETL-Pakete entstehen nun durch den Workaround, dass man eine oder mehrere Spalten vorher angelegt, etwas durch den Abgeleitete Spalte-Task, und in der Suche diese mit dem nachgeschlagenen Wert überschreibt. Dies funktioniert nämlich anstandslos.

Dabei gibt es einen viel effektiveren Weg, an seine Nachschlage-Spalten zu kommen: ein Mausklick an der richtigen Stelle im Konfigurationsdialog. Der entscheidende Punkt ist nämlich die Dropdown-Box „Suchvorgang”. Der aufmerksame Entwickler sieht den Unterschied: Hier gibt es die Option „Als neue Spalte hinzufügen” mit einem großen A an erster Stelle. Die Standard-Auswahl beginnt mit einem kleinen A:

clip_image006

Und dies ist auch schon des Rätsels Lösung: wenn man sich nun die einzig auswählbare Option entscheidet, klappt es mit der neuen Spalte ohne Probleme. Offensichtlich haben die Integration Services hier Probleme mit den angebotenen Optionen dieses Dialogs und der erlaubten Auswahl. Ein Blick auf die Metadaten beweist: die neue Spalte ist tatsächlich vorhanden:

clip_image008

Wohlgemerkt betrifft dies unseres Wissens nur SSIS 2005 in deutscher Sprache und könnte durch den ein oder anderen Patch in einigen Versionen auch behoben worden sein. Nichtsdestotrotz begegnen wir immernoch regelmäßig der kritischen Version und auch unter den Entwicklern hat sich das vorgestellte vorgehen noch nicht bis in die hintersten Ecken herumgesprochen.

Schreibe einen Kommentar