ICategory3::RemoveProduct Method [C++]

Use this method to remove a product from this category.

Definition

[C++]

HRESULT ICategory3::RemoveProduct(VARIANTvarProductID);

[Visual Basic]

Sub RemoveProduct(varProductID As Variant)

Parameters

  • varProductID[C++]
    [in] A VARIANT that contains the product ID.
  • varProductID[Visual Basic]
    A Variant that contains the product ID.

Return Values

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

[Visual Basic] None.

Error Values

[C++] 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.

[Visual Basic] This method sets the Number property of the global Err object to S_OK (&H00000000) to indicate success and to either standard or custom COM 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_CAT_INVALID_OPERATION_FOR_ROOT_CATEGORY

[C++] 0x889800F8

[Visual Basic] &H889800F8

This API cannot be called for a root category.
E_CAT_INVALID_PRODUCTID

[C++] 0x8898005B

[Visual Basic] &H8898005B

The value you specified for the ProductID is blank or else it exceeds the maximum allowed length of 256 characters.
E_CAT_INVALIDVALUE_FOR_PRODUCTID

[C++] 0x8898004E

[Visual Basic] &H8898004E

The value you specified for the ProductID is either out of range or else it does not satisfy the Min/Max condition.
E_CAT_VC_INVALID_PROD_ID_OR_CATEGORY_NAME

[C++] 0x889800FB

[Visual Basic] &H889800FB

The value you specified for the ProductID or CategoryName exceeds the maximum allowed length of 348 characters.
E_CAT_PRODUCT_DOESNT_EXIST

[C++] 0x8898001E

[Visual Basic] &H8898001E

The product you specified doesn't exist.
E_CAT_VC_ERROR_IN_PROPAGATING_BC_CHANGES

[C++] 0x88980101

[Visual Basic] &H88980101

There was an error in propagating the base catalog changes to the dependent virtual catalogs.

[C++] 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.

[Visual Basic] Additional information may be available using the global Err object. In particular, the Description property may contain a text description of the error.

Remarks

When calling this method on an inherited category in a virtual catalog, the method will have no effect if the product was added to the category in a base catalog. If the product was added in the virtual catalog it will be removed. Inherited hierarchy and relationship links cannot be removed or changed in inherited categories. To modify inherited relationships use a Category object obtained from the base Catalog object.

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

[Visual Basic]

Example

myCategory.RemoveProduct "Widget"

See Also

[C++]Category Object

[C++]ICategory3::AddProduct

[Visual Basic]Category Object

[Visual Basic]Category.AddProduct

Copyright © 2005 Microsoft Corporation.
All rights reserved.