PrecedenceConstraint.LogicalAnd Property
Gets or sets a Boolean that indicates whether multiple constraints work together.
Espacio de nombres: Microsoft.SqlServer.Dts.Runtime
Ensamblado: Microsoft.SqlServer.ManagedDTS (in microsoft.sqlserver.manageddts.dll)
Sintaxis
'Declaración
Public Property LogicalAnd As Boolean
public bool LogicalAnd { get; set; }
public:
property bool LogicalAnd {
bool get ();
void set (bool value);
}
/** @property */
public boolean get_LogicalAnd ()
/** @property */
public void set_LogicalAnd (boolean value)
public function get LogicalAnd () : boolean
public function set LogicalAnd (value : boolean)
Valor de propiedad
true if multiple constraints are evaluated in conjunction. false if multiple constraints on the same task but are evaluated individually.
Notas
The default value of this property is true. This value specifies whether the precedence constraint works in concert with other constraints that apply to the constrained executable.
Ejemplo
The following code example creates three tasks, and connects them by using precedence constraints. The sample then iterates over the constraints in the PrecedenceConstraints collection of the package, printing information about each constraint.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace PrecedenceConst
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
// Add a File System task.
Executable eFileTask1 = pkg.Executables.Add("STOCK:FileSystemTask");
TaskHost thFileTask1 = eFileTask1 as TaskHost;
// Add a second File System task.
Executable eFileTask2 = pkg.Executables.Add("STOCK:FileSystemTask");
TaskHost thFileTask2 = eFileTask2 as TaskHost;
// Add a Bulk Insert task.
Executable eBulkInsert = pkg.Executables.Add("STOCK:BulkInsertTask");
TaskHost thBulkInsert = eBulkInsert as TaskHost;
// Add a precedence contraint between eFileTask1 and eFileTask2.
// Set the constraint to be that eFileTask2 cannot run
// until eFileTask1 completes.
PrecedenceConstraint pcFileTasks = pkg.PrecedenceConstraints.Add(eFileTask1, eFileTask2);
// Add another precedence contraint. Add it between eFileTask2 and BulkInsert.
// Again, set the constraint to be that BulkInsert cannot run
// until eFileTask2 completes.
PrecedenceConstraint pcFiletoBulk = pkg.PrecedenceConstraints.Add(eFileTask2, eBulkInsert);
// Obtain the precedence constraint collection, and display properties.
// Some properties are read/write and have not been set.
PrecedenceConstraints pConsts = pkg.PrecedenceConstraints;
foreach (PrecedenceConstraint pc in pConsts)
{
Console.WriteLine("Constrained container {0}", pc.ConstrainedExecutable);
Console.WriteLine("Creation Name {0}", pc.CreationName);
Console.WriteLine("Description {0}", pc.Description);
Console.WriteLine("Evaluation operation {0}", pc.EvalOp);
Console.WriteLine("Evaluates true {0}", pc.EvaluatesTrue);
Console.WriteLine("Expression {0}", pc.Expression);
Console.WriteLine("ID {0}", pc.ID);
Console.WriteLine("LogicalAnd {0}", pc.LogicalAnd);
Console.WriteLine("Name {0}", pc.Name);
Console.WriteLine("Precedence Executable {0}", pc.PrecedenceExecutable);
Console.WriteLine("Value {0}", pc.Value);
Console.WriteLine("-----------------------------------");
}
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace PrecedenceConst
Class Program
Shared Sub Main(ByVal args() As String)
Dim pkg As Package = New Package()
' Add a File System task.
Dim eFileTask1 As Executable = pkg.Executables.Add("STOCK:FileSystemTask")
Dim thFileTask1 As TaskHost = eFileTask1 as TaskHost
' Add a second File System task.
Dim eFileTask2 As Executable = pkg.Executables.Add("STOCK:FileSystemTask")
Dim thFileTask2 As TaskHost = eFileTask2 as TaskHost
' Add a Bulk Insert task.
Dim eBulkInsert As Executable = pkg.Executables.Add("STOCK:BulkInsertTask")
Dim thBulkInsert As TaskHost = eBulkInsert as TaskHost
' Add a precedence contraint between eFileTask1 and eFileTask2.
' Set the constraint to be that eFileTask2 cannot run
' until eFileTask1 completes.
Dim pcFileTasks As PrecedenceConstraint = pkg.PrecedenceConstraints.Add(eFileTask1,eFileTask2)
' Add another precedence contraint. Add it between eFileTask2 and BulkInsert.
' Again, set the constraint to be that BulkInsert cannot run
' until eFileTask2 completes.
Dim pcFiletoBulk As PrecedenceConstraint = pkg.PrecedenceConstraints.Add(eFileTask2,eBulkInsert)
' Obtain the precedence constraint collection, and display properties.
' Some properties are read/write and have not been set.
Dim pConsts As PrecedenceConstraints = pkg.PrecedenceConstraints
Dim pc As PrecedenceConstraint
For Each pc In pConsts
Console.WriteLine("Constrained container {0}", pc.ConstrainedExecutable)
Console.WriteLine("Creation Name {0}", pc.CreationName)
Console.WriteLine("Description {0}", pc.Description)
Console.WriteLine("Evaluation operation {0}", pc.EvalOp)
Console.WriteLine("Evaluates true {0}", pc.EvaluatesTrue)
Console.WriteLine("Expression {0}", pc.Expression)
Console.WriteLine("ID {0}", pc.ID)
Console.WriteLine("LogicalAnd {0}", pc.LogicalAnd)
Console.WriteLine("Name {0}", pc.Name)
Console.WriteLine("Precedence Executable {0}", pc.PrecedenceExecutable)
Console.WriteLine("Value {0}", pc.Value)
Console.WriteLine("-----------------------------------")
Next
End Sub
End Class
End Namespace
Sample Output:
Constrained container Microsoft.SqlServer.Dts.Runtime.TaskHost
Creation Name
Description
Evaluation operation Constraint
Evaluates true True
Expression
ID {BA20A288-545D-4E48-864A-E6AF6C3B9AEE}
LogicalAnd True
Name {BA20A288-545D-4E48-864A-E6AF6C3B9AEE}
Precedence Executable Microsoft.SqlServer.Dts.Runtime.TaskHost
Value Success
-----------------------------------
Constrained container Microsoft.SqlServer.Dts.Runtime.TaskHost
Creation Name
Description
Evaluation operation Constraint
Evaluates true True
Expression
ID {E8DBC95E-AF27-45D7-B961-17E908CC4530}
LogicalAnd True
Name {E8DBC95E-AF27-45D7-B961-17E908CC4530}
Precedence Executable Microsoft.SqlServer.Dts.Runtime.TaskHost
Value Success
-----------------------------------
Seguridad para subprocesos
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Plataformas
Plataformas de desarrollo
Para obtener una lista de las plataformas compatibles, vea Requisitos de hardware y software para instalar SQL Server 2005.
Plataformas de destino
Para obtener una lista de las plataformas compatibles, vea Requisitos de hardware y software para instalar SQL Server 2005.
Vea también
Referencia
PrecedenceConstraint Class
PrecedenceConstraint Members
Microsoft.SqlServer.Dts.Runtime Namespace