2017-09-22 6 views
1

Ich versuche, ein Beispiel dafür zu erstellen, wie das Zeilenzählungsresultat in einer Variablen im SSIS-Paket abgefangen und dann einfach mit einer einfachen Skriptaufgabe ausgegeben wird.SSIS-Fehler beim Drucken eines Variablenwerts in einem C# -Skript

Also zunächst überhaupt, ich erstelle eine Variable als Int32, wo ich die Zeilenanzahl Ergebnismenge speichern werde und dann passiere ich nur durch die Anzahl den Wert in einer SSIS-Operation Zeilenanzahl.

enter image description here

Dann in meinem Script Aufgabe, gebe ich die Variable als Readonly.

enter image description here

Und schließlich gebe ich den Code in der public void Methode den aktuellen Variablenwert zu zeigen.

public void Main() 
     { 
      // TODO: Add your code here 
      string result = null; 
      result = (string)Dts.Variables["qty"].Value; 
      MessageBox.Show("The current value of the SSIS global variable 'TestVariable' is '" + result); 
      Dts.TaskResult = (int)ScriptResults.Success; 
     } 

Probleme

Im Bild unten Sie meine aktuellen Fehler in dem Show-up Betrieb sehen und ich weiß auch, dass mein aktueller Variablenwert ist 0. wie die Reihe scheint es zählt nicht den richtigen Wert bekommen.

enter image description here

Also Jungs, könnten Sie mir bitte eine Art Anleitung geben, um meine Anforderung an succeded. Vielen Dank

+1

Ich kann keine Bilder sehen, aber ich habe einen Vorschlag. Fügen Sie vor dem Starten der Skriptaufgabe einen Haltepunkt hinzu. Und schauen Sie sich den Wert der Menge in den Einheimischen an. – KeithL

Antwort

0

SSIS mag es normalerweise nicht, wenn Sie GUI-Operationen (wie das Anzeigen einer MessageBox) während der Verarbeitung ausführen. Es gibt Funktionen, um diese Informationen im Fortschrittsfenster anzuzeigen. Sehen Sie sich componentMetaData.FireInformation() an.

Verwandte Themen