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:

Host-specific variables are stored in a substorage named "HostPrivateStorage" by using the PersistStorage structure.