Partager via


IMAPITable::SetCollapseState

S’applique à : Outlook 2013 | Outlook 2016

Reconstruit l’état développé ou réduit actuel d’une table catégorisée à l’aide de données enregistrées par un appel antérieur à la méthode IMAPITable ::GetCollapseState .

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

Paramètres

ulFlags

Réservés au; doit être égal à zéro.

cbCollapseState

[in] Nombre d’octets dans la structure vers laquelle pointe le paramètre pbCollapseState .

pbCollapseState

[in] Pointeur vers les structures contenant les données nécessaires à la reconstruction de la vue table.

lpbkLocation

[out] Pointeur vers un signet identifiant la ligne de la table à laquelle l’état réduit ou développé doit être reconstruit. Ce signet et la clé instance passées dans le paramètre lpbInstanceKey dans l’appel à IMAPITable ::GetCollapseState identifient la même ligne.

Valeur renvoyée

S_OK

L’état de la table catégorisée a été correctement reconstruit.

MAPI_E_BUSY

Une autre opération en cours empêche le démarrage de l’opération. Soit l’opération en cours doit être autorisée à se terminer, soit elle doit être arrêtée.

MAPI_E_UNABLE_TO_COMPLETE

La table n’a pas pu terminer la reconstruction de la vue réduite ou développée.

Remarques

La méthode IMAPITable ::SetCollapseState rétablit l’état développé ou réduit de la vue de table. SetCollapseState et GetCollapseState fonctionnent ensemble comme suit :

  1. Lorsque l’état d’une table catégorisée est sur le point de changer, IMAPITable ::GetCollapseState est appelé pour enregistrer toutes les données relatives à l’état avant la modification.

  2. Pour restaurer l’état enregistré de la table, SetCollapseState est appelé. Les données enregistrées par GetCollapseState sont passées à SetCollapseState. SetCollapseState peut utiliser ces données pour restaurer l’état.

  3. SetCollapseState retourne en tant que paramètre de sortie un signet qui identifie la même ligne que la clé instance passée en tant qu’entrée à GetCollapseState.

Pour plus d’informations sur les tables classées, consultez Tri et catégorisation.

Remarques pour les responsables de l’implémentation

Il vous incombe de vérifier que l’ordre de tri et les restrictions sont exactement les mêmes qu’au moment de l’appel GetCollapseState . Si une modification a été apportée, SetCollapseState ne doit pas être appelé, car les résultats peuvent être imprévisibles. Cela peut se produire si, par exemple, un client appelle GetCollapseState , puis SortTable pour modifier la clé de tri avant d’appeler SetCollapseState. Pour être sûr, case activée que les données enregistrées sont toujours valides avant de procéder à la restauration.

Remarques pour les appelants

Pour appeler SetCollapseState, vous devez avoir précédemment appelé GetCollapseState. L’ordre de tri qui établit les catégories doit être le même pour les deux méthodes. Si les ordres de tri diffèrent, les résultats de l’opération SetCollapseState sont imprévisibles .

Voir aussi

IMAPITable::CreateBookmark

IMAPITable::FreeBookmark

IMAPITable::GetCollapseState

IMAPITable : IUnknown