Frage
Ich brauche mit einem SSIS-Paket helfen. Ich habe einen Server, der eine DB-Tabelle als Teil eines täglichen Job auffüllt. Dann wird der Server schreibt ein Verfahren Statustabelle mich wissen zu lassen, dass ihre getan.
Der Prozess Statustabelle sieht wie folgt aus:
Job | Ready | Downloaded
myJob True False
Ich mag einen Prozess schaffen, wenn der Bereit-Flag auf myjob überprüfen wird wahr und gehen oder wenn Falsch ist, wird es für 30 mintues schlafen, bevor es erneut versuchen und zu 5 Mal wiederholt werden.
Ich habe diesen Artikel auf, wie der Schlaf Teil zu tun: http: // blogs.conchango.com/jamiethomson/archive/2006/10/23/SSIS_3A00_-Put-a-package-to-sleep.aspx
Ich dachte, ein Dateisystem Aufgabe, mit dem Prozessstatus Tabelle zuzugreifen. Dann setzen Sie eine Variable auf den Wert des Ready Flag. Dann hat eine For-Schleife Container, wenn sie wahr Ausbrechen der for-Schleife und weiter, und wenn falsch Lauf des Schlaf dann einen anderen Dateisystem-Task ausführen und die Variable auf den Wert des Bereit-Flag gesetzt. Die wichtigste Frage, die ich habe ist, wie kann ich eine Variable auf den Wert des Bereit-Flag?
Lösung 2
Ich war in der Lage, es herauszufinden.
Ich habe eine Datenfluss-Aufgabe mit einer OLE DB-Quelle und Skriptkomponente im Innern. Das Script Component gelesen und übernimmt die Datenbankdaten, hat einige grundlegende, wenn sonst Logik und schreibt auf eine Systemvariable.
- Schreiben auf eine Variable aus einem Tutorial Script Component: " http://blogs.conchango.com/jamiethomson/archive/2006/07/18/SSIS_3A00_-But -es-used-to-work-in-DTS-_2800_7_2900 _- 2D00 -Capture-a-Wert-von-innen-the-Daten-Pumpe-in-a-variable.aspx "
ich später, dass der Systemvariable in einem for-Schleife.
Andere Tipps
Wenn Sie ein For-Schleifencontainer haben, können Sie eine „ExecuteSQL“ Task platzieren Sie Ihren Statuswert (das heißt falsch) zu extrahieren, dann eine „ScriptTask“ verwenden zu speichern oder sie nach Bedarf zu manipulieren. Sie können dann auch weiterhin den Inhalt des für Schleife Behälter verarbeiten (dies kann eine Datenfluß Aufgabe sein, oder was auch immer Sie verwenden).