ScriptTask.PreCompile Property
Gets or sets a value indicating whether the VSA script is compiled when the package is saved.
Namespace: Microsoft.SqlServer.Dts.Tasks.ScriptTask
Assembly: Microsoft.SqlServer.ScriptTask (in microsoft.sqlserver.scripttask.dll)
Syntax
'Declaration
Public Property PreCompile As Boolean
public bool PreCompile { get; set; }
public:
property bool PreCompile {
bool get ();
void set (bool value);
}
/** @property */
public boolean get_PreCompile ()
/** @property */
public void set_PreCompile (boolean value)
public function get PreCompile () : boolean
public function set PreCompile (value : boolean)
Property Value
true if the VSA script is compiled when the package is saved; otherwise, false. The default value is true.
Remarks
VSA scripts must be compiled before the package runs. The Script task includes the option to pre-compile script into binary code when the package is saved. When script is precompiled, the language engine is not loaded at run time and the package runs more quickly; however, compiled binary files consume significant disk space. Script that is not precompiled is compiled at run time, which slows package execution but consumes less disk space. When storing large packages is not a problem, you should pre-compile your VSA scripts.
Example
The following code sample, implemented in a console application, adds a ScriptTask to the package and displays the default values of some of its properties, including the PreCompile property.
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace ScriptTaskCS
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
string newLine = System.Environment.NewLine;
Executable exe = pkg.Executables.Add("STOCK:ScriptTask");
TaskHost thTask = (TaskHost)exe;
string taskInfo;
taskInfo =
"Project name: " +
thTask.Properties["VsaProjectName"].GetValue(thTask) + newLine +
"Entry point: " +
thTask.Properties["EntryPoint"].GetValue(thTask) + newLine +
"Script Language: " +
thTask.Properties["ScriptLanguage"].GetValue(thTask) + newLine +
"Precompiled?: " +
thTask.Properties["PreCompile"].GetValue(thTask) + newLine +
"ReadOnlyVariables: " +
thTask.Properties["ReadOnlyVariables"].GetValue(thTask) + newLine +
"ReadWriteVariables: " +
thTask.Properties["ReadWriteVariables"].GetValue(thTask);
Console.WriteLine(taskInfo);
Console.Read();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module Module1
Sub Main()
Dim pkg As New Package
Dim newLine As String = System.Environment.NewLine
Dim exe As Executable = pkg.Executables.Add("STOCK:ScriptTask")
Dim thTask As TaskHost = CType(exe, TaskHost)
Dim taskInfo As String
taskInfo = "Project name: " & _
thTask.Properties("VsaProjectName").GetValue(thTask) & newLine & _
"Entry point: " & _
thTask.Properties("EntryPoint").GetValue(thTask) & newLine & _
"Script Language: " & _
thTask.Properties("ScriptLanguage").GetValue(thTask) & newLine & _
"Precompiled?: " & _
thTask.Properties("PreCompile").GetValue(thTask) & newLine & _
"ReadOnlyVariables: " & _
thTask.Properties("ReadOnlyVariables").GetValue(thTask) & newLine & _
"ReadWriteVariables: " & _
thTask.Properties("ReadWriteVariables").GetValue(thTask)
Console.WriteLine(taskInfo)
Console.Read()
End Sub
End Module
Thread Safety
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.
Platforms
Development Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
Target Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
See Also
Reference
ScriptTask Class
ScriptTask Members
Microsoft.SqlServer.Dts.Tasks.ScriptTask Namespace