Шаблон «Лактация: молочная продуктивность»

Почему лактация не уезжает, пока не заполнено каждое число

Строка — одна законченная лактация со своим номером, датой отёла и дойными днями. Здесь обязательно всё, кроме одной служебной колонки, и неполная строка придерживается, а не уезжает с пустой ячейкой.

Колонок в шаблоне
13
Из них кладёт книга
9
Замер по живой базе
30 августа 2026

Что это за шаблон

Шаблон отвечает на вопрос, сколько корова дала за лактацию: удой общий и за 305 дней, массовая доля жира и белка в процентах и они же в килограммах. Каждая лактация — отдельная строка со своим номером и датой отёла, с которой она началась.

Файл собирается кнопкой в кабинете; он же входит в разовый прогон export:fgias.

Обязательным здесь считается всё, кроме «Идентификатора ФГИАС ПР». Основание прямое: в шаблонах, где поле необязательно, лист «Описание контракта» пишет это словом, а в этом шаблоне такой пометки нет ни под одной колонкой. Чтение строгое намеренно — ошибиться можно в обе стороны, и цена разная: лишняя придержанная строка стоит записи в отчёте, а лишняя отправленная — отказа всего файла, причём молча и без указания колонки.

Обязательные колонки

Базовый номер ФГИАС ПР
Номер животного в реестре. Приходит обратным файлом после сдачи «Основных сведений».
Идентификатор учётной системы
Наш неизменный ключ животного. Проставляется книгой сам.
Номер лактации
Сквозной по жизни коровы, целым числом.
Дата отела
День, с которого лактация началась, в виде ГГГГ-ММ-ДД.
Дней
Дойные дни. В шаблоне колонка названа именно так — одним словом, а не «Дойных дней»; искать в своём файле надо её.
Признак
Ключ справочника «Признаки молочной продуктивности», в котором ровно два значения: наивысшая и средняя.
Удой, кг
За всю лактацию. Контракт объявил колонку целым числом.
Удой 305, кг
За первые 305 дней, тоже целым.
Жир, %
Массовая доля жира за лактацию.
Жир, кг
Молочный жир в килограммах — отдельная колонка, а не расчёт реестра.
Белок, %
Массовая доля белка.
Белок, кг
Молочный белок в килограммах. Последняя колонка шаблона.

Что кладёт книга

Номер лактации, дату отёла, дойные дни, удой общий и за 305 дней, проценты и килограммы жира и белка книга берёт из своих лактаций как есть. Наш ключ уходит в «Идентификатор учётной системы».

«Идентификатор ФГИАС ПР» уезжает пустым, и это не пробел: колонка нужна для обновления уже существующей записи, а у новой её нет и быть не может — так и показывает лист «Пример» самого шаблона.

«Признак» проставляется нашим прочтением справочника, и это единственная догадка во всей выгрузке книги. Справочник знает «наивысшую» и «среднюю», а строка шаблона — конкретная лактация, которая «средней» быть не может. Мы читаем это так: лучшая лактация животного помечается наивысшей, остальные средними; лучшая выбирается по удою за 305 дней, а при его отсутствии по общему удою, и равенство разрешается меньшим номером — чтобы файл не менялся между прогонами при одних и тех же данных. Догадка печатается предупреждением в отчёте каждого прогона и выключается ключом --priznak нет.

Удой и дойные дни объявлены контрактом целыми, а у нас хранятся дробными. Округление поэтому неизбежно, и происходит оно не молча: счётчик округлённых значений печатается в отчёте выгрузки.

Где спотыкаются

Отказ реестра называет колонку, а не причину. Ниже — что за ним стоит.

Придержано всё до единой строки, причина — «Базовый номер ФГИАС ПР»
Нормальное состояние первой выгрузки: базовых номеров нет ни у кого, пока не сданы «Основные сведения» и не загружен обратный файл. Заслон стоит первым и обрывает разбор строки, поэтому отчёт печатает рядом прогноз — тот же разбор с подставленным ключом, чтобы было видно, что ещё не заполнено. Подставленный ключ в файл попасть не может: он не похож на uuid и читается как ПРОГНОЗ-НЕ-ДЛЯ-ФАЙЛА.
Причина — «Жир, кг» или «Белок, кг»
Самая частая настоящая причина после базового номера. Проценты в книге есть почти всегда, а килограммы вносят реже: это отдельные колонки шаблона, и реестр ждёт их заполненными наравне с процентами.
Причина — «Признак»
Так выглядит выгрузка, запущенная с ключом --priznak нет. Поле обязательное, и без него не уезжает ни одна строка. Выключать догадку имеет смысл только тому хозяйству, которому в поддержке реестра ответили иначе.
Причина — «Дата отела»
Дата не начинается с ГГГГ-ММ-ДД. Книга не подправляет такое значение и не пытается разобрать его по-своему: строка с непонятной датой придерживается.
Реестр принял, но числа спорят с остальным стадом
До выгрузки это ловят проверки книги. Удой вне границ от 500 до 25 000 килограммов, жир вне 2,0–6,5 % и белок вне 2,0–5,0 % почти всегда означают не рекорд, а перепутанные колонки или единицы измерения; отдельное правило ловит стадо, где часть удоев заведена в килограммах, а часть в центнерах, и ещё одно — животных, чей удой отличается от медианы своего же стада втрое.

Чего книга не кладёт и почему

Не хватает двух вещей, и обе не в наших руках. Первая — базовый номер животного: он приходит обратным файлом после сдачи «Основных сведений», и до этого лактации придержаны все до одной.

Вторая — «Признак». Мы его проставляем, но проставляем своим прочтением справочника, а не знанием. Второе возможное прочтение — что реестр ждёт по две строки на животное, одну наивысшую и одну усреднённую по всем лактациям, — мы отвергли потому, что оно сворачивает данные необратимо: из наших строк вторые собираются, из свёрнутых наши уже нет. Уточнить это может только поддержка реестра, и вопрос ей задан.

Чего этот шаблон не закрывает

Этот шаблон не отчитывается за контрольные доения. Реестр спрашивает их отдельно — по строке на каждый замер, с суточным удоем, соматическими клетками и лабораторией; сдав лактации, доения вы не сдали.

Отёл, которым лактация началась, здесь только датой. Само событие — отёл, аборт или запуск — сдаётся своим шаблоном, и номер лактации в нём тот же, что и здесь.

Производные величины реестр тоже спрашивает отдельно: межотельный период и сервис-период идут своими шаблонами и в книге не хранятся, а считаются из отёлов и осеменений.

Слова этой страницы

Определения с нашими числами и с тем, чего каждое слово не означает.

Удой за лактациюСколько корова надоила за всю лактацию, в килограммах. Границы правдоподобия — 500…25 000 кг.
Лактация за 305 днейУдой за первые триста пять дней лактации. Число, которое делает лактации разной длины сравнимыми между собой.
Дойные дниСколько дней корову доили в эту лактацию. По ним книга узнаёт законченную лактацию, когда дата окончания не проставлена: 305 дней и больше.
Массовая доля жира и белкаПроцент жира и белка в молоке по анализу пробы. Границы правдоподобия: жир 2,0…6,5 %, белок 2,0…5,0 %.
Метод контроля продуктивностиЧем получено число, которое хозяйство называет удоем: кто снимал показания, как часто, какие доения вошли и как брали пробу.

Читать дальше