> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XblLeaderboardQuery

> XblLeaderboardQuery

# XblLeaderboardQuery

Représente les paramètres pour soumettre une requête de classement à l'aide de statistiques basées sur les événements ou sur le titre.

## Syntaxe

```cpp theme={null}
typedef struct XblLeaderboardQuery {  
    uint64_t xboxUserId;  
    char scid[XBL_SCID_LENGTH];  
    const char* leaderboardName;  
    const char* statName;  
    XblSocialGroupType socialGroup;  
    const char** additionalColumnleaderboardNames;  
    size_t additionalColumnleaderboardNamesCount;  
    XblLeaderboardSortOrder order;  
    uint32_t maxItems;  
    uint64_t skipToXboxUserId;  
    uint32_t skipResultToRank;  
    const char* continuationToken;  
    XblLeaderboardQueryType queryType;  
} XblLeaderboardQuery  
```

### Membres

*xboxUserId*\
Type : uint64\_t

Identifiant d'utilisateur XBOX facultatif de l'utilisateur demandeur. S'il s'agit d'un classement global, définissez-le sur 0.

*scid*\
Type : char\[XBL\_SCID\_LENGTH]

Identifiant de configuration de service (SCID), encodé en UTF-8, du titre.

*leaderboardName*\
Type : const char\*

Nom de classement facultatif, encodé en UTF-8, pour lequel obtenir un classement. Définissez-le sur nullptr si vous interrogez un classement social ou un classement reposant sur des statistiques gérées par le titre.

*statName*\
Type : const char\*

Nom de statistique facultatif, encodé en UTF-8, pour lequel obtenir un classement. Utilisé lors de l'interrogation d'un classement social ou d'un classement reposant sur des statistiques gérées par le titre.

*socialGroup*\
Type : [XblSocialGroupType](/fr-CA/reference/live/xsapi-c/leaderboard_c/enums/xblsocialgrouptype)

Facultatif : groupe social d'utilisateurs pour lequel obtenir les résultats de classement. Par exemple, pour obtenir un classement « amis seulement ». Définissez-le sur XblSocialGroupType\_None pour obtenir un classement global.

*additionalColumnleaderboardNames*\
Type : const char\*\*

Tableau facultatif, encodé en UTF-8, des noms de statistiques pour les colonnes supplémentaires.

*additionalColumnleaderboardNamesCount*\
Type : size\_t

Nombre facultatif d'éléments additionalColumnleaderboardNames transmis.

*order*\
Type : [XblLeaderboardSortOrder](/fr-CA/reference/live/xsapi-c/leaderboard_c/enums/xblleaderboardsortorder)

Définit l'ordre de tri du classement obtenu.

*maxItems*\
Type : uint32\_t

Définit le nombre maximal d'éléments que contient le classement obtenu. Définissez-le sur 0 pour laisser le service retourner le nombre maximal d'éléments par défaut.

*skipToXboxUserId*\
Type : uint64\_t

Définit l'utilisateur autour duquel le classement obtenu est centré. Définissez-le sur 0 pour ne pas passer à un utilisateur précis.

*skipResultToRank*\
Type : uint32\_t

Définit le rang autour duquel le classement obtenu est centré. Définissez-le sur 0 pour ne pas passer à un rang précis.

*continuationToken*\
Type : const char\*

continuationToken, encodé en UTF-8, utilisé pour obtenir le prochain ensemble de données de classement.

*queryType*\
Type : [XblLeaderboardQueryType](/fr-CA/reference/live/xsapi-c/leaderboard_c/enums/xblleaderboardquerytype)

Type de classement à interroger.

## Membre de

[XblLeaderboardResult](/fr-CA/reference/live/xsapi-c/leaderboard_c/structs/xblleaderboardresult)

## Argument de

[XblLeaderboardGetLeaderboardAsync](/fr-CA/reference/live/xsapi-c/leaderboard_c/functions/xblleaderboardgetleaderboardasync)

## Remarques

### Statistiques basées sur les événements

Lorsque vous utilisez le membre *statName* avec les [statistiques basées sur les événements](/fr-CA/services/xbox-services/player-data/stats-leaderboards/event-based/live-stats-eb-overview), la valeur doit correspondre à une [instance de statistique](/fr-CA/services/xbox-services/player-data/stats-leaderboards/event-based/live-stats-eb-overview#defining-stat-instances).

### Statistiques gérées par le titre

Lorsque vous utilisez les [statistiques gérées par le titre](/fr-CA/services/xbox-services/player-data/stats-leaderboards/title-managed/live-stats-tm-overview) pour les classements, définir *skipToXboxUserId* sur une valeur non nulle compare la statistique stockée du *xboxUserId* donné au classement global.

De même, définir *socialGroup* sur People ou Favorites compare les statistiques stockées du *xboxUserId* donné et des utilisateurs associés. Les valeurs du classement global ne sont pas utilisées.

**Notez que lorsque la statistique stockée d'un joueur et son pointage au classement global ne sont pas identiques, cela peut produire des résultats incohérents.**

<Info>
  Pour les statistiques gérées par le titre, l'entrée d'un joueur au classement global n'est pas une projection directe de sa statistique stockée actuelle. Le service de classement **conserve uniquement la valeur la plus élevée enregistrée** pour chaque joueur. Par conséquent, **l'écriture d'une valeur inférieure dans une statistique ne fait pas baisser la position de ce joueur au classement global**; le classement continue de refléter le sommet précédemment enregistré. La statistique stockée elle-même, que l'on peut interroger au moyen de `XblUserStatisticsGet*` ou de `XblTitleManagedStatsGetForUserAsync`, reflète la valeur écrite le plus récemment, ce qui explique pourquoi elle peut différer du classement.

  Si votre titre a besoin que les positions au classement puissent diminuer, les statistiques gérées par le titre ne conviennent pas. Par exemple, une cote qui monte ou descend, ou un pointage qui est réinitialisé en cas de défaite. Envisagez plutôt les statistiques basées sur les événements avec une règle `Replace`, ou un service de classement externe comme [PlayFab Leaderboards v2](/fr-CA/services/playfab/community/leaderboards/index). Pour en savoir plus sur ce comportement, consultez les [notes d'implémentation](https://github.com/microsoft/Xbox-GDK-Samples/blob/main/Samples/Live/LeaderboardsTitleManaged/readme_en-us.md) de l'exemple `LeaderboardsTitleManaged` du Microsoft Game Development Kit (GDK).
</Info>

## Configuration requise

**En-tête :** leaderboard\_c.h

## Voir aussi

[leaderboard\_c](/fr-CA/reference/live/xsapi-c/leaderboard_c/leaderboard_c_members)\
[Statistiques basées sur les événements et statistiques gérées par le titre](/fr-CA/services/xbox-services/player-data/stats-leaderboards/live-stats-eb-vs-tm)


## Related topics

- [XblLeaderboardQuery](/reference/live/xsapi-c/leaderboard_c/structs/xblleaderboardquery.md)
- [XblLeaderboardQueryType](/reference/live/xsapi-c/leaderboard_c/enums/xblleaderboardquerytype.md)
- [Leaderboards](/build/steam-porting-guide/features/steam-leaderboards.md)
- [Getting a title-managed leaderboard](/services/xbox-services/player-data/stats-leaderboards/title-managed/how-to/live-getting-tm-leaderboard.md)
- [XblLeaderboardGetLeaderboardAsync](/reference/live/xsapi-c/leaderboard_c/functions/xblleaderboardgetleaderboardasync.md)
