2.5.1 Package
The Package structure is the highest level object. Its properties and collections are stored by using the PersistStorage structure.
The persistent property set for the Package structure contains the following properties.
Property |
Type |
Description |
---|---|---|
Name |
BSTR |
Specifies the name of the Package structure. |
Description |
BSTR |
Specifies the description of the Package structure. |
LogFileName |
BSTR |
Specifies the full path name of the error log file. |
CreatorName |
BSTR |
Specifies the name of the user who created the package . |
CreatorComputerName |
BSTR |
Specifies the network name of the computer upon which the Package structure was created. |
PriorityClass |
BSTR |
Specifies the execution priority for the Package structure. For more information, see the PriorityClass property table later in this section. |
MaxConcurrentSteps |
LONG |
Specifies the maximum number of steps to execute concurrently on separate threads. |
FailOnError |
BOOL |
Specifies whether the package execution stops if there is an error on a step. If TRUE, the package execution stops. If FALSE, the package execution does not stop. |
WriteCompletionStatusToNTEventLog |
BOOL |
Specifies whether the completion status of the package is written to the application log.<3> If TRUE, the completion status is written to the application log. If FALSE, the completion status is not written to the application log. |
LineageOptions<4> |
LONG |
Specifies how the package execution lineage is presented and recorded. For more information, see the LineageProperty property table later in this section. |
LastExecutionLineage_FullString<5> |
BSTR |
This lineage field is not used in the persisted file. |
LastExecutionLineage_IntegerCRC<6> |
LONG |
This lineage field is not used in the persisted file. |
UseTransaction<7> |
BOOL |
Specifies whether a transaction is created. If TRUE, a transaction is created. If FALSE, a transaction is not created. |
AutoCommitTransaction<8> |
BOOL |
Specifies whether an active transaction is committed at the end of an execution. If TRUE, an active transaction is committed at the end of an execution. If FALSE, an active transaction is not committed at the end of an execution. |
TransactionIsolationLevel<9> |
LONG |
Specifies the isolation level for a transaction if requested by the UseTransaction property when it is set to true. For more information, see the TransactionIsolationLevel table later in this section. |
RepositoryMetadataOptions<10> |
LONG |
Specifies metadata scanning and resolution options for the Package structure when it is saved to the repository. For more information, see the RepositoryMetadataOptions property table later in this section. |
UseOLEDBServiceComponents<11> |
BOOL |
Specifies whether OLE DB service components are used when initializing data sources. If TRUE, OLE DB service components are used. If FALSE, OLE DB service components are not used. |
LogToSQLServer<12> |
BOOL |
Specifies whether a package execution is logged to the database. If TRUE, a package execution is logged to the database. If FALSE, a package execution is not logged to the database. |
LogServerName<13> |
BSTR |
Specifies the name of the server where package logs are written. |
LogServerUserName<14> |
BSTR |
Specifies the user name to be used for login to the log server. |
LogServerPassword<15> |
BSTR |
Specifies the password to be used for login to the log server. |
LogServerFlags<16> |
LONG |
Specifies the flags for the log server.<17> For more information, see the LogServerFlags property table later in this section. |
FailPackageOnLogFailure<18> |
BOOL |
Specifies whether a package fails if logging fails. If TRUE, the package fails. IF FALSE, the package does not fail. |
ExplicitGlobalVariables<19> |
BOOL |
Specifies whether the AddGlobalVariable method is used to add global variables. If TRUE, AddGlobalVariable is used to add global variables. If FALSE, AddGlobalVariable is not used to add global variables. |
PackageType<20> |
LONG |
Specifies the tool that was used to create the package. For more information, see the PackageType property table later in this section. |
The PriorityClass property has one of the values that are described in the following table.
Name |
Value |
Description |
---|---|---|
Low |
0x0001 |
Use Win32 IDLE_PRIORITY_CLASS. |
Normal |
0x0002 |
Use Win32 NORMAL_PRIORITY_CLASS. |
High |
0x0003 |
Use Win32 HIGH_PRIORITY_CLASS. |
The LineageOptions property has one or more of the following bits set.
Name |
Value |
Description |
---|---|---|
None |
0x0000 |
This bit is not used for file persistence. |
AddLineageVariables |
0x0001 |
This bit is not used for file persistence. |
WriteToReposIfAvailable |
0x0002 |
This bit is not used for file persistence. |
WriteToReposRequired |
0x0003 |
This bit is not used for file persistence. |
The TransactionIsolationLevel property has one of the values that are described in the following table.
Name |
Value |
Description |
---|---|---|
Chaos |
0x00000010 |
Does not hold shared locks and does not implement dirty read protection. |
ReadUncommitted (Browse) |
0x00000100 |
Implements dirty read or isolation level 0 locking. |
CursorStability (ReadCommitted) |
0x00001000 |
Implements isolation level 1 locking.<21> |
RepeatableRead |
0x00010000 |
Implements isolation level 2 locking. |
Serializable (Isolated) |
0x00100000 |
Implements isolation level 3 locking |
The RepositoryMetadataOptions property has one or more of the following bits set. This property is not used for file persistence.
Name |
Value |
Description |
---|---|---|
Default |
0x0000 |
Specifies that no scanner resolution is performed. |
RequireScannedCatalog |
0x0001 |
Specifies that all database objects are required to be present in the repository. |
UseScannedCatalogIfPresent |
0x0002 |
Uses any scanned objects found; nonscanned references create local objects. |
ScanCatalogIfNotFound |
0x0004 |
Scans all catalogs that are not already scanned. |
ScanCatalogAlways |
0x0008 |
Scans all referenced catalogs, regardless of whether they had already been scanned. |
The LogServerFlags property can have one of the values that are described in the following table.
Name |
Value |
Description |
---|---|---|
Default |
0x0000 |
Uses the default connection method (account/password) to connect to the log server. |
UseTrustedConnection |
0x0100 |
Uses integrated security to connect to the log server.<22> |
The PackageType property can have one of the values that are described in the following table.
Name |
Value |
Description |
---|---|---|
Default |
0x0000 |
Default value of the package creator type. |
DTSWizard |
0x0001 |
Created by DTS Wizard. |
DTSDesigner |
0x0002 |
Created by DTS Query Designer. |
SQLReplication |
0x0003 |
Created by SQL Server Replication. |
ActiveDirectory |
0x0004 |
Created by Active Directory. |
Collections that are persisted as part of the Package structure properties contain the following items:
Steps, persisted in the Steps collection. For more information, see Steps Collection.
Tasks, persisted in the Tasks collection. For more information, see DTS Task Objects.
Connections, persisted in the Connections collection. For more information, see Connections Collection.
Global variables, persisted in the GlobalVariables collection. For more information, see GlobalVariables Collection.
Host-specific variables are stored in a substorage named "HostPrivateStorage" by using the PersistStorage structure.