Skip to main content

Millersoft Solutions

A collection of solutions to some of the many technical puzzles encountered by Millersoft.

Go beyond standard Odoo™ reporting

· 5 min read
Calum Miller
Director

Odoo™ is an excellent choice for running your business. But as your operations grow, answering questions about historical performance, true profitability and data across multiple systems becomes harder. The Millersoft Data Vault Engine & Studio bridges that advanced reporting gap, providing an auditable analytical foundation for the questions that matter. What's more, it's completely free and open source!

Shorten Long File Pathnames for Sharepoint Compatibility

· One min read
Calum Miller
Director

Apace Hop Diagram

When a client needed 10,000 file pathnames shortened for compatibility with Microsoft Sharepoint, there was only one tool to use...Apache Hop! With Hop we were able to read in all the original long pathnames and perform consistent name shortening by subfolder. Our task was to ensure they were all under 256 characters. Incredible to think Sharepoint still has this limitation! Then we were able to recreate the new folder structure and copy over all the shortened file pathnames. Simple!

Read the full post

CareerBuilder™ Migration and Fuzzy Matching

· 4 min read
Blair Murray
Lead Software Engineer

Moving candidate records out of a legacy recruitment platform is rarely as simple as exporting a spreadsheet and importing it somewhere else. Names change, email addresses go out of date, and documents are often stored separately from the candidate record they belong to.

We recently helped a client move data from CareerBuilder™ into a new platform using Apache Hop. The job was to match the exported candidates to the client's payroll list, prepare the data for import, and make sure each person's CVs and supporting documents ended up in the right place.

Spektr API CDC with Data Vault

· 2 min read
Blair Murray
Lead Software Engineer

If you need to push client data into Spektr, sending full data exports every time your pipeline runs quickly creates problems. Large updates slow down your pipelines, waste bandwidth, and can easily hit Spektr's API rate limits.

Here is a look at how we use Apache Hop to read client source data, filter out unchanged records, and send only the new updates to the Spektr API.

Why Believable AI Starts with Believable Data

· 8 min read
Calum Miller
Director

AI analytics is quickly becoming the new frontier of decision intelligence. Boards, CEOs, CFOs, and operational leaders are no longer satisfied with siloed PowerBI dashboards, delayed reporting cycles, and narrow views of business performance. They want internal business intelligence that converses with the outside world. They want to ask questions in natural language. They want AI to combine operational data, historical context, external signals, and business meaning into answers they can act on.

Integration with Apache Superset’s ™ New Alert and Report System

· One min read
Aidan Mulgrew
Software Engineer

With the release of Apache Superset ™ 4.0, a new Alerts and Reports framework was introduced, replacing the previous reporting mechanisms. To ensure full compatibility, Millersoft reimplemented our enhancements, including the S3 delivery option and custom email body support, within this new framework. The updates extend the base notification class used by Superset’s core notification methods, ensuring that our improvements remain upgrade-safe and consistent with Superset’s architecture.

Apache Superset™ AWS S3 Integration for Report Delivery

· One min read
Aidan Mulgrew
Software Engineer

Millersoft as added AWS S3 as a new notification and delivery method for Apache Superset’s™ reporting system. While Superset natively supports Email and Slack, our enhancement allows users to additionally export and deliver reports directly to S3. This provides a convenient and secure way to integrate reports into external systems or make them accessible via an SFTP server.

Apache Superset™ Enhanced Email Capabilities for CC, BCC and body

· One min read
Aidan Mulgrew
Software Engineer

In early versions Superset’s email reporting capabilities were relatively limited, typically supporting only basic recipient and subject fields.

Millersoft expanded this functionality significantly by adding CC and BCC fields for broader communication flexibilit. Superset now supports a custom email body, allowing teams to tailor their message content beyond the standard “Explore in Superset” link.

Enterprise ready Apache Superset™ authentication with Keycloak

· One min read
Aidan Mulgrew
Software Engineer

Millersoft has integrated Keycloak authentication, enabling teams to manage user access through a central identity provider. This integration supports enterprise requirements like single sign-on (SSO), role-based access control (RBAC), and multi-factor authentication. Enabling organisations to manage Superset users securely and at scale.


Read the full post

Unlocking the Power of Druid MSQ in Superset

· 3 min read
Aidan Mulgrew
Software Engineer

At Millersoft, we’ve been working to make Apache Druid™ more efficient, flexible, and cost-effective for analytics workloads. One area we’ve focused on is the Python-to-Druid connector (pydruid), which powers integrations with Apache Superset™.

We’re excited to share some improvements we’ve made that open the door to new capabilities in Superset dashboards and the potential for substantial cost savings in large-scale Druid deployments.

Counting Distinct Values Accurately in Druid SQL

· 3 min read
Aidan Mulgrew
Software Engineer

When working with Druid SQL, it's easy to fall into a common trap when counting distinct values: using COUNT(DISTINCT ...) directly can sometimes return unexpected results. Recently, I hit a case where COUNT(DISTINCT) returned a different value than selecting the DISTINCT rows manually - and this post explains why that happens, and how to fix it.

Unlock NetSuite Sales and Orders with Sheetloom

· 3 min read
Gerry Conaghan
Business Development Manager

Filling business decision models with essential data captured in NetSuite™ can be: tiring, confusing, repetitive and error prone. The good news for the brave souls, doing all that manual labour, is Sheetloom. Sheetloom is the SaaS solution that automates the injection of NetSuite™ data straight into dynamic Excel decision models, pivots, dashboards and reports.

Finance - Credit Check Automation

· One min read
Calum Miller
Director

A finance company used a mix of the latest digital tech and a human touch to bring a different approach to small businesses lending.

A crucial part of the loan review process required the company to credit score each applicant. Testing of the credit score process proved very time consuming using traditional methods. The finance company would manually; select applicants, collect individual responses and then consolidate results from a credit checking service.

Information Technology must serve decision makers

· 3 min read
Calum Miller
Director

All Business Intelligence (BI) vendors have a dirty little secret. It’s hidden under a weighty digital rock, keeping all those electronic worms company. It’s shared by Looker, Pentaho, Power BI, Tableau, SAP, Quicksight, et al.

It’s obvious, but seldom noticed. Take a deep breath, here it is;

All BI clients use Excel, way more than the BI vendors care to admit.