Выбытие за год: доля, причина и первотёлки отдельно

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

Дмитрий Васин · 5 сентября 2026 г.

Что разбирается
Отчёт «Выбытие за год» в разделе «Стадо → Отчёты»
Откуда числа
lib/herd-analytics.ts, lib/movements.ts
Рядом
Структура по лактациям: тот же перекос с другой стороны

Что стоит в числителе и что в знаменателе

Доля выбытия — дробь, и обе её половины стоит назвать вслух, потому что ни одну из них нельзя угадать по подписи. Сверху — животные, у которых проставлена дата выбытия и она позже, чем год назад. Снизу — те же выбывшие плюс нынешнее живое поголовье. Ниже оба условия стоят так, как уходят в базу.

Числитель: выбыла за последние двенадцать месяцев
(a.disposal_date is not null and a.disposal_date > now() - interval '12 months')

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

Знаменатель: живые плюс выбывшие
a.archived is not true and (a.sex = 'female' and a.state = 'alive')

Отсюда берётся вторая половина знаменателя. Живая самка — это состояние «в стаде» и запись не в архиве: разные вещи, и нужны обе. Те же два условия стоят и над числителем, поэтому в дроби с обеих сторон только самки и только не архив.

Лактация выбывшей — счёт отёлов, а не номер из записи
(select count(*) from calvings k where k.animal_id = a.id and (k.event_type is null or k.event_type = 'calving'))

Номер в отёле ставит человек и иногда ошибается; счёт строк ошибиться не может. По этому же выражению животное попадает в число первотёлок.

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

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

Что важно знать до всякого сравнения: числитель и знаменатель посчитаны по разным множествам, хотя пол и архив у них общие. Сверху — выбывшие за год самки. Снизу — они же плюс живые самки, то есть вместе с тёлками и телятами. Это не «доля коров, выбывших за год»; это отношение потерь ко всему женскому поголовью вместе с ремонтом. Хозяйство, где тёлок держат много, получит долю ниже соседа при тех же потерях коров. Быки в дробь не входят ни сверху, ни снизу — прежде входили сверху, и продающее бычков хозяйство видело завышенную долю.

Почему окно ровно год

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

Год выбран ещё и потому, что выбытие сезонно. Летом уходят по ногам и по жаре, зимой — после отёлов; квартал поймал бы сезон и выдал его за тенденцию. Двенадцать месяцев содержат каждый сезон ровно один раз, поэтому окно и не короче.

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

Почему первотёлки вынесены отдельным числом

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

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

Второй довод — диагностический. Общая доля выбытия говорит о стаде в целом и меняется медленно: в ней смешаны старение, продажи, болезни. Выбытие первотёлок говорит об одном участке работы и меняется быстро, потому что первотёлки этого года — прямое следствие того, как их выращивали два года назад и от кого получили. Это самая быстрая обратная связь, какая есть в отчётах по стаду, — быстрее только отчёт по ремонтному молодняку, который смотрит на тех же тёлок ещё до отёла.

Что именно попадает в это число

Условие простое: у выбывшего животного не больше одного отёла. Значит, туда входят и те, у кого отёлов нет вовсе, — тёлки, выбывшие до первого отёла. Это сделано намеренно и защищено доводом: непокрытая стоимость выращивания у них не просто есть, она полная — животное не дало ни литра. Но подпись «из них первотёлок» этого не называет, и знать про неё стоит: в стаде, где падёж тёлок высок, плитка «первотёлки» покажет больше, чем отелившихся коров за ней стоит.

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

Почему эту долю нельзя понижать напрямую

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

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

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

Причины: откуда берутся и что делает пустая

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

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

Пустая причина не пропадает

Животное с датой выбытия и без ссылки на справочник попадает в таблицу строкой «Причина не указана». Оно не исчезает и не приписывается к «прочему». Это существенно: строка с пропусками стоит в таблице наравне с остальными и обычно оказывается в её начале, потому что сортировка идёт по числу голов. Отчёт таким образом сообщает не только состав потерь, но и качество их учёта, и делает это в одном месте.

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

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

Чего отчёт не видит: выбытие без даты выбытия

Весь отчёт стоит на одном поле — дате выбытия. Нет даты — нет строки, каким бы ни было состояние животного. А состояние в книге меняется четырьмя разными путями, и до недавнего времени не каждый из них эту дату проставлял.

Перемещение вида «Выбраковка» или «Падёж» переводит животное в выбывшее и ставит датой выбытия дату самого перемещения. Событие «выбытие» в ленте карточки делает то же самое и заодно записывает причину. Оба пути дату не перетирают: если она уже стоит, значит выбытие записали раньше, и первая запись честнее второй.

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

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

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

