SSIS-Pakete in PowerShell zusammenstellen

8

Ich sollte vorweg sagen, dass meine Erfahrung mit Skripten oder Programmierung in OOP-Sprachen begrenzt ist.

Ich arbeite an einer Methode zum programmatischen Erstellen und Ausführen von SSIS-Paketen mit PowerShell. Leider sind die meisten Ressourcen für PowerShell und SSIS zum Aufrufen von PS von SSIS, nicht umgekehrt.

Ich habe jedoch eine Reihe von Ressourcen für VB / C # zum Erstellen von SSIS-Paketen gefunden.

Beispielressource hier.

Es ist mir gelungen, den Großteil des Codes durch Aufruf der DTS / SSIS-Assemblys zu konvertieren, aber das TaskHost-Objekt wird jetzt nicht in ein Mainpipe konvertiert.

Beispielcode:

%Vor%

Alles funktioniert gut bis zur letzten Zeile, wenn ich den Fehler bekomme:

  

Kann nicht konvertieren   "System .__ ComObject" -Wert des Typs   "System .__ ComObject # {}" zu   Art   "Microsoft.SqlServer.Dts.Pipeline.Wrapper.MainPipeClass"

Jede Hilfe oder Ideen sind willkommen!

    
JNK 02.02.2011, 19:09
quelle

2 Antworten

3

Microsoft.SqlServer.DTSPipelineWrap verwendet häufig COM-Instanzen.

In diesem Forenbeitrag wurde die CreateWRapperOfType-Methode vorgeschlagen: Ссылка

Du könntest das versuchen:

%Vor%

Error out und produziert ein Objekt - ich bin mir nicht sicher welcher Art.

    
Chad Miller 04.02.2011, 03:52
quelle
1

Sie können die funktionierende .NET-Version, die Sie oben angegeben haben, immer einfach in eine exe kompilieren und zulassen, dass sie Parameter akzeptiert, um die SSIS-Pakete zu erstellen. Verwenden Sie anschließend Powershell, um die ausführbare Datei mit den erforderlichen Parametern aufzurufen.

    
Michael 02.02.2011 19:17
quelle