Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Como usar a API do SSIS para ler um pacote e determinar a sequência de tarefas do código (PrecedenceConstraints)


Havia outro objeto sob a restrição, PrecedenceExecutable, que representa o objeto "anterior", e também possui uma propriedade ID. Eu não tenho certeza de como eu perdi. Eu só precisava olhar para ele fresco, parece.
    foreach (var precedenceConstraint in package.PrecedenceConstraints)
    {

        Microsoft.SqlServer.Dts.Runtime.TaskHost constrainedExecutable = (Microsoft.SqlServer.Dts.Runtime.TaskHost)precedenceConstraint.ConstrainedExecutable;
        Microsoft.SqlServer.Dts.Runtime.TaskHost precedenceExecutable = (Microsoft.SqlServer.Dts.Runtime.TaskHost)precedenceConstraint.PrecedenceExecutable;

        string taskName = constrainedExecutable.Name;

        string constrainedExecutableId = constrainedExecutable.ID;
        string precedenceConstraintId = precedenceConstraint.ID;

        Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask.ExecuteSQLTask executeSqlTask = (Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask.ExecuteSQLTask)constrainedExecutable.InnerObject;

    }