2012-08-29 9 views
5

Chciałbym sprawdzić, a następnie wykonać pakiet SSIS przechowywany w katalogu SSIS (Model wdrażania projektu) za pośrednictwem obiektów z przestrzeni nazw Microsoft.SqlServer.Management.IntegrationServices. Po uruchomieniu metody Validate z klasy PackageInfo działa tylko sprawdzanie poprawności, ale bez czekania aż do końca. W numerze one example znalazłem sprawdzanie praw autorskich w trybie "ogień i zapomnij" - po co strzelać, kiedy nie zawracamy sobie głowy wynikiem? W another one wykonanie jest uruchamiane bez wcześniejszej walidacji.Sprawdzanie poprawności pakietów SSIS 2012 programowo za pośrednictwem zarządzanego modelu obiektów SSIS

  1. Czy muszę weryfikować paczkę przed każdym wykonaniem?
  2. Jeśli tak, jak to zrobić w trybie synchronicznym?
  3. Jestem również ciekawy z właściwością statusu ValidationOperation. To jest zapakowana catalog.validations status kolumna i może mieć, inter , między innymi, wartości succeeded (7) i completed (9) - co to jest różnica między nimi ?

Odpowiedz

2

Ad 2: w stanie oczekiwania na wynik weryfikacji, w pętli:

var validationId = package.Validate(false, PackageInfo.ReferenceUsage.UseAllReferences, null); 
ValidationOperation validation = package.Parent.Parent.Parent.Validations[validationId]; 
do 
{ 
    Thread.Sleep(1000); 
    validation.Refresh(); 
} 
while (!validation.Completed);