IListManager::Union

Ee826071.c++_off(en-US,CS.10).gifEe826071.vb_on(en-US,CS.10).gif

Use this method to produce a union of two mailing lists, placing the result in a third mailing list. A union is a combination of the two lists with any duplicates eliminated.

Definition

HRESULT IListManager::Union(VARIANTsrcList,VARIANTaddList,VARIANTresList,longerrLimit,BOOL bAsync,VARIANT*pvarOpID);

Parameters

srcList

[in] A VARIANT that contains the ID or name of the source list.

addList

[in] A VARIANT that contains the ID or name of the add list.

resList

[in] A VARIANT that contains the ID or name of the list into which the results of the union operation will be placed.

errLimit

[in] A long that is not used.

bAsync

[in] A BOOL that specifies whether the copy operation is performed synchronously or asynchronously. A value of True indicates asynchronous processing. A value of False indicates synchronous processing.

pvarOpID

[out, optional] A pointer to a VARIANT used to return an Operation ID. This Operation ID is used in subsequent processing concerning this operation.

Return Values

This method returns an HRESULT indicating whether it completed successfully. See the Error Values section for more details.

Error Values

This method returns S_OK (0x00000000) to indicate success and either standard or custom COM HRESULT error values to indicate failure. For more information about standard COM errors, see Standard COM Errors.

The following table shows the custom COM errors that this method can return.

Constant Value Description
E_LM_LIST_BUSY 0x8C400008 The specified list is currently busy with another operation.
E_LM_LIST_IN_FAILED_STATE 0x8C40001D The specified list is in a FAILED state and may not be used for the operation.
E_LM_LIST_NOT_FOUND 0x8C400006 The specified list does not exist.
E_LM_MAILABLE_REQUIRED 0x8C400011 The operation requires a mailable list and the specified list is not a mailable list.
E_LM_OPER_CANCELED 0x8C40000B The operation was canceled.
E_LM_SQLERROR 0x8C400003 Error while executing SQL/ADO operation.
OLE_E_BLANK 0x80040007 The ListManager object has not been properly initialized.

Additional information may be available using the global Err object, which can be accessed using the API function GetErrorInfo. In particular, the GetDescription method of the IErrorInfo interface may return a text description of the error.

Remarks

The result list must exist prior to calling the method, however, any data in the list will be overwritten.

This method keys on the rcp_email column and thus, both the source (srcList parameter) and add (addList parameter) lists must be Mailable lists (LISTFLAG_MAILABLE set to True). All the records from the source list are copied to the result (resList parameter) list. All records from the add list that do not have duplicate e-mail addresses (rcp_email)**in the source list are also copied to the result list. Any existing data in the result list is deleted.

The parameter pvarOpID contains valid data only if the union operation is performed asynchronously.

For more information about memory ownership issues related to COM property and method parameters, see Managing COM Parameter Memory.

See Also

ListManager Object


All rights reserved.