Skip to content

Mating registration (Fangskráning)

Works for both regions

Mating registration is fully functional for both Iceland and Denmark — no Fjárvís-related restriction was found in the screen itself or in FangService.


1 · Open mating registration

On the Dashboard, under "Matings", a list of registered matings opens. If the list is empty you'll see "No mating records". Tap + to start a new registration.

2 · Fill in the form

Field Required?
Mating date (can't be more than a year in the past, or in the future) Yes (defaults to today)
Ewe Yes — search field limited to ewes
Ram (optional) No — search field limited to rams
Comments No

Once you select the ewe, a panel with her previous notes appears below the field.

Lock the ram between registrations

Next to the "Ram" heading is a lock icon (only shown when creating a new record, not when editing). When locked, the selected ram is kept after saving a mating, so you can register the same ram against several ewes in a row without re-selecting him each time. The date always stays as-is between saves regardless of the lock — only the ewe field clears automatically.

Tap "Save mating".

Scanning to select the ewe or ram

If an EID reader is connected (see Connect an EID reader to the app), a scan fills whichever field is empty first: if the ewe isn't selected yet, the scanned animal goes there; if the ewe is already selected but not the ram, it goes into the ram field.

No error message if the tag isn't found or both fields are full

Unlike other screens in this series (e.g. animal search or weight registration), mating registration shows no feedback at all if a scanned tag doesn't match any animal, or if both the ewe and ram fields are already filled — the scan simply does nothing, with no message. This is the actual current behavior of the code, not a description of planned functionality.


What happens to the data afterward

If a ram was recorded for a mating, he's automatically suggested as the mating ram when the same ewe is later selected in birth registration (FangService.getMatingRamForEwe). The mating record itself is then linked to the birth record in the database once that birth is created.

No safeguards against mistakes

The code doesn't guard against duplicate matings for the same ewe on the same day, doesn't stop the same animal from being picked as both ewe and ram, and doesn't check whether the ewe is already recorded as mated. Review your entries yourself.

What's next

After a mating is registered, the natural next step is recording a pregnancy scan (fósturvísir) once one is available — it confirms the expected number of lambs and later shows up as a suggestion in birth registration. That's a separate screen and will get its own guide later.


Based on lamb41/lib/screens/fang/add_fang_screen.dart, fang_list_screen.dart, and lamb41/lib/services/fang_service.dart. See also Connect an EID reader to the app and Birth registration.