Copy and update user guide from 1.x docs to 2.x.
This commit is contained in:
parent
2c55037ed2
commit
ad9b4f81c7
|
@ -0,0 +1,250 @@
|
|||
# Managing Assets
|
||||
|
||||
All the important and valuable things on your farm are represented as "Assets"
|
||||
in farmOS. Asset types include Land, Plants, Animals, Equipment, Structures,
|
||||
etc. Assets can be accessed from "Records > Assets" in the toolbar.
|
||||
|
||||
Assets can be archived, so they do not show in farmOS unless you specifically
|
||||
want to see them. For example, when you are done harvesting a "Plant" Asset,
|
||||
you can mark it as "archived" to hide it in your Asset lists. Archived records
|
||||
can be retrieved using the "Filters" options on Asset listing pages.
|
||||
|
||||
Assets can be designated as "locations", which will cause them to show up in
|
||||
the "Locations" hierarchy (available from the toolbar). It also allows other
|
||||
Assets to be moved to them. For example, a "Plant" or "Animal" Asset can be
|
||||
moved to a "Land" Asset. The hierarchy of location Assets is determined by
|
||||
their "parent" field relationships.
|
||||
|
||||
For more information on Asset location, refer to the
|
||||
[location logic](/model/logic/location) section of the
|
||||
[farmOS data model](/model) docs.
|
||||
|
||||
Assets can also be cloned by selecting one or more in a list and clicking the
|
||||
"Clone asset" button that appears at the bottom. This will clone the Asset
|
||||
record(s), but will not clone the Logs that are associated with them.
|
||||
|
||||
For more information on Asset records, refer the [Assets](/model/type/asset)
|
||||
section of the [farmOS data model](/model) docs.
|
||||
|
||||
## Asset types
|
||||
|
||||
farmOS comes with a number of Asset types, summarized below. Additional types
|
||||
can be added via modules.
|
||||
|
||||
### Land
|
||||
|
||||
Land Assets represent the fields, properties, beds, paddocks, etc that are
|
||||
being managed. They can be mapped and arranged hierarchically to make
|
||||
navigation easier, and they can be referenced by Logs to record events,
|
||||
activities, inputs, observations, etc. If you perform soil tests, these
|
||||
can be stored as "Lab test" Logs associated with land Assets for easy
|
||||
access.
|
||||
|
||||
### Plants
|
||||
|
||||
farmOS can be used for very fine-grained crop planning and record keeping. It
|
||||
can be used by large or small operations, nurseries, seed producers, breeders,
|
||||
and home gardeners.
|
||||
|
||||
The Plant Asset type can be used to represent groups of plants (eg: a field of
|
||||
corn, or a group of seedlings), or it can be used to represent individual plants
|
||||
(eg: in the case of nurseries).
|
||||
|
||||
When you create a plant Asset, you will need to define what **crop/variety** it
|
||||
is. Crops/varieties represent the various **types** of plants you grow. These
|
||||
can be very general crop names (eg: "Broccoli") or very specific breeds or
|
||||
varieties (eg: "Belstar F1 Organic Broccoli"). Your Crops/varieties taxonomy
|
||||
can be managed/organized as a hierarchy in Administration > Structure >
|
||||
Taxonomy.
|
||||
|
||||
Plants are the specific Asset you are growing, whereas crops/varieties are terms
|
||||
used to categorize and define plant types. You may have multiple plant Assets of
|
||||
the same crop/variety. Consider the following example:
|
||||
|
||||
> 1 pound of red lettuce seed was purchased and seeded 4 times over the course
|
||||
> of 8 weeks (every two weeks).
|
||||
|
||||
In this example, there would be 4 plant Assets with a crop/variety of "Red
|
||||
lettuce":
|
||||
|
||||
- 2017 Red lettuce planting 1
|
||||
- 2017 Red lettuce planting 2
|
||||
- 2017 Red lettuce planting 3
|
||||
- 2017 Red lettuce planting 4
|
||||
|
||||
The way you name your Assets is up to you - this is just an example. Including
|
||||
the year at the beginning and the planting number at the end is helpful when
|
||||
you are trying to distinguish plant Assets from one another.
|
||||
|
||||
[Seeding](/guide/logs/#seedings) and [Transplanting](/guide/logs/#transplantings)
|
||||
Logs can be created in reference to plants.
|
||||
|
||||
If you are direct seeding into the field, you may only use the seeding Log. If
|
||||
you are purchasing starts from another grower, you may only use the
|
||||
transplanting Log. If you are starting your plants in a greenhouse and then
|
||||
planting them out in the field, you may use both a seeding and transplanting
|
||||
Log.
|
||||
|
||||
Together, seeding and transplanting Logs allow you to keep track of where a
|
||||
plant has moved throughout its life. For more general information on tracking
|
||||
the location of Assets in farmOS, refer to the overview of
|
||||
[movements and location](/guide/location).
|
||||
|
||||
### Animals
|
||||
|
||||
farmOS can be used to manage animal/livestock records.
|
||||
|
||||
When you create an animal Asset, you will need to define what **species/breed**
|
||||
it is. Species/breeds represent the various **types** of animals you manage.
|
||||
These can be very general names (eg: "Cattle") or more specific breeds (eg:
|
||||
"Jersey cattle"). Your Species/breeds taxonomy can be managed/organized as a
|
||||
hierarchy in Administration > Structure > Taxonomy.
|
||||
|
||||
Animal Assets can be used to represent either individual animals, or multiple
|
||||
animals (as a head count inventory, adjustable via Logs). This is useful in
|
||||
cases where animals don't need to be tracked individually, for instance with
|
||||
flocks of birds or heads of cattle, where individual tracking/tagging is not
|
||||
necessary for record keeping purposes.
|
||||
|
||||
For more information, see the guide to [inventory tracking](/guide/inventory)
|
||||
in farmOS.
|
||||
|
||||
Animals can also be organized into groups using the "Group" Asset type. This is
|
||||
useful if you always manage certain animals together, as a herd or flock, for
|
||||
instance. It is also possible to assign animals to more than one group. This can
|
||||
be used in different ways to help manage large numbers of animals in farmOS.
|
||||
|
||||
> Q: Should I use inventory or groups for my animals?
|
||||
|
||||
This comes down to whether or not you need to maintain separate records for
|
||||
individual animals. If you do, then create a separate animal Asset for each
|
||||
animal, and you can optionally organize them into group Assets after that. If
|
||||
you don't need individual animal records, you can create a single animal Asset
|
||||
and use the inventory features to track a head count over time with Logs. Or,
|
||||
you could do both! Perhaps you have a herd (group Asset) with some individual
|
||||
animals, and some larger groups of animals (head count). It's just a matter of
|
||||
how granular you need to be with your record keeping.
|
||||
|
||||
Animals can be moved from place to place in farmOS using movement Logs. You
|
||||
can also filter your animal list down to a set of animals, select them all, and
|
||||
create a combined movement Log for all of them at once. Or, you can move the
|
||||
group Asset that contains animals (eg: a herd), and all the animal locations
|
||||
will be updated along with it. This is a great way to manage grazing records as
|
||||
you move animals from paddock to paddock.
|
||||
|
||||
For more general information on tracking the location of Assets in farmOS,
|
||||
refer to the overview of [movements and location](/guide/location).
|
||||
|
||||
[Medical](/guide/logs/#medical) and [Birth](/guide/logs/#births) Logs can be
|
||||
created in reference to animals.
|
||||
|
||||
### Equipment
|
||||
|
||||
farmOS can be used to manage equipment Assets on the farm.
|
||||
|
||||
[Maintenence Logs](/guide/logs/#maintenance) can be recorded alongside
|
||||
equipment.
|
||||
|
||||
When you are creating Logs in farmOS, you can also reference the equipment
|
||||
Asset(s) that were used to perform the activity. In combination with the
|
||||
"Assets" field on Logs, this allows you to distinguish which Assets
|
||||
**received** the action, and which equipment Assets **performed** it. These
|
||||
"equipment use" Logs will appear on the equipment Asset record in farmOS.
|
||||
|
||||
Suggested uses:
|
||||
|
||||
* Use activity Logs to record equipment use.
|
||||
* Keep track of equipment location via movement Logs.
|
||||
* Record oil changes, repairs, and inspections with maintenance Logs.
|
||||
* Track fuel usage or machine hours with input or observation Logs.
|
||||
|
||||
### Structures
|
||||
|
||||
Structure Assets can be used to represent buildings, greenhouses, and other
|
||||
permanent or movable structures on the farm.
|
||||
|
||||
Like equipment Assets, [maintenence Logs](/guide/logs/#maintenance) can be used
|
||||
to record when upkeep/repairs are performed.
|
||||
|
||||
Greenhouses can be represented as structure Assets, with Logs used to record
|
||||
activities and observations within them. This can be very powerful, especially
|
||||
when combined with sensors, data streams, notifications, and custom modules
|
||||
that communicate with actuators to automate fans, ventilation, and irrigation.
|
||||
|
||||
### Water
|
||||
|
||||
Water Assets can be used to represent fixed water features like lakes, ponds,
|
||||
and streams, or they can be used to represent fixed or movable irrigation
|
||||
systems. Equipment and Structure Assets can be used similarly, so it is up to
|
||||
you to decide how you prefer to organize things.
|
||||
|
||||
### Material
|
||||
|
||||
Material Assets can be used to track inventory of various materials.
|
||||
|
||||
For more information, see the guide to [inventory tracking](/guide/inventory)
|
||||
in farmOS.
|
||||
|
||||
### Seed
|
||||
|
||||
Seed Assets can be used to track seed inventory before it is used to create
|
||||
Plant Assets (via seeding Logs). Seeds share the same **crop/variety**
|
||||
taxonomy with plant Assets.
|
||||
|
||||
### Compost
|
||||
|
||||
farmOS can be used to manage all types of compost production activities. A
|
||||
generic "Compost" Asset type is provided, which can be used with various Log
|
||||
types to record activities, observations, inputs, harvests, etc. These compost
|
||||
Assets can be used to represent a compost pile,
|
||||
[windrows](https://en.wikipedia.org/wiki/Windrow_composting),
|
||||
[vermicompost](https://en.wikipedia.org/wiki/Vermicompost),
|
||||
[compost tea](https://soiltest.uconn.edu/factsheets/composttea.pdf),
|
||||
or any other form of production.
|
||||
|
||||
### Sensors
|
||||
|
||||
In addition to manually-entered records, farmOS also provides a framework for
|
||||
receiving data from automated environmental sensors. The Sensor Asset type can
|
||||
be used to represent individual sensor devices, which can provide one or more
|
||||
[Data streams](/model/type/data_stream).
|
||||
|
||||
A "Basic" data stream type is provided, which stores data in the local database.
|
||||
Add-on modules can be written to integrate with other data storage systems, or
|
||||
provide custom sensor integrations.
|
||||
|
||||
It is possible to assemble your own sensors with inexpensive components and
|
||||
send their data to farmOS without any soldering or programming.
|
||||
|
||||
### Groups
|
||||
|
||||
Groups are a special type of Asset in farmOS, which are used for organizing
|
||||
other Assets, so they can be managed together.
|
||||
|
||||
This provides a lot of flexibility in managing and organizing your Assets.
|
||||
Logs can reference the group Asset, instead of all the individual members.
|
||||
|
||||
One example where this is useful is managing herds of animals. Each herd can
|
||||
be represented as a group Asset, with animal members. A movement Log can be
|
||||
used to move the whole group, instead of referencing animal Assets
|
||||
individually.
|
||||
|
||||
You can also use groups to organize equipment, plants, or any other Asset type.
|
||||
It's even possible to have groups within groups, to create a hierarchy of group
|
||||
membership.
|
||||
|
||||
Group membership is assigned to Assets via Logs, in very much the same way that
|
||||
[location](/guide/location) is. You can assign Assets to a group via the
|
||||
"Group" and "Is group assignment" fields on Logs. These specify that any
|
||||
Asset(s) referenced by the Log will become members of the group at the time of
|
||||
the Log.
|
||||
|
||||
Therefore, Assets can also change their membership over time, moving from one
|
||||
group to another. One example where this is useful is in managing cattle: you
|
||||
may have a group of mothers with calves, a group of weaned calves, and other
|
||||
groups of steers, heifers, etc. As a calf grows up, weans, and perhaps has
|
||||
their own calf, they can be moved from group to group, and the full history of
|
||||
their group membership is saved as Logs.
|
||||
|
||||
For more information, refer to the [group membership logic](/model/logic/group)
|
||||
section of the [farmOS data model](/model) docs.
|
|
@ -0,0 +1,6 @@
|
|||
# Exporting data
|
||||
|
||||
All [Asset](/guide/assets), [Log](/guide/logs), and
|
||||
[Quantity](/guide/quantities) lists in farmOS include an "Export CSV" link at
|
||||
the bottom that will generate and download a CSV file. Any sorts or filters
|
||||
that are applied to the list will be represented in the CSV output.
|
|
@ -0,0 +1,83 @@
|
|||
# farmOS User Guide
|
||||
|
||||
## Introduction
|
||||
|
||||
Welcome to the official farmOS user guide. These documents are intended for
|
||||
people who will be using farmOS for record keeping and farm management.
|
||||
|
||||
If you are looking for information about hosting farmOS, or contributing to
|
||||
the development, refer to the dedicated documentation on those topics:
|
||||
|
||||
- [Hosting farmOS](/hosting)
|
||||
- [Contributing to farmOS](https://github.com/farmOS/farmOS/blob/2.x/CONTRIBUTING.md)
|
||||
|
||||
## Logging in
|
||||
|
||||
The first step to using farmOS is logging in. All records are private by
|
||||
default, and can only be viewed by people with a username and password.
|
||||
|
||||
To log in, first you need to know the address of your farmOS site. If you are
|
||||
hosting farmOS on [Farmier](https://farmier.com), this address will most likely
|
||||
be something like `https://myfarm.farmos.net` (where `myfarm` is the name of
|
||||
your farm). If your farmOS is hosted by someone else, they will be able to point
|
||||
you to the correct URL.
|
||||
|
||||
Enter the URL into the web browser on your computer, phone, or tablet, and you
|
||||
should see a login form. Enter your username and password, and click "Log in"
|
||||
to begin using farmOS.
|
||||
|
||||
## Dashboard
|
||||
|
||||
The first thing you will see when you log in is the farmOS dashboard.
|
||||
|
||||
On top is the farm map, where you will see all active location Assets that you
|
||||
have mapped. You can use this to navigate to your records within farmOS by
|
||||
clicking on a location and then clicking on the available links within the
|
||||
Asset details popup.
|
||||
|
||||
Below the map you will see "Upcoming tasks" and "Late tasks" on the left, which
|
||||
summarize Logs that are still in "pending" status. From here you can quickly
|
||||
select Logs and mark them as "complete", reschedule them, clone them, or delete
|
||||
them.
|
||||
|
||||
To the right you will see a summary of various farm metrics, including total
|
||||
Asset and Log counts. Additional metrics can be added via modules.
|
||||
|
||||
## Navigation
|
||||
|
||||
farmOS is designed to make your records approachable from multiple angles, so
|
||||
it is easy to find records you made in the past, and add new ones in the
|
||||
future.
|
||||
|
||||
The toolbar on the left provides quick access to various records and tools:
|
||||
|
||||
- **[Quick forms](/guide/quick)** - Lists "quick forms" available for easy data
|
||||
entry of common records. This will only be visible if you have quick form
|
||||
modules enabled.
|
||||
- **[Locations](/guide/mapping)** - Manage the hierarchy of location Assets.
|
||||
- **Plans** - Provide high-level management of Assets and Logs around a
|
||||
particular purpose. This will only be visible if you have plan type modules
|
||||
enabled.
|
||||
- **Records** - Direct access to raw lists of records by type and sub-type.
|
||||
- **[Assets](/guide/assets)** - These are the "management units" of farmOS.
|
||||
They represent the things of value that you are managing.
|
||||
- **[Logs](/guide/logs)** - These are the events that that place in
|
||||
relation to Assets.
|
||||
- **[Quantities](/guide/quantities)** - These represent granular
|
||||
measurements of quantitative data points associated with Logs.
|
||||
- **Reports** - Lists "reports" available for easy data analysis. This will
|
||||
only be visible if you have report modules enabled.
|
||||
- **[People](/guide/people)** - Users with access to the farmOS instance.
|
||||
- **Administration** - Links to various administrative sections.
|
||||
|
||||
You can also use the map to navigate to records that relate to specific
|
||||
locations. For example, if you want to view the record for a specific plant
|
||||
Asset, you can navigate to the field in the map where the plant is located, and
|
||||
you will be able to find all Assets in that field.
|
||||
|
||||
If you are looking for a specific Log, you can either find it via "Records >
|
||||
Logs" in the toolbar, or you can find the Asset that the Log is associated with,
|
||||
and the Log will appear there as well.
|
||||
|
||||
All your records can be connected and related in this way to make navigating
|
||||
them easier.
|
|
@ -0,0 +1,21 @@
|
|||
# Inventory tracking
|
||||
|
||||
Every Asset in farmOS can have one or more inventory levels associated with it.
|
||||
These are tracked via Quantities on Logs, allowing for inventory adjustments to
|
||||
be tracked over time. Inventory levels can be incremented, decremented, or
|
||||
reset by a Log.
|
||||
|
||||
To adjust the inventory of an Asset, enable the Inventory module, and create a
|
||||
Log with a Quantity. Within the Quantity, select "Increment", "Decrement", or
|
||||
"Reset" in the "Inventory adjustment" options, and then select the Asset whose
|
||||
inventory you would like to adjust. Fill in the Quantity's value (and
|
||||
optionally its measure, units, and label), set the Log's status to "complete",
|
||||
and then save the Log. Browse to the Asset you selected, and you will see the
|
||||
new inventory level.
|
||||
|
||||
Multiple inventory levels can be tracked on each Asset, based on the measure
|
||||
and units specified in the Quantity. Each measure+unit pair (or lack thereof)
|
||||
will be counted as a separate inventory level.
|
||||
|
||||
For more information, refer to the [inventory logic](/model/logic/inventory)
|
||||
section of the [farmOS data model](/model) docs.
|
|
@ -0,0 +1,38 @@
|
|||
# Movements and location
|
||||
|
||||
The locations of all Assets in farmOS are determined by "Movement" fields on
|
||||
Log entries.
|
||||
|
||||
When you create an Asset, it will not be located anywhere until a Log is added
|
||||
that "moves" it somewhere. These Logs are referred to as "movement" Logs, even
|
||||
though they are actually a more specific Log type like "Activity",
|
||||
"Observation", "Seeding", etc. Any Log type can be used to move Assets.
|
||||
|
||||
farmOS determines the "current location" of an Asset by looking at the Asset's
|
||||
most recent movement Log (with a date less than or equal to the present moment).
|
||||
Only Logs that have been marked as "complete" are taken into consideration.
|
||||
|
||||
Every Log has a "Location" reference field (for referencing the location Asset
|
||||
that things are moving to), a "Geometry" field (for recording the precise
|
||||
geometry where things are moving), and an "Is movement" field (for designating
|
||||
the Log as a movement).
|
||||
|
||||
For more information on Asset location, refer to the
|
||||
[location logic](/model/logic/location) section of the
|
||||
[farmOS data model](/model) docs.
|
||||
|
||||
## Movement Logs
|
||||
|
||||
There are three ways that movement Logs can be created:
|
||||
|
||||
- Click "Add an activity" (or other Log type) when you are viewing a single
|
||||
Asset. This will present you with a new Log form, and automatically fill in
|
||||
the "Assets" field with the Asset you were looking at. In the "Location"
|
||||
field, select the new location of the Assets, and check the "Is movement"
|
||||
box to designate the Log as a movement.
|
||||
- Select multiple Assets in a list, and select the "Move assets" option that
|
||||
appears. This allows you to move multiple Assets at once. This will present
|
||||
you with a simplified form for specifying details of the movement.
|
||||
- Click "Add Log" from the farmOS dashboard, and select a Log type. This
|
||||
presents you with a blank Log form, which you can fill in however you'd like.
|
||||
Use the "Location", "Geometry", and "Is movement" fields as described above.
|
|
@ -0,0 +1,112 @@
|
|||
# Logging events
|
||||
|
||||
Logs represent all kinds of events. You can be as granular as you want: the
|
||||
more information you're recording, the more you can look back on and learn from
|
||||
in the future.
|
||||
|
||||
Planning ahead in farmOS is exactly the same as recording things that already
|
||||
happened. The only difference is that the date is in the future, and the Log
|
||||
status is "pending" instead of "complete".
|
||||
|
||||
Logs that are in the future and "pending" will appear in your "Upcoming Tasks"
|
||||
list on the dashboard. Underneath that is a "Late tasks" list, which shows all
|
||||
"pending" Logs with a date in the past. So as time goes by, you can mark your
|
||||
Logs as done (or not), and it will keep track of what happened and what didn't.
|
||||
|
||||
Logs can be assigned to one or more person(s) in farmOS using the Log's *Owner*
|
||||
field. Users can view a list of all Logs assigned to them by navigating to their
|
||||
profile and then clicking the "Logs" tab.
|
||||
|
||||
Logs can be also be categorized for organizing, sorting, and filtering your
|
||||
Logs in ways that make sense to you, so you can find the Logs you need easily
|
||||
in the future.
|
||||
|
||||
If you want to create a Log that references multiple Assets, you can either
|
||||
create the Log and then add each Asset to it individually, or you can select
|
||||
multiple Assets in a list and click the "Add log" button that appears at the
|
||||
bottom. This will open up a new Log form with the Assets pre-selected.
|
||||
|
||||
For more information on Log records, refer the [Logs](/model/type/log)
|
||||
section of the [farmOS data model](/model) docs.
|
||||
|
||||
## Log types
|
||||
|
||||
farmOS comes with a number of Log types, summarized below. Additional types can
|
||||
be added via modules.
|
||||
|
||||
### Activities
|
||||
|
||||
Activities are a sort of catch-all, or default, Log type, which can be used for
|
||||
general planning and record keeping of activities that don't fit any of the
|
||||
other, more specific, Log types.
|
||||
|
||||
### Observations
|
||||
|
||||
Observations are used to record any kind of passive observation on the farm. For
|
||||
example, recording that a planting has germinated is an observation. This is a
|
||||
very flexible Log type that can be used for a lot of different things.
|
||||
|
||||
### Inputs
|
||||
|
||||
Input Logs are used to record resources that are put into an Asset. Fertilizer
|
||||
(for plants) or feed (for animals) can be recorded with input Logs.
|
||||
|
||||
### Harvests
|
||||
|
||||
Harvest Logs are used to record harvests taken from an Asset.
|
||||
|
||||
In some cases, you may want to archive the Asset when a harvest is recorded
|
||||
(eg: harvesting a crop or slaughtering an animal). In other cases, one Asset
|
||||
may produce multiple harvests (eg: picking apples or collecting eggs).
|
||||
|
||||
### Seedings
|
||||
|
||||
Seeding Logs are used to represent when seeds are planted in the ground or in
|
||||
containers. With a seeding Log, you can specify the seeding quantity (eg: 100
|
||||
lbs, 20 72-plug trays, etc), and you can specify where the seeding occurred so
|
||||
that farmOS knows where the plant Asset is located.
|
||||
|
||||
### Transplantings
|
||||
|
||||
Transplanting Logs are used to represent when a plant Asset is moved from one
|
||||
place to another. For example, when vegetable starts are moved from a greenhouse
|
||||
to the field, or when tree saplings are purchased from a nursery and planted in
|
||||
the ground. Similar to seeding Logs, transplantings can have a quantity and a
|
||||
location.
|
||||
|
||||
### Lab tests
|
||||
|
||||
Lab test logs can be used to record when/where you have samples analyzed by a
|
||||
lab, and the results can be attached as a file and/or recorded as
|
||||
[Quantity](/guide/quantities) measurements on the Log.
|
||||
|
||||
These can be used for tracking soil tests, water tests, plant tissue analysis,
|
||||
etc. Logs can be linked to a specific land or water Asset, and you can specify
|
||||
the exact points on a map where samples were taken from if you want, as well as
|
||||
the name of the lab that performed the analysis.
|
||||
|
||||
### Maintenance
|
||||
|
||||
Maintenance Logs can be used to record when you perform maintenance on a piece
|
||||
of equipment, structure, or other Asset type. This can be a repair, a tune-up,
|
||||
an oil change, a cleaning, or anything else that is related to the proper use
|
||||
and functioning of the Asset. All your maintenance records can be organized,
|
||||
categorized, and filtered like other Log types in farmOS.
|
||||
|
||||
### Medical
|
||||
|
||||
Medical Logs can be used to record animal health records. This can be a
|
||||
veterinary visit, administering medicine/vaccinations, or other medical
|
||||
procedures. You can also use standard **Input** Logs when administering
|
||||
medicine or vaccinations, if you prefer, and reserve **Medical** Logs for more
|
||||
serious events/procedures.
|
||||
|
||||
### Births
|
||||
|
||||
Birth Logs can be used to record the birth of one or more animals on the farm.
|
||||
Birth Logs can optionally reference the mother animal, and when they are saved
|
||||
they will automatically update the "Parents" and "Date of birth" fields on all
|
||||
referenced child animals. The "Date of birth" field on animal records will
|
||||
automatically link back to their birth Log (if one exists). The child animal
|
||||
Asset records must be created before the birth Log, so that they can be
|
||||
referenced.
|
|
@ -0,0 +1,157 @@
|
|||
# Mapping locations
|
||||
|
||||
farmOS gives you the ability to organize all the various places on (and off)
|
||||
your farm. These places are represented as [Assets](/guide/assets) in farmOS,
|
||||
and they can be referenced when you are [logging events](/guide/logs). Assets
|
||||
can be located in other Assets via movement Logs and
|
||||
[location logic](/guide/location).
|
||||
|
||||
To create a location Asset, go to the farmOS Dashboard and click the "Add
|
||||
asset" button. Select the Asset type you want to map, such as Land or
|
||||
Structure, and you will be taken to a form for creating the Asset.
|
||||
|
||||
You will see a Geometry field with a map for drawing the shape of the Asset.
|
||||
Generally a single polygon is all that is required, but points and lines are
|
||||
also allowed.
|
||||
|
||||
Make sure that the "Is location" option is enabled so that the Asset is
|
||||
designated as a location.
|
||||
|
||||
When you're done modifying your area, remember to click the Save button at the
|
||||
bottom of the page to save your changes.
|
||||
|
||||
## Map controls
|
||||
|
||||
### Zooming
|
||||
|
||||
There are three ways to zoom in/out:
|
||||
|
||||
- On touch screens, you can "pinch zoom" using two fingers.
|
||||
- With a computer mouse, you can use the scroll wheel to zoom in/out (click
|
||||
on the map first to enable scroll zoom).
|
||||
- The plus (+) and minus (+) buttons in the top left of the map control zoom.
|
||||
|
||||
### Geolocating
|
||||
|
||||
A "Geolocate" button is available in the top left of the map. This will use your
|
||||
device's GPS (if available) and/or IP-based geolocation service to try to find
|
||||
your current location and center the map on that point. While geolocation is
|
||||
turned on, your position will automatically update as you move around. In
|
||||
addition to the point, a circle will also be displayed around the point with an
|
||||
accuracy radius to tell you how confident the geolocated position is.
|
||||
|
||||
### Address search
|
||||
|
||||
A search button is available in the top of the map for performing an address
|
||||
search. As you type into the search box, matching addresses will be displayed
|
||||
in a dropdown. Select the address that you want from that list, and the map
|
||||
will be automatically re-centered on that location. Geocoding is provided by
|
||||
[Nominatim](https://nominatim.org/).
|
||||
|
||||
### Drawing
|
||||
|
||||
There are four buttons for drawing shapes:
|
||||
|
||||
- **Polygon**: Use this to draw closed shapes like squares, rectangles, etc.
|
||||
Click at each vertex of the shape, and end by either connecting to the first
|
||||
point or double-clicking to connect automatically.
|
||||
- **Line**: Create a series of line segments by clicking points on the map, and
|
||||
double-clicking when you're done. You can also hold shift to draw freehand.
|
||||
- **Point**: Click on the map to create a point.
|
||||
- **Circle**: Create a circle by clicking where you want the center to be,
|
||||
dragging the circle outward to expand it, and clicking again to finish.
|
||||
|
||||
### Modifying
|
||||
|
||||
There are three buttons for modifying shapes:
|
||||
|
||||
- **Modify**: Click the modify button, and then click a shape to select it. You
|
||||
can click and drag any of the vertices to modify the overall shape.
|
||||
- **Move**: Click the move button, and then click a shape to select it. Then
|
||||
click and drag the shape to move it to a different position.
|
||||
- **Delete**: The delete button will clear any selected shapes from the map.
|
||||
This button will appear when either the Modify or Move buttons are active,
|
||||
and a shape has been selected. If you accidentally delete a shape, refresh
|
||||
the page WITHOUT saving, and you will revert to the previously saved shapes.
|
||||
Note that this will also revert any other changes to your area that you
|
||||
haven't saved.
|
||||
|
||||
## Geometry import and export
|
||||
|
||||
### Importing geometry from files
|
||||
|
||||
farmOS can import geometries from KML, KMZ, GPX, and GeoJSON files. If you
|
||||
already have your farm mapped in another software (like Google Earth), you
|
||||
can export KML files for each area and then import them into farmOS records.
|
||||
Alternatively, you can use the *KML Importer* module to import a single KML
|
||||
file that contains the shapes for multiple land Assets.
|
||||
|
||||
To import a KML file of an individual Asset or Log, follow these steps:
|
||||
|
||||
1. Create a new Asset or Log (or edit an existing one).
|
||||
2. Scroll down to the Files field and upload your KML file.
|
||||
3. Scroll to the Geometry field, and just below the map you will see a button
|
||||
labeled "Import geometry from uploaded files". If you uploaded a valid file,
|
||||
you will see the shape(s) appear in the map.
|
||||
|
||||
To import a KML/KMZ file containing multiple Assets, follow these steps:
|
||||
|
||||
1. Enable the *KML Importer* module.
|
||||
2. Go to Administration > Import > KML Import in the toolbar.
|
||||
3. Upload your KML/KMZ file, select the default land type to assign to new
|
||||
Assets, and click "Parse".
|
||||
4. If geometries are found in the file, a fieldset will be shown for each of
|
||||
them, letting you customize the Asset name, land type, and whether or not it
|
||||
should be imported.
|
||||
5. At the bottom of the form, there is an option to create a new Asset that will
|
||||
contain all the imported Assets. It is a good idea to use this so that you
|
||||
can easily review the Asset that were imported, without having them mixed in
|
||||
with your existing Asset right away. If you find that the import didn't work
|
||||
properly, you can select all the Asset under this parent Asset and delete them
|
||||
in bulk.
|
||||
|
||||
### Exporting a KML file
|
||||
|
||||
KML files can be exported from both Assets and Logs. Open any list of Assets or
|
||||
Logs, select one or more of them, and select the "Export KML" option that
|
||||
appears at the bottom.
|
||||
|
||||
## Location hierarchy
|
||||
|
||||
Location Assets can be organized into a hierarchy. This is visible from the
|
||||
"Locations" page in the Toolbar. There are three ways to modify the hierarchy:
|
||||
|
||||
- Click "Locations" in the toolbar, then click "Toggle drag and drop" at the
|
||||
bottom. Drag locations to their new parents to modify the hierarchy. Click
|
||||
"Save" when you are done, or "Reset" to undo your changes.
|
||||
- The same drag and drop editor is available for child hierarchies of
|
||||
individual location Assets. Go to the parent Asset record and click the
|
||||
"Locations" tab to see the hierarchy of children, with the option to modify
|
||||
via drag and drop.
|
||||
- When you are editing an individual location Asset, modify its "Parent"
|
||||
relationship to point to the Asset that should appear above it in the
|
||||
hierarchy.
|
||||
|
||||
## Use the Snapping Grid
|
||||
|
||||
farmOS includes a "snapping grid" tool to aid in creating regular/aligned
|
||||
geometries. When drawing, the cursor will only snap to existing geometries by
|
||||
default. However, the snapping grid adds a grid of evenly spaced points to which
|
||||
the cursor will snap preferentially.
|
||||
|
||||
![snapping_grid_demo](https://user-images.githubusercontent.com/30754460/88995756-5cb22300-d2a0-11ea-88a1-50edac1c0168.gif)
|
||||
|
||||
To activate the grid, click the '#' icon in the bottom left corner above the
|
||||
scale line, then select two points. The first point is the "origin" of the grid
|
||||
while the second point we will call a "rotation anchor" and describes how the
|
||||
grid should be rotated around the origin point.
|
||||
|
||||
In addition to controlling the origin/rotation of the grid, its dimensions can
|
||||
be specified. To do so, hover your mouse over the '#' icon then enter the `x` and
|
||||
`y` dimensions in the controls which appear. Since the grid can be rotated, the
|
||||
dimensions are independent of the compass directions on the map. Instead, the `x`
|
||||
dimension represents the distances between the grid points on lines parallel with
|
||||
the line formed by the origin and rotation anchor points. Similarly, the `y` dimension
|
||||
represents distances perpendicular to that line.
|
||||
|
||||
![farmOS Snapping Grid dimensions screenshot](/img/snapping_grid_dimension_explanation.png)
|
|
@ -0,0 +1,69 @@
|
|||
# People
|
||||
|
||||
farmOS allows a farm to have multiple "users" accessing it, and each of those
|
||||
users is assigned one or more "roles" to grant them different levels of
|
||||
permission.
|
||||
|
||||
Roles can be "managed" or "unmanaged." The permissions of managed roles are
|
||||
controlled by modules and cannot be modified through the UI. Unmanaged roles
|
||||
can be added/edited through the UI.
|
||||
|
||||
Three managed roles are provided with farmOS:
|
||||
|
||||
- **Manager** - Has access to everything in farmOS. They can create, edit, and
|
||||
delete records, and they can change configuration settings.
|
||||
- **Worker** - Has most of the same permissions as Managers, but cannot change
|
||||
configuration.
|
||||
- **Viewer** - Limited to viewing farmOS records - but they cannot edit, delete
|
||||
or change configuration. This role is useful if you want to share your farm's
|
||||
activities with someone, but you don't want to give them the ability to make
|
||||
changes. For example, if you need to share your farm records with an Organic
|
||||
Certifying Agent, you can give them a user account with the Viewer role.
|
||||
|
||||
These roles can be disabled by uninstalling the "Default Roles" module.
|
||||
|
||||
Permissions for managed roles cannot be modified through the UI. This is not
|
||||
generally an issue since the provided roles have been carefully tailored to
|
||||
work for most applications. In some cases, you may want to further customize
|
||||
user permissions.
|
||||
|
||||
The simplest way to customize permissions is to add unmanaged roles alongside
|
||||
the managed ones. With this strategy, users are given the minimum required
|
||||
permissions using the managed roles then granted additional permissions via
|
||||
unmanaged roles that are manually configured. Permissions are additive, so
|
||||
a user with multiple roles will have all the permissions included with each.
|
||||
|
||||
For example, imagine some users who have the Worker role but not the Manager
|
||||
role need to be able to configure farm reports - which they cannot do with
|
||||
Worker role alone. One option would be to make them all Managers, but this can
|
||||
be confusing or risky if it doesn't match their real-world role or trust level.
|
||||
Instead, a new role called "Report Manager" (the name is arbitrary) can be
|
||||
created with permission to configure farm reports. This new role can then be
|
||||
selectively given to just those users who need the additional access.
|
||||
|
||||
In some cases where significantly different permissions are required than
|
||||
default managed roles, it may be preferable to disable the "Default Roles"
|
||||
module and create alternate roles manually - or through a custom module.
|
||||
|
||||
For example, imagine some users are responsible only for animals and other
|
||||
users are responsible only for plants. One option would be to make them all
|
||||
Workers or use the above strategy of additional roles to give those users only
|
||||
the required permissions on top of the Viewer role. However, in some scenarios
|
||||
it may be desirable to make alternate roles which completely supersede the
|
||||
provided ones.
|
||||
|
||||
This carries some advantages:
|
||||
|
||||
- Allows role naming and structure to more directly match an organizations'
|
||||
- May allow closer adherence to the
|
||||
[Principle of Least Privilege](https://en.wikipedia.org/wiki/Principle_of_least_privilege)
|
||||
where the existing roles are overly permissive for most users
|
||||
|
||||
But also some disadvantages:
|
||||
|
||||
* The alternate roles have to be manually maintained over time - including
|
||||
across farmOS version upgrades which may imply permission changes for all
|
||||
features to work or continue working
|
||||
* All the permissions for the alternate roles have to be manually configured
|
||||
which increases the likelihood of human error in that configuration granting
|
||||
potentially dangerous permissions to some users
|
|
@ -0,0 +1,28 @@
|
|||
# Quantities
|
||||
|
||||
All Logs in farmOS have the ability to record structured quantitative
|
||||
measurements alongside other details. These can be used to collect data about
|
||||
your farm activities in an organized way, which can be analyzed later to
|
||||
provide insights.
|
||||
|
||||
Each Quantity consists of four optional sub-fields:
|
||||
|
||||
* Measure - What type of measurement is this? Eg: Weight, Volume, Count,
|
||||
Temperature, etc.
|
||||
* Value - The measurement value (a number).
|
||||
* Units - The unit of measure. This can be anything you like, but it's always
|
||||
good to keep your units consistent for later analysis.
|
||||
* Label - Labels are just a text field that allow you to label the Quantity.
|
||||
This is helpful if you have multiple Quantities of the same measure or units.
|
||||
|
||||
A single Log in farmOS can have multiple Quantities, but only the first will be
|
||||
included when viewing a list of Logs. In order to see a list of all Quantities,
|
||||
go to Records > Quantities and optionally filter by Log name, type, date range,
|
||||
or Quantity fields like measure, value, units, or label. A CSV file can be
|
||||
exported from the filtered results. This provides a flexible approach to
|
||||
gathering ongoing quantitative data on your farm, and then analyzing it for
|
||||
trends over time.
|
||||
|
||||
For more information on Quantity records, refer the
|
||||
[Quantities](/model/type/quantity) section of the [farmOS data model](/model)
|
||||
docs.
|
|
@ -0,0 +1,10 @@
|
|||
# Quick forms
|
||||
|
||||
farmOS provides a framework for building "quick forms" for common data entry
|
||||
needs. This allows a simplified and focused UI to be provided for fast and easy
|
||||
recording of common events, while maintaining the underlying flexibility of
|
||||
the generalized Asset and Log data architecture.
|
||||
|
||||
If you have the "farmOS Quick" module enabled, you will see a new "Quick forms"
|
||||
link in the toolbar. This will list all available quick forms, which are
|
||||
provided by modules.
|
11
mkdocs.yml
11
mkdocs.yml
|
@ -1,5 +1,16 @@
|
|||
site_name: farmOS Docs
|
||||
nav:
|
||||
- User Guide:
|
||||
- Introduction: guide/index.md
|
||||
- Mapping locations: guide/mapping.md
|
||||
- Managing assets: guide/assets.md
|
||||
- Logging events: guide/logs.md
|
||||
- Movements and location: guide/location.md
|
||||
- Quantities: guide/quantities.md
|
||||
- Inventory: guide/inventory.md
|
||||
- People: guide/people.md
|
||||
- Quick forms: guide/quick.md
|
||||
- Exporting data: guide/export.md
|
||||
- Data model:
|
||||
- Introduction: model/index.md
|
||||
- Record types:
|
||||
|
|
Loading…
Reference in New Issue