# 16. Запрос: получить YieldDatasets

## Обзор

Получите все наборы данных урожая (YieldDatasets) для выбранного поля.&#x20;

Наборы данных урожая можно получить с помощью общих GraphQL-запросов:

1. `getFarms` используя полную иерархию Ферма > Поле > YieldDataset с её фильтрами
2. &#x20;`getFields` из связанного поля и иерархии Поле > YieldDataset
3. getYieldDatasets с широким набором фильтров и постраничной навигацией

{% hint style="warning" %}
Набор данных «YieldDataset» должен быть загружен заранее.
{% endhint %}

## Сущность набора данных урожая

YieldDataset включает множество атрибутов. GraphQL позволяет запрашивать только необходимые поля, что существенно уменьшает размер запроса и ответа. Подробные объяснения для каждого атрибута приведены ниже в тексте.

{% hint style="info" %}
Атрибуты в «YieldDataset», отмеченные ниже как *полученные из метаинформации* являются необязательными. Они выводятся из метаинформации набора данных, которая не обязательно присутствует в каждом YieldDataset.
{% endhint %}

{% hint style="success" %}
Подробности об `geoMaps`  атрибуте для YieldDataset доступны [здесь](/geopard-tutorials/ru/dokumentaciya-api/geo-konechnye-tochki-dlya-dostupa-k-prostranstvennym-dannym/wms-poluchit-rastrovye-izobrazheniya-sloyov-prostranstvennykh-dannykh/12.-yielddatasetsmap.md).
{% endhint %}

{% hint style="success" %}
Подробности о том, как запустить Очистку и Калибровку для YieldDataset, доступны [здесь](/geopard-tutorials/ru/dokumentaciya-api/obzor-zaprosov-api-geopard/84.-izmenenie-otkalibrovat-i-ochistit-yielddataset.md).
{% endhint %}

```graphql
{
  uuid
  name #шаблон "<OperationType> <YYYY-mm-DD>" Обработка почвы (Tillage)
  number #общее количество геообъектов
  geometryType #Многоугольники (Polygons) или Точки (Points)
  totalCoveredArea(unit: HECTARES) #общая площадь всех геометрий (важно для многоугольников)
  fieldCoverage #процент поля, покрытый набором данных
  fieldCoveredArea(unit: HECTARES) #объединение геометрий (без дубликатов)

  attributes
  fullAttributes { #полные сведения по каждому атрибуту
    name #ссылка на статистику >> атрибут
    transliteratedName
    fullName #корректное человекочитаемое имя
    unit#единицы измерения
  }

  usedMachines { #использованные машины, которые указаны в метаинформации
    id
    serial
    operatorId
  } 

  createdDate #дата и время создания сущности в GeoPard
  updatedDate #дата и время последнего обновления
  operationId
  operationType
  operationFileDate #дата и время создания файла операции берутся из метаинформации 
  operationStartDate #начало операции берётся из метаинформации
  
  statistics { #распределение статистики для каждого атрибута
    attribute
    min
    max
    avg
    mdn
    var
    std
    sum
  }
  
  cropName #название культуры берётся из метаинформации
  cropToken #токен культуры (в верхнем регистре) берётся из метаинформации

  appliedCorrections #список применённых коррекций в указанном порядке
  appliedCorrectionsVersion #версия использованного алгоритма коррекции

  geoMaps {
    url
    shortName #варианты префикса: raw, thumbnail_raw, processed, thumbnail_processed
    hexColorCodes
    classes
  } 
}
```

## 1. Запрос getFarms

### Запросить

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

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

{% endcode %}

### Ответ

```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. Запрос getFields

### Запросить

{% 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
        название
        number
        geometryType
        totalCoveredArea(unit: HECTARES)
        fieldCoverage
        fieldCoveredArea(unit: HECTARES)
      }
    }
  }
}
```

{% endcode %}

### Ответ

```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. Запрос getYieldDatasets

### Запрос первой страницы

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

### Ответ первой страницы

```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
      }
    }
  }
}
```

### Запрос следующей страницы

Параметры постраничной навигации передаются через `последнийОцененныйКлюч`, используя значение, возвращённое в ответе первой страницы выше.

```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
            название
            fieldCoverage
            fieldCoveredArea(unit: HECTARES)
            number
        }
        lastEvaluatedKey {
            PartitionKey
            SortKey
            TagString
        }
    }
}
```

### Ответ последующей страницы

```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/ru/dokumentaciya-api/obzor-zaprosov-api-geopard/16.-zapros-poluchit-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.
