Skip to main content

Import format

This page describes which files the import accepts and how Puelas interprets each column.

Accepted files​

  • CSV exports from Tru-Test (Datamars) indicators, for example XR5000 or Data Link.
  • CSV exports from Gallagher Animal Performance.
  • Any CSV with a header row and at least one data row. Unknown columns are taught once in the Review step.
FeatureDetail
Extension.csv or .txt
Separator; or ,, detected from the header row
EncodingUTF-8 (with or without BOM)
Sizeup to 8 MB per file, up to 10 files at a time

Values are read without leading or trailing spaces. Stray quotation marks inside a value, which some indicators write, are read as text.

:::note Excel spreadsheets .xlsx files are not imported directly. Export them to CSV from Excel before importing. :::

Data Puelas infers​

Name​

It comes from the file name, without the extension, without the Tru-Test_ prefix and without the leading YYYY-MM-DD_ date. Underscores become spaces.

Tru-Test_2025-06-11_LOTE.F-MADRE.csv → LOTE.F-MADRE

Date​

It is the first value of the Date column, in YYYY-MM-DD format. If the file has no such column, today's date is proposed.

Session kind​

It is decided by the file's columns, in this order:

If the file has…Kind
a DX PRENEZ columnPalpation
an ECO column followed by two digits (for example ECO25)Ultrasound
a GDR columnPre-breeding
CHIP in the name, or a SEXO columnWeaning
none of the aboveWeighing

The name, date and kind can be corrected before confirming.

Recognized columns​

Each organization starts with these rules. Headers are compared without distinguishing uppercase from lowercase.

ColumnDataValues
EIDElectronic tag
VIDVisual tag
LOTE ORIGENLotLooks up the lot by name, or creates it.
FECHA NACIMBirth month and year08/2025 or 8/2025 → month and year; 2025 → year only.
PESOWeightkg
SEXOSexH → Female; M → Male
RAZABreedAN → Angus; AC → Red Angus
PADRESire and conceptionREPASO → natural service, no sire; GEORDIE, CARBONO, TITAN → that sire, by artificial insemination; any other value → that sire.
GDRGDR and decision1 to 5 → that score and Keep; DESCARTE → Cull
DX PRENEZPregnancy diagnosisPRENADA → Pregnant; VACIA → Empty; COLA → Carrying, late
ECO25, ECO26, …Diagnosis and serviceP IATF → Pregnant by artificial insemination; P REPASO → Pregnant by natural service; VACIA → Empty
NOTANote and decisionNO, N0 (with a zero), NO VA → note and Cull; any other text → note
Live Weight (kg)WeightGallagher
NotesNoteGallagher
Average Daily Gain (kg/d), Overall Daily Gain (kg/d)IgnoredPuelas calculates the gain on its own.
Date, TimeSession date

Rules learned in the Review step are added to these.

Animal data and session data​

  • Animal data: electronic tag, visual tag, sex, breed, sire, how it was conceived, lot, birth year and month. They are stored on the animal; the most recent import updates them. An empty cell never deletes a piece of data.
  • Session data: weight, GDR, keep or cull, pregnancy diagnosis, how it was served, note. They are stored as a reading for that day.

How it was conceived is how the animal itself was conceived; how it was served is how the calf it carries was conceived.

Validations​

SituationResult
Row without an electronic tagRejected.
Electronic tag repeated in the same fileThe first is imported; the second is rejected.
Weight under 20 kg or over 1200 kgThe row is rejected. An empty weight is not an error.
File already imported (same content)Skipped.
Empty file or file without data rowsCan't be read.

Example​

Header and one row from a Tru-Test export of a palpation:

EID;VID;Date;Time;DX PRENEZ;ECO25;NOTA
032 010002684911;4761;2026-03-27;08:12:40;VACIA;P IATF;

Puelas imports it as a Palpation dated 27/03/2026. DX PRENEZ records Empty. ECO25 is a copy of the previous ultrasound's result: if it matches what was recorded then, it generates nothing new; if it doesn't match, you are warned and what was recorded then stands.