Mining Geological Data & Reserves (JORC / NI 43-101)
by Grevlin Global Corp. https://grevlin.com$ 735.05
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Employees (hr) • Inventory (stock) • Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 3864 |
| Technical Name |
grev_od_mining_geology |
| License | OPL-1 |
| Website | https://grevlin.com |
Geological Data & ReservesDrillhole management, multi-format CSV import, length-weighted compositing, and JORC 2012 / NI 43-101 resource statements — the system-of-record your competent person needs.
|
|
ⓘ System-of-record for drillhole data and disclosure documents. Not a 3D block-modelling system — designed to feed your block model software with clean, validated data. |
|
|
|
Need Help?Contact us at odoo@grevlin.com or find us on X at @GrevlinGlobal ✓ 30 days free support included |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Employees (hr) • Inventory (stock) • Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 3864 |
| Technical Name |
grev_od_mining_geology |
| License | OPL-1 |
| Website | https://grevlin.com |
Geological Data & Reserves
The Geological Data & Reserves module is the system-of-record for drillhole data and disclosure documents. It manages collar/survey/assay data, multi-format CSV import, length-weighted compositing, and JORC 2012 / NI 43-101 resource statements.
Important
This is not a 3D block-modelling system. It is designed to be the clean, auditable data source that feeds your block model software (Leapfrog, Datamine, etc.).
Note
Requires :doc:`../grev_od_mining_base/doc/index`.
Overview
Key Features
- Drillhole data model — collar, survey (deviated holes), assay intervals, QAQC flags
- CSV import wizard — 3-step import for Surpac, MineSight, and Leapfrog formats
- Compositing — length-weighted with configurable interval and tail-cap percentage
- Resource statements — JORC 2012 and NI 43-101 with modifying factors
- Dual sign-off — draft → under_review → approved → superseded workflow
- Geology dashboard — high-grade intercepts, campaign progress, QAQC status
Configuration
Competent Person Setup
JORC 2012 and NI 43-101 resource statements require a Competent Person (CP) or Qualified Person (QP). To designate a CP:
- Go to :menuselection:`Employees`.
- Open the employee's record.
- Check the :guilabel:`Is Competent Person` checkbox.
- Fill in the organisation and membership reference fields.
Usage
Creating a Drillhole Collar
- Go to :menuselection:`Mining Geology --> Drillholes --> Collars`.
- Click :guilabel:`Create`.
- Fill in the hole ID (unique per site), collar coordinates (easting/northing/elevation), azimuth (0–360°), dip (negative downward), total depth, and drilling method.
- Link to a campaign.
- Click :guilabel:`Start Drilling` to move to drilling state.
Adding Assay Intervals
From the collar form, open the :guilabel:`Assay Intervals` tab:
- Click :guilabel:`Add a line`.
- Set from_depth_m and to_depth_m (must not overlap with existing intervals).
- Set lithology, recovery %, and add element values (one per row).
- Set the QAQC flag for each value: ok, standard_used, blank_used, duplicate_used, or failed.
Importing Assay Data from CSV
- Go to :menuselection:`Mining Geology --> Import --> Import Drillhole CSV`.
- Step 1 — Upload your CSV file.
- Step 2 — Map columns to system fields. Surpac, MineSight, and Leapfrog presets are available for automatic column aliasing.
- Step 3 — Review the validation report:
- BLOCK errors must be resolved before import (overlaps, missing elements)
- WARN errors are imported with a flag (missing recovery, QAQC = failed)
Tip
The import supports both comma (2.1) and dot decimal separators, and handles column headers case-insensitively. Columns not present in the file are silently skipped.
Performance target: 50,000-row assay file imports in under 90 seconds.
Running Composites
- Go to :menuselection:`Mining Geology --> Analysis --> Composite Runs`.
- Click :guilabel:`Create`.
- Select collars and elements to composite; set interval length (default 2.0m) and tail-cap % (default 25%).
- Click :guilabel:`Compute` — composite lines are created with length-weighted grades.
Note
When parent assay intervals are edited, affected composite runs are automatically marked Stale. Re-run the computation to refresh.
Composite Formula
For each composite interval of length L: composite_grade = Σ (assay_value × assay_length) / Σ assay_length Tail intervals shorter than tail_cap_pct × L are discarded.
JORC / NI 43-101 Resource Statements
- Go to :menuselection:`Mining Geology --> Reports --> Resource Statements`.
- Click :guilabel:`Create`.
- Select the reporting code (JORC 2012 or NI 43-101).
- Select the signing Competent Person (must have is_competent_person = True).
- Add category lines (inferred, indicated, measured, probable reserve, proven reserve).
- Add modifying factors (mining, metallurgical, economic, environmental, legal, social, governmental).
- Click :guilabel:`Submit for Review` → :guilabel:`Approve`.
Important
Approving a new resource statement automatically supersedes the current approved version. The superseded statement is retained for audit history.
Technical Details
Overlap Detection
The system prevents assay intervals from overlapping using a SQL constraint check. The import wizard also detects overlaps as BLOCK errors during the validation step.
QAQC Flag Propagation
QAQC flags are stored per element value. A failed QAQC flag does not automatically exclude an interval from compositing — it is flagged for geologist review via the activity system. The geologist must manually decide whether to exclude or accept.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module