Структура по лактациям: тот же перекос с другой стороны

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

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

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

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

Ещё одна карточка на том же экране связана с выбытием сильнее, чем кажется: удой за 305 дней по группам лактации. Строгая выбраковка поднимает средний удой сама по себе — корова, выбывшая посреди лактации, свою последнюю запись в среднее так и не отдаст. Рост удоя вместе с ростом выбытия поэтому не два успеха, а один и тот же факт, названный дважды.

Пределы, названные до вопроса

Продажа и вынужденный убой стоят в одном числе. Отчёт считает выбытие, а не его смысл. Проданный племенной молодняк — выручка и признак хорошей работы; вынужденный убой — потеря. Различает их только проставленная причина, и если причины нет, обе попадают в одну строку «Причина не указана» и в одну долю. Хозяйство, торгующее племенными нетелями, увидит долю выбытия выше соседа, который не торгует ничем.

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

Ферма и группа содержания. Отчёт считает по хозяйству целиком, без деления по площадкам. Хозяйство с двумя фермами увидит одну долю на обе, и разница между ними — а она обычно и есть самое интересное — в этой цифре сложится и исчезнет.

В маленьком стаде доли не считаются. Это общее правило книги, и здесь оно тоже уместно: проверки по стаду не считают долю, пока записей меньше 20. Сам отчёт такого ограничения не ставит, но читать его стоит с той же меркой: в стаде из пятнадцати голов две выбывшие — это 13 %, а на самом деле две коровы.

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

Что низкая доля выбытия — хорошо. Она бывает признаком здорового стада, бывает следствием остановленной выбраковки, бывает следствием незаполненной даты выбытия. Три причины с противоположным смыслом дают одно и то же число, и различить их можно только за пределами этой карточки.

Что доля первотёлок в выбытии измеряет качество быков. Она измеряет всё сразу: выращивание, отёл, раздой, ноги, кормление и подбор. Разделить это можно причинами и возрастом первого отёла, а не самой долей. Как возраст первого отёла связан с судьбой первотёлки — в отдельном разборе.

Что таблицу причин можно сравнить с чужой. Справочник общий, а привычка заполнять — нет. У одного хозяйства «бесплодие» стоит там, где у другого «прочее», и рейтинг по строкам таблицы сравнил бы не стада, а двух зоотехников. Сравнивать осмысленно только со своим прошлым годом, при неизменившемся порядке заполнения.

Что за высоким выбытием стоит болезнь стада. Оно бывает и решением: хозяйство, обновляющее стадо импортом, выбраковывает много и намеренно. Отличить обновление от беды помогает воспроизводство — если коров хватает на замену, отбор идёт добровольно. Четыре числа этого отчёта разобраны рядом.

Как отчёты по стаду устроены в самой книге и куда ведут переходы от числа к списку животных — на странице «Отчёты по стаду».

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

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

Возраст первого отёлаСколько месяцев было тёлке при первом отёле. Ориентир — 22–25 месяцев при условии 400 кг живой массы к 14–15 месяцам.
Лактация за 305 днейУдой за первые триста пять дней лактации. Число, которое делает лактации разной длины сравнимыми между собой.
Сервис-периодДни от отёла до плодотворного осеменения — того, от которого корова стала стельной.

Источники

Другие разборы

База сравнения: что стоит за строкой CDCB-2025-metricНабор Истхэма: 396 471 корова, на которых стоит полоса сравненияПочему наш индекс нельзя сравнивать с NM$ и TPIОценка экстерьера: как её ведут в мире и что взято у насМетод контроля: почему два одинаковых «9 640 кг» несравнимыНадёжность оценки: откуда берётся 0,91 и чего она не значитИнбридинг по неполной родословной: что считается и что пропускаетсяВозраст первого отёла: почему российский оптимум расходится с западнымИндекс поставщика семени: что в нём не названоМалочисленные породы: что даёт книга там, где нет геномикиФайлы ФГИАС ПР: фундамент национального индекса и что книга умеет сегодняРемонтный молодняк: почему тёлка «в передержке» — не упрёк, а счётВоспроизводство: четыре числа, которые нельзя читать порозньЗдоровье вымени: почему среднее по стаду лечит не техГенетический тренд и инбридинг: что показывает наклон линииУдой по группам лактации: что сравнивается и с чемСуточный удой — не контрольная дойкаКто присылает данные в книгу