Compartir a través de


IMAPITable::SetCollapseState

Hace referencia a: Outlook 2013 | Outlook 2016

Recompila el estado expandido o contraído actual de una tabla categorizada mediante datos guardados por una llamada anterior al método IMAPITable::GetCollapseState .

HRESULT SetCollapseState(
ULONG ulFlags,
ULONG cbCollapseState,
LPBYTE pbCollapseState,
BOOKMARK FAR * lpbkLocation
);

Parameters

ulFlags

Reservados; debe ser cero.

cbCollapseState

[in] Recuento de bytes en la estructura a la que apunta el parámetro pbCollapseState .

pbCollapseState

[in] Puntero a las estructuras que contienen los datos necesarios para volver a generar la vista de tabla.

lpbkLocation

[out] Puntero a un marcador que identifica la fila de la tabla en la que se debe volver a generar el estado contraído o expandido. Este marcador y la clave de instancia que se pasan en el parámetro lpbInstanceKey en la llamada a IMAPITable::GetCollapseState identifican la misma fila.

Valor devuelto

S_OK

El estado de la tabla categorizada se recompiló correctamente.

MAPI_E_BUSY

Hay otra operación en curso que impide que se inicie la operación. Se debe permitir que se complete la operación en curso o se debe detener.

MAPI_E_UNABLE_TO_COMPLETE

La tabla no pudo terminar de volver a generar la vista contraída o expandida.

Comentarios

El método IMAPITable::SetCollapseState restablece el estado expandido o contraído de la vista de tabla. SetCollapseState y GetCollapseState funcionan juntos de la siguiente manera:

  1. Cuando el estado de una tabla categorizada está a punto de cambiar, se llama a IMAPITable::GetCollapseState para guardar todos los datos pertenecientes al estado antes del cambio.

  2. Para restaurar la vista de la tabla a su estado guardado, se llama a SetCollapseState . Los datos guardados por GetCollapseState se pasan a SetCollapseState. SetCollapseState puede usar esos datos para restaurar el estado.

  3. SetCollapseState devuelve como parámetro de salida un marcador que identifica la misma fila que la clave de instancia pasada como entrada a GetCollapseState.

Para obtener más información sobre las tablas categorizadas, vea Ordenar y categorizar.

Notas a los implementadores

Es responsable de comprobar que el criterio de ordenación y las restricciones son exactamente los mismos que en el momento de la llamada a GetCollapseState . Si se ha realizado un cambio, no se debe llamar a SetCollapseState porque los resultados pueden ser imprevisibles. Esto puede ocurrir si, por ejemplo, un cliente llama a GetCollapseState y, a continuación, a SortTable para cambiar la clave de ordenación antes de llamar a SetCollapseState. Para estar seguros, compruebe que los datos guardados siguen siendo válidos antes de continuar con la restauración.

Notas para los llamadores

Para llamar a SetCollapseState, debe haber llamado previamente a GetCollapseState. El criterio de ordenación que establece las categorías debe ser el mismo para ambos métodos. Si los criterios de ordenación difieren, los resultados de la operación SetCollapseState son imprevisibles.

Vea también

IMAPITable::CreateBookmark

IMAPITable::FreeBookmark

IMAPITable::GetCollapseState

IMAPITable : IUnknown