
...another idea would be to have a schedule hierachy...
not knowing your business, but I would assume that the pens are grouped in
some logical manner ... spatially ... by a work area or work zone or
something ... similar to Employees in a company ... company, division,
department ... this allows you (the programmer) to form some type of
relationship between groups of pens
So, ... saying this and based on the following assumations... here is what I
am trying to say.
Assume:
many cattle feeding yards per install (top of the pen 'grouping')
each yard is broken into work zones.
each pen belongs to 1 work zone.
Now, you would create the yards (yard A, yard B, yard C, ...)
Now, you would create all the Work Zones in yard A (WZ A01, WZ A02...), yard
B (WZ B01, WZ B02) and so on for each yard Come up with some type of naming
convention.
Now, you assign each pen to a work zone...
So, you now have your pens organized by logical units of work...or
management units.
Now, for each work zone, you would schedule your pens for feeding ...
relative to the parent work zone.
Now, for each yard, you would schedule each work zone...relative to the
parent yard.
Now, you would schedule each yard.
This way, when you are 'rescheduling' feeding patterns (for what ever
reason, mix it up for the farmer ... i do not know...), you can easily
reschedule BLOCKS of pens without having to touch or move every single pen.
This will only work if pens can be logically grouped and remained grouped.
Otherwise, if the user is constantly having to move pens from one work zone
to another, in order to achieve the proper feed schedule, this approach many
cause them a bit of problem.
However, saying this, it is a more logical approach to help with the 'Pens
Feeding Schedule WorkFlow' ... chances are - intentionally or
unintentionally, the pens are grouped in some logical manner for improved
feeding efficiency. Identify this and mirror this in the program and you
will be ahead of the game.
Even if the farmer or client does not operate like this (or says he does not
operate like this), i would implement this structure anyways, because,
somebody will operate like this and this will be a good feature to have.
For the guy that does not, simply create 1 yard with 1 zone and assign all
the pens to that zone ... done!
Food for thought ... ooops stupid joke.
Jeff