Package Container (C_PACKAGE)

A package container is used to gain access to packages in the current site's site database. The package container is analogous to the Packages window in the SMS Administrator. Thus, a package container contains, at the topmost level, package folders. A package folder can contain workstation command line folders, program item folders, or an inventory rules folder.

A package stores information about software so that the software can be identified, installed on computers, and shared from servers. When you create a package, you define the files that make up the software, and the package's configuration and identification information. After you create a package, you can use SMS to install the package on computers, share the package so that it can be run from network servers, or maintain inventory on the package. You can create packages for commercial applications, for applications you have developed, and for data files.

A package folder contains scalars that represent most of the properties of the package. Which properties you define are determined by how the package will be used. The properties apply to the package in general, or to one or more of the following three purposes:

Workstations
Used to specify the source files and commands for a package that is installed on computers. These properties are used when the package is used for a Run Command On Workstation job.
Sharing
Used to specify the source files, share name, program items, and directory permissions used for a package that is installed as a network application. These properties are used when the package is used for a Share Package On Server job.
Inventory
Used to specify the rules used by the SMS system to identify a package, maintain its inventory, and collect files.

Within a package, workstation command line folders are used for the Workstations property and program item folders are used for the Sharing property.

Using a package filter, your application can specify the package folders that will appear in the container. For example, a package filter can be used to populate a package container with only packages that have the Workstations property defined.

A package container has the following properties:

Property Value Description
Tag "Package container" String. A description of the container type.
Container type C_PACKAGE Integer. Container type.
Applied filters PACKAGE_FILTER Integer. Filters that can be applied to a package container. These filters act upon objects at either the package container or folder level, depending on the type of filter.
Active filters PACKAGE_FILTER Integer. Filters that are directly activated on the container. These filter types are used to retrieve the top-level folders in the container.
Immediate subfolders F_PACKAGE Integer. Type of folder that the container contains at the top level. Note that the top-level folders may have their own hierarchy of subfolders.