# 16. Requête : obtenir YieldDatasets

## Aperçu

Récupérer tous les jeux de données de rendement pour la parcelle sélectionnée.&#x20;

Les jeux de données de rendement peuvent être récupérés en utilisant des requêtes GraphQL génériques :

1. `getFarms` en utilisant la hiérarchie complète Ferme > Parcelle > JeuDeDonnéesRendement avec ses filtres
2. &#x20;`getFields` à partir de la parcelle liée et de la hiérarchie Parcelle > JeuDeDonnéesRendement
3. getYieldDatasets avec une large gamme de filtres et la pagination

{% hint style="warning" %}
Un "YieldDataset" doit être téléversé au préalable.
{% endhint %}

## Entité Jeu de Données de Rendement

YieldDataset comprend de nombreux attributs. GraphQL vous permet de récupérer uniquement les champs requis, réduisant ainsi considérablement la taille des requêtes et des réponses. Des explications détaillées pour chaque attribut sont fournies ci‑dessous.

{% hint style="info" %}
Les attributs dans le "YieldDataset" marqués ci‑dessous comme *provenant des métadonnées* sont optionnels. Ils sont dérivés des métadonnées du jeu de données, qui ne sont pas nécessairement présentes dans chaque YieldDataset.
{% endhint %}

{% hint style="success" %}
Détails sur le `geoMaps`  attribut pour le YieldDataset sont disponibles [ici](/geopard-tutorials/fr/docs-api/points-de-terminaison-geo-pour-lacces-aux-donnees-spatiales/wms-obtenir-des-images-raster-des-couches-de-donnees-spatiales/12.-yielddatasetsmap.md).
{% endhint %}

{% hint style="success" %}
Des détails sur la façon de déclencher le Nettoyage et la Calibration pour le YieldDataset sont disponibles [ici](/geopard-tutorials/fr/docs-api/vue-densemble-des-requetes-de-lapi-geopard/84.-mutation-calibrer-et-nettoyer-le-jeu-de-donnees-de-rendement.md).
{% endhint %}

```graphql
{
  uuid
  nom #motif "<OperationType> <YYYY-mm-DD>" Travail du sol
  number #nombre total de géofeatures
  geometryType #Polygones ou Points
  totalCoveredArea(unit: HECTARES) #surface totale de toutes les géométries (pertinent pour les Polygones)
  fieldCoverage #pourcentage de la parcelle couvert par le jeu de données
  fieldCoveredArea(unit: HECTARES) #union des géométries (sans doublons)

  attributes
  fullAttributes { #détails complets par attribut
    name #lien vers les statistiques >> attribut
    transliteratedName
    fullName #nom lisible et correct
    unit#unités de mesure
  }

  usedMachines { #machines utilisées, qui proviennent des métadonnées
    id
    serial
    operatorId
  } 

  createdDate #date et heure de création de l'entité dans GeoPard
  updatedDate #date et heure de la dernière mise à jour
  operationId
  operationType
  operationFileDate #date et heure de création du fichier provenant des métadonnées 
  operationStartDate #début de l'opération provenant des métadonnées
  
  statistics { #distribution statistique pour chaque attribut
    attribute
    min
    max
    avg
    mdn
    var
    std
    sum
  }
  
  cropName #nom de la culture provenant des métadonnées
  cropToken #jeton de culture (en MAJUSCULES) provenant des métadonnées

  appliedCorrections #liste des corrections appliquées dans l'ordre mentionné
  appliedCorrectionsVersion #version de l'algorithme de correction utilisé

  geoMaps {
    url
    shortName #préfixe options : raw, thumbnail_raw, processed, thumbnail_processed
    hexColorCodes
    classes
  } 
}
```

## 1. Requête getFarms

### Demander

{% code overflow="wrap" lineNumbers="true" %}

```graphql
query GetYieldDatasetsViaGetFarms {
  getFarms (farmUuids: ["9eecef55-f74f-4099-991a-05cbd976d50a"]) {
    uuid
    nom
    fields (fieldUuids: ["a050fc6f-1df8-4997-ae5b-5d0afa03a1ba"]) {
      uuid
      yieldDatasets {
        uuid
        nom
        number
        geometryType
        totalCoveredArea(unit: HECTARES)
        fieldCoverage
        fieldCoveredArea(unit: HECTARES)
      }
    }
  }
}
```

