Cattle admin workflow

Good day,

I am totally new to farmOS and testing it on Farmier. I would appreciate some pointers from experienced users. All tough I could figure out a lot of my questions by checking the farmOS website and this forum, some still remain.

Until now I handle our cattle herd via a spread sheet, so I suppose some of my brain block will originate from the way I am used to handling the data via the spread sheet.

  • Filtering for groups and returning to filtered view
    • I tried using the animal page to filter through the cattle which I have grouped in ie. heifers, weaners etc. This was not possible so I moved into the group page where I could access the assets allocated to the group. Assigning logs that concern all assets was pretty straight forward.
    • However if I wanted to use the group as a kind of a filter and apply individual changes to some assets in the group I always had to enter the group again to adjust the next asset.
    • Is there a possibility to return to the group after editing an asset or saving a filter for groups in the animal view?
  • Assigning one of the possible ID’s as the asset name
    • We use a farm ear tag number for calves. With weaning they additionally receive a RFID ear tag. With birth the farm ear tag is assigned as name of the asset in farmOS, but once we insert the RFID tag the reference/ name needs to change to the RFID tag number. Copy&Pasting between the ID field and name field seems a great way to introduce errors.
    • Maybe an checkbox next to the IDs to define “is name”?
    • or adding a column for ID in the animal view columns?
  • Batch castrating/ sterilising
    • where do you advise on logging this event, medical or activity?
    • Is it possible for the log input to automatically change the associated assets to “is sterile”?
  • Pregnancy check
    • which log is advisable?
    • how do you efficiently record the outcome of the check on an individual asset level so that it is easy to evaluate/ filter later for pregnant/ non-pregnant cows?
  • Birth Quick form
    • We use multiple sires at the same time to cover a cow herd. We therefore don’t necessarily know who is the sire of a calf.
    • any suggestions how to enter multiple assets as “father” in the birth quick form?

I hope you will have some patience with me :wink:

As a side note: I have never coded before, so terms like API, GUI, Python, node-red are only vaguely familiar or came to my attention while reading through this group…

greetings

1 Like

Welcome to the forum

I don’t do cattle, but for the first issue you can benefit of using several browser tabsl. Ctrl+click in farmOS will open the page in a new tab. You can swap tabs with Ctrl+tab and back with Ctrl+Shift+tab
You can propably to a splitscreen to, and one browser window on each side of the monitor.

You can also bookmark filtered views in the browser, and put the bookmarks in the browsers toolbar.

Not sure what’s available on Farmier hosting, but there exist a shorcut/favorites module you might find useful.

A little like me then.. One step at a time, and you’ll get there too if you want.

Thanks Pat, I will try the dual tab approach.

Greetings

1 Like

Welcome @fja! :waving_hand:

I started some work on adding this filter a while back, but it has been collecting dust for some time now. I’ll see if I can dig it up… in the meantime it sounds like you found the work around (go to the group itself to see a list of its members).

Open to pull requests for this! We can add `?destination=" tags to form URLs which redirect you back to another page after submission. Probably just a matter of reviewing where/how/when to apply that tag (and make sure it doesn’t conflict with someone else’s workflow).

Opening lots of tabs (as @pat suggested) is a simple approach too. :smile:

Hmm if it were me I would probably whip up a simple API script that took a CSV of old => new names and made all the updates I wanted. Requires a bit of programming (and/or LLM tokens), but very flexible! Once you dip your toe into the API world the possibilities will unfold! :rocket:

Or if this is a common feature that others could use, then perhaps a new module with some UI. This is the best path to making a stable/standardized/user-friendly interface for common needs, but also the highest development and maintenance burden.

That’s up to you (this would be a “convention”), so just pick one and stick to it. I would probably go “medical” myself - it’s a bit more specific than “activity”, which is sort of a catch-all log type.

Not yet, but that’s something we’ve discussed: Generalizing Log-based Asset Attributes

That thread is a brainstorm for using logs to set/unset arbitrary asset attributes (kind of like how we use logs to compute “location” of asset). If we implemented a general approach to that, then it would probably mean we could start using it for is_sterile instead of a dedicated field.

Others have experimented with linking things programmatically in module logic. For example, the Asset Termination module has some logic to automatically “archive” an asset if you create a log that “terminates” it.

Observation log would work for this, but “Activity” could also work, depending on how you think about it. Again… personal conventions. :slight_smile:

Either way, maybe consider developing a set of Log Categories that you can add to these logs, to make it easier to find/filter later.

Ah interesting question. You’re right: the birth quick form has an optional father field, but it only accepts a single value. That’s only enforced at the form level - an asset can have as many parents as you want, technically speaking.

If there is agreement that allowing multiple fathers makes sense (and everyone agrees the convention means: “the father may be any of these, we don’t know”), then it would be a very simple change to allow multiple in the form.

Curious if anyone else has thoughts on this.

I forgot to explain what “conventions” are… :smile:

I have had use cases come up for this once or twice in the past, so it would be good to have. I don’t see a downside initially looking at it.

2 Likes

Pull request: Allow referencing multiple genetic fathers in birth quick form by mstenta · Pull Request #1101 · farmOS/farmOS · GitHub

1 Like

Welcome.

I was having similar issues and just wrote a module for herd animals that shows the stages from:

Calf->Yearling->Heifer->Cow and groups by that when you click on the life stage since I’m small.

I added 2 additional animal fields I believe. 1 for life stage and the other for disposition (leased etc).

I am small and only sale in-state so I’m not required to use RFID and avoid it. That would be an easy quick form with the tablet in hand in the chute. I believe you can have multiple tags for animals so you could just add it and not replace it.

I use the name field i think on my herd pages.

I also have an overview dashboard with all the info and more…I’m still tweaking it:

Hopefully this gives you an idea how you can organize your info and build it out how you want it.

I went the route for chute work as a quick form and put all my stuff on there for like castration etc. with presets that repopulate to speed it up when working.

FarmOS is basically a free canvas to organize it however you choose. I built a table view dashboard for cattle simply because i wanted to see the whole herd as well as by pasture.I haven’t programmed it to go back to the same page after updating it yet. I just use quick forms in the field to make changes like that.

Hopefully this gives you an idea. You can steal my in-progress/organization if you want. It’s on my github.

3 Likes