none
ScriptKomponente Schnittstellen richtig einbinden RRS feed

  • Frage

  • Hallo,
    kann jemand helfen?
    Ich suche Beispiel-Code! (mögl. VisualBasic)
    SQL Server 2012 (Integration Services, Paketerstellung)
    Wie ist in einer Scriptkomponente die Schnittstelle
    z.B. IDTSComponentMetaData100 korrekt zu Deklarieren
    (Dim instance As IDTSComponentMetaData100)???
    Und
    Wie erfolgt dann die Zuweisung (eines Wertes) für eine Datenflusskomponente, welche nicht direkt mit
    der Scriptkomponente  verbunden ist
    (?Instance= "Package\Datenfluss\Ziel"…. ComponentMetaData)

    Ziel soll sein mithilfe Script (VisualBasic) auf Eigenschaften und Methoden von Datenflusskomponenten zuzgreifen.

    Danke für Antwort!

    Donnerstag, 18. September 2014 07:52

Alle Antworten

  • Hallo,

    Schnittstellen sind ebenfalls Typen und Variablen werden genauso deklariert wie die von Klassen oder Strukturen. Nur zuweisen musst Du die Instanz einer Klasse (oder Struktur) die die Schnittstelle implementiert.

    Schau Dir das Beispiel an zu Programmgesteuertes Hinzufügen von Datenflusskomponenten da wird die Schnittstelle eingesetzt.

    Gruß Elmar

    Donnerstag, 18. September 2014 08:10
    Beantworter
  • wenn ich das Bsp. richtig verstehe wird eine neue Komponente entworfen
    ich benötige aber den Zugriff auf eine vorhandene Komponente

    Dim component1 As IDTSComponentMetaData100 = dataFlowTask.ComponentMetaDataCollection.New() component1.Name = "DataReader Source"

    Dim component1 As IDTSComponentMetaData100
    component1 = ????

    Donnerstag, 18. September 2014 08:38
  • Hallo,

    ich habe auf das Beispiel verwiesen, weil dort der Einsatz der Schnittstelle gezeigt wird.

    Der Zugriff findet sich in einem Artikel oberhalb: Programmgesteuertes Auffinden von Datenflusskomponenten

    Du wirst Dich schon durch das Objekt Modell von SSIS durcharbeiten müssen... und vorher sollte man schon das eine oder andere Paket entworfen haben, um sich darin zurecht zu finden.

    Gruß Elmar

    Donnerstag, 18. September 2014 09:33
    Beantworter
  • Hallo,
    erstmal Danke für die Antwort!
    Ein Paketentwurf ist vorhanden. Die Frage habe ich im Forum gestellt da bei Microsoft nichts zu finden war. Auch sonst keine konkreten Anhaltspunkte wie ich vorgehen muss. Die einzige Möglichkeit: eine kostenplichtige Anfrage bei Microsoft (pauschal 299€ im voraus). Ich wollte die Scriptkomponente nutzen um beim DatenImport auf Eigenschaften der Spalten zuzgreifen.  Deshalb muss ich mich mit VB auseinandersetzen., ansonsten bin ich eher in SQL Server unterwegs.  Ist den in dem geschilderten Fall der Zugriff mit VB wirklich so kompliziert. dass ich das gesamte Modell von SSIS benötige?

    Donnerstag, 18. September 2014 10:36
  • Hallo,

    was genau willst Du eigentlich erreichen / machen? Vielleicht gibt es für die Lösung einen leichteren Weg als das, was Du gerade machen willst.


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Donnerstag, 18. September 2014 10:55
  • Hallo,
    ich möchte die Scriptkomponente nutzen um auf Eigenschaften z.B. der Komponente "Ziel_FD" zuzugreifen.
    ->z.B. Name, Beschreibung oder Datentyp der Auflistung Eingabespalten (oder Ausgabe) von "Ziel_FD"
    ->übergeben werden soll nach "Ziel_FD" beispielsweise ein Wert (ERRORColumn-integer- aus der Scriptkomponente hier=63) . Der Wert für  ID sollte dann mit "GetObjectByID(63).Name" den Zugriff auf die Eigenschaft "Spaltenname" ermöglichen.
    Ein Bild mit dem Datenflusstask kann ich hier nicht einfügen deshalb dann eben so

    ODBC-Quelle---Datenfluss>>>Dantenkonvertierung---Datenfluss>>>Ziel_FD
    --Fehler-Pfad>>>Skriptkomponente---Datenfluss>>>Ziel_Fehler_END

    

    • Bearbeitet Script001 Donnerstag, 18. September 2014 12:19
    Donnerstag, 18. September 2014 11:51