{% endcode %}

### Réponse

```json
{
  "data": {
    "getFarms": [
      {
        "uuid": "9eecef55-f74f-4099-991a-05cbd976d50a",
        "name": "TEST VECTOR DATA",
        "fields": [
          {
            "uuid": "a050fc6f-1df8-4997-ae5b-5d0afa03a1ba",
            "yieldDatasets": [
              {
                "uuid": "08f0fee4-daf4-4a98-97e5-660b7b6cfbeb",
                "name": "CALIBRATE-CLEAN-YieldCORN2017",
                "number": 14657,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.97578,
                "fieldCoveredArea": 21.024173
              },
              {
                "uuid": "2b4fbd15-c961-49c8-8cc2-3031397d0380",
                "name": "CALIBRATE-YieldCORN2017",
                "number": 16200,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.98791,
                "fieldCoveredArea": 21.285677
              },
              {
                "uuid": "465769d3-14dd-419f-9740-fb230c0505fd",
                "name": "YieldSbean2018_reupload",
                "number": 9073,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.92874,
                "fieldCoveredArea": 20.0107663
              },
              {
                "uuid": "73d247ad-c45b-47a5-b94d-a2eb502857fe",
                "name": "CLEAN-YieldCORN2017 before build",
                "number": 14709,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.98305,
                "fieldCoveredArea": 21.1808419
              },
              {
                "uuid": "74f06214-1051-47a2-a560-696d9290245a",
                "name": "YieldSbean2018",
                "number": 10179,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.92874,
                "fieldCoveredArea": 20.0107663
              },
              {
                "uuid": "7e2bc706-2da4-43ae-beaa-240300d20c53",
                "name": "YieldSbean2015",
                "number": 10293,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.96217,
                "fieldCoveredArea": 20.730980600000002
              },
              {
                "uuid": "7fb9fb1f-c4df-4146-892c-ba672dab9cd7",
                "name": "CALIBRATE-CLEAN-YieldSbean2018",
                "number": 9026,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.92426,
                "fieldCoveredArea": 19.914270300000002
              },
              {
                "uuid": "8a97fc98-d6a5-4fb0-bd8d-d50c50b1adb8",
                "name": "CLEAN-YieldCORN2017 after build",
                "number": 14709,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.98305,
                "fieldCoveredArea": 21.1808419
              },
              {
                "uuid": "a7f9d7cc-e1e1-46ff-b13d-468518749ba9",
                "name": "CALIBRATE-YieldSbean2015",
                "number": 9310,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.95482,
                "fieldCoveredArea": 20.5726658
              },
              {
                "uuid": "cbd0c66b-21e3-4997-96a7-f1179da18c36",
                "name": "CLEAN-CALIBRATE-YieldSbean2015",
                "number": 9183,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.90674,
                "fieldCoveredArea": 19.5366444
              },
              {
                "uuid": "fdfd701f-6529-4f4e-8027-e831fb557fe2",
                "name": "YieldCORN2017",
                "number": 16334,
                "geometryType": "POINTS",
                "totalCoveredArea": -1.0,
                "fieldCoverage": 0.97947,
                "fieldCoveredArea": 21.103661199999998
              }
            ]
          }
        ]
      }
    ]
  }
}
```

## 2. Requête getFields

### Demander

{% code overflow="wrap" lineNumbers="true" %}

```graphql
query GetYieldDatasetsViaGetFields {
  getFields (filter: {fieldUuid: "a050fc6f-1df8-4997-ae5b-5d0afa03a1ba"}) {
    fields {
      uuid
      area(unit: HECTARES)
      yieldDatasets(yieldDatasetUuids: ["8a97fc98-d6a5-4fb0-bd8d-d50c50b1adb8"]) {
        uuid
        nom
        number
        geometryType
        totalCoveredArea(unit: HECTARES)
        fieldCoverage
        fieldCoveredArea(unit: HECTARES)
      }
    }
  }
}
```

{% endcode %}

### Réponse

