Case study · Odoo

Soil boring records drawn by Odoo instead of by hand

Each soil boring record used to be drawn by hand: depth scale, soil layers, hatching, blow counts and the penetration plot. We built an Odoo app where the boring is entered as data and one button draws the finished sheet.

The client

A geotechnical drilling and soil investigation firm. We do not name clients on this site; we are happy to talk about the work in detail on a call.

What needed to change

  • Every boring sheet drawn by hand, one at a time.
  • Drawing rules that had to match the firm's specification exactly.
  • Projects with many borings, each needing the same consistent output.

What we built

No.PartWhat it means in practice
01Data entryProjects, borings, soil layers, samples and standard penetration tests entered in Odoo.
02Vector PDF sheetThe record is drawn with vector graphics, not HTML, so every line, hatch and plotted point stays sharp in print and at any zoom.
03Drawing rulesDepth ticks every foot, elevations every five feet, separator lines that change with the soil, lithology hatches clipped to each layer.
04Blow counts and N valuesBlow counts including refusals, N values worked out from the last two increments, and the penetration plot on the sheet's own scale.
05Long boringsA second page added automatically once a boring passes 40 feet.
06Configuration, not codeColumn positions, type sizes, line weights, soil types and their hatches are settings the firm can change.

How it runs now

The firm enters each boring once and prints the record in seconds, with the same layout on every sheet.

Built with: Odoo 19, Python, Vector PDF drawing, PostgreSQL, Docker.

WhatsApp

Book a meeting

Free 30-minute call