The PICampaign object represents a logical grouping of PIBatch objects.
This object supports the IRefresh interface.
This object supports the IPIServers interface. It returns the Server only for the PICampaign itself. If you want to check for servers in the PIProperties and PIBatches collections within the PICampaign, you need to get the IPIServers interface from those collections.
This object supports the IPIPersist interface. The persistence string only contains enough information to ask the database for the object. It doesn't contain a copy of the data within the object.
This object supports the IPITransaction interface. This is a simpler and more efficient way to modify a PICampaign than using the ModifyAttributes method. In addition you can delete PIProperty's which you can't do with ModifyAttributes. Being in transaction mode has no effect on changes to the PIBatches collection of the PICampaign.