```json
{
  "data": {
    "getFields": {
      "fields": [
        {
          "uuid": "a050fc6f-1df8-4997-ae5b-5d0afa03a1ba",
          "area": 21.541909393943847,
          "yieldDatasets": [
            {
              "uuid": "8a97fc98-d6a5-4fb0-bd8d-d50c50b1adb8",
              "name": "CLEAN-YieldCORN2017 after build",
              "number": 14709,
              "geometryType": "POINTS",
              "totalCoveredArea": -1.0,
              "fieldCoverage": 0.98305,
              "fieldCoveredArea": 21.1808419
            }
          ]
        }
      ]
    }
  }
}
```

## 3. Requête getYieldDatasets

### Demander la première page

```graphql
query GetPaginatedYieldDatasets {
    getYieldDatasets(
        filter:{
            fieldUuid: "a050fc6f-1df8-4997-ae5b-5d0afa03a1ba"
            pageSize: 2
        }
    ) {
        yieldDatasets {
            uuid
            nom
            fieldCoverage
            fieldCoveredArea(unit: HECTARES)
            number
        }
        lastEvaluatedKey {
            PartitionKey
            SortKey
            TagString
        }
    }
}
```

### Réponse de la première page

```json
{
  "data": {
    "getYieldDatasets": {
      "yieldDatasets": [
        {
          "uuid": "08f0fee4-daf4-4a98-97e5-660b7b6cfbeb",
          "name": "CALIBRATE-CLEAN-YieldCORN2017",
          "fieldCoverage": 0.97578,
          "fieldCoveredArea": 21.024173,
          "number": 14657
        },
        {
          "uuid": "2b4fbd15-c961-49c8-8cc2-3031397d0380",
          "name": "CALIBRATE-YieldCORN2017",
          "fieldCoverage": 0.98791,
          "fieldCoveredArea": 21.285677,
          "number": 16200
        }
      ],
      "lastEvaluatedKey": {
        "PartitionKey": "FIELD-a050fc6f-1df8-4997-ae5b-5d0afa03a1ba",
        "SortKey": "YVDATA-2b4fbd15-c961-49c8-8cc2-3031397d0380",
        "TagString": null
      }
    }
  }
}
```

### Demander la page suivante

Les paramètres de pagination sont transmis via `lastEvaluatedKey`, en utilisant la valeur renvoyée dans la réponse de la première page ci‑dessus.

```graphql
query GetPaginatedYieldDatasets {
    getYieldDatasets(
        filter:{
            fieldUuid: "a050fc6f-1df8-4997-ae5b-5d0afa03a1ba"
            pageSize: 2
            lastEvaluatedKey: {
                PartitionKey: "FIELD-a050fc6f-1df8-4997-ae5b-5d0afa03a1ba",
                SortKey: "YVDATA-2b4fbd15-c961-49c8-8cc2-3031397d0380",
                TagString: null
            }
        }
    ) {
        yieldDatasets {
            uuid
            nom
            fieldCoverage
            fieldCoveredArea(unit: HECTARES)
            number
        }
        lastEvaluatedKey {
            PartitionKey
            SortKey
            TagString
        }
    }
}
```

### Réponse de la page suivante

```json
{
  "data": {
    "getYieldDatasets": {
      "yieldDatasets": [
        {
          "uuid": "465769d3-14dd-419f-9740-fb230c0505fd",
          "name": "YieldSbean2018_reupload",
          "fieldCoverage": 0.92874,
          "fieldCoveredArea": 20.0107663,
          "number": 9073
        },
        {
          "uuid": "73d247ad-c45b-47a5-b94d-a2eb502857fe",
          "name": "CLEAN-YieldCORN2017 before build",
          "fieldCoverage": 0.98305,
          "fieldCoveredArea": 21.1808419,
          "number": 14709
        }
      ],
      "lastEvaluatedKey": {
        "PartitionKey": "FIELD-a050fc6f-1df8-4997-ae5b-5d0afa03a1ba",
        "SortKey": "YVDATA-73d247ad-c45b-47a5-b94d-a2eb502857fe",
        "TagString": null
      }
    }
  }
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.geopard.tech/geopard-tutorials/fr/docs-api/vue-densemble-des-requetes-de-lapi-geopard/16.-requete-obtenir-yielddatasets.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
