Tile colours

When each user adds a tile, the system picks a colour for it based on what’s already on the screen. It tries to create a variety of colours with little repetition. The colours themselves are from a specially designed palette that creates a friendly, interesting look that we try to differentiate from the boring blue and white/grey of typical business software applications.

tile colours

However, this has meant that different users might get different colours for the same tile.

We’ve now tweaked this so that administrators can globally set the colour of a tile across the whole organisation. That should make training and support easier – support staff can now say “open sales analysis – that’s the purple one” and any printed material can match.

It also means you can customise your own company designs – maybe make a two-tone checkerboard effect, or colour tiles by dept. so e.g. all finance is blue and all sales green.

To set this up, go in to the admin interface, expand out ‘Administration’ and click tiles.

colours admin

p.s. you may notice some of the colour names might not exactly match the actual colours – don’t worry about that, it’s the colours you see that matter, the names may be tweaked in future.


Comparative filters

As you probably know, you can do all sorts of ad-hoc filtering and searching in agileBase – in any view, hover over the question mark to the left of the filter boxes at the top to see all the available options.

Screen Shot 2017-09-27 at 16.34.44

All of these filters let you search within a particular field, you can if you wish use different filters on different fields.

Today, we’re extending this capability. You can now do comparison filters on different fields, i.e. find out when one field is equal or different to another, more or less than etc. You can reference another field by putting the field name in curly brackets, within a filter.

For example, if you have a view of sales enquiries and you wish to find those where the person who logged the lead is different to the salesperson assigned, you might enter

“not {assigned to}”

in the ‘logged by’ field. Here’s another example, searching for any ingredients where the amount of fibre is greater than the amount of starch.

Screen Shot 2017-10-01 at 17.25.48

Adding filters to charts

One of the recent charting improvements is the ability to add filters to a chart, however it’s not a very well known feature, so here’s a little guide on how to use it.

In a view, you can add ‘ad-hoc’ filters using the filter inputs at the top of the screen. In this screenshot for example, we’re searching for all organisations in the food and drink sector, who are distributors and customers.


If you switch to see charts based on that view, they’ll have the same filters applied. However, what’s new is that you can also ‘hard-code’ whatever filters you like into charts when editing them. This particularly becomes useful when adding multiple charts to a view.

So working on the example of the above view, you could add two charts, one a chart of the number of ‘food and drink’ customers added over time, another of ‘education’.

Adding a filter to a chart

When editing a chart, click ‘advanced settings’ and type in a filter into the ‘additional filters’ box, in the format fieldname=value.


The value can be anything that you’d type into a filter box at the top of the screen, when narrowing down records. It can contain advanced filter commands, so e.g. a colon means ‘starts with’, an exclamation mark means ‘not’. Just remember that the equals sign separating the field from the filter value is not part of the filter value. So you can use the following formats:

  • fieldname=value : field contains ‘value’
  • fieldname=:value : field starts with ‘value’
  • fieldname=!value : field does not contain ‘value’ (fieldname=not value can also be used)
  • fieldname=? : field is empty, no value has been set
  • fieldname=!? : field has a value (it’s not empty)
  • fieldname==value : field is exactly equal to value (case insensitively)
  • fieldname=>value : field is greater than or equal to value (useful to numbers and dates, but also applies to text)
  • fieldname=<value : field is less than value
  • fieldname=value1 OR value2 OR value3 : field contains any of the specified values
  • fieldname=value1 AND value2 AND value3 : field contains all of the specified values, in any order

Multiple filters

Multiple filters can be added by separating them with commas. For example, the filter

  • sector serviced=food and drink, industry=distributor, date added=>12 months ago

would apply all three of those filters to the chart.

Ad-hoc filtering

What happens when you type in searches into the filter boxes at the top of the screen, when looking at a chart?

The filters get applied in addition to any filters saved into the chart as above. If you filter on a field which is already included in a chart, the filter that you type will temporarily override the filter saved to the chart.


You might have heard about our recent calendar sync setup – the ability to two-way synchronize calendars in agileBase with your cloud calendar provider such as Google or Office 365.

We’ve now leveraged this technology to use comments in the system as reminders to yourself. If you see a message in your comment stream that you want to remind yourself about later, just click it and hit one of the buttons.

Screen Shot 2017-09-11 at 11.10.22

The system will immediately add a 10 minute entry into your external calendar, for either

  • the same time tomorrow
  • the same time in seven days time
  • the same time in 30 days time

An alarm will be set on the event so it will remind you at the time. (We may in future add the option to specify a custom date).

Note that for this to work, the logged in user has to have a calendar sync set up – to do that, click your user icon at the top right of the screen, select ‘edit profile’ and choose ‘connect calendar’.

We use a third party utility to enable the calendar sync and there is a small charge per user associated with it. Please contact us to turn the system on for you.



Subscribing to charts

For a few customers, we’ve recently been manually creating reports containing charts and data, that are automatically emailed to managers regularly (once a month or week). This has proved so successful that we’re now introducing a feature to let users create their own reports by choosing charts and data.


It’s really simple to set up –

  • view charts as normal (open a tile, select a view and click the charts button)
  • select a period – monthly, weekly, or daily

agileBase will then gather together all the charts you’ve chosen to receive monthly and send them to you in a PDF document once a month on the first day of the month, similarly for weeklies and dailies.

Including data

Sometimes, you may want to see actual data instead of (or as well as) charts. To do that, select an option next to the ‘period’ chooser. There are a couple of options to email the top 5 or top 20 rows of data in the view, but if the view includes date fields, the system will also offer to send new records since the last report.

So for example if you wish to see a list of all new customers added to the system every week, find or create a view containing the ‘creation time’ of customer records and the system will offer the following options:


If there are charts in the view, they’ll be included too, if not, just the data will be sent for that view.

Lucky Dip

Many people may not even be aware of what charts exist in the system. Once a month, a random chart will be chosen for each user (from the data that they have access to) and sent to them, whether or not they’re subscribing to any. You never know, that may serendipitously be just what they’re looking for. This will also help to introduce the feature to the many users who may not be reading this blog.

Note: users with data filters are currently excluded, though this may be changed in future.

Other charting improvements

Choosing charts is one thing, but creating them is another. We’ve also been continuously improving this area, increasing the power of the system whilst also improving user friendliness. Some recent updates include:

  • the chart creation/editing screen is now separate from chart viewing, cutting down on clutter
  • there’s a new option in the menu for saved charts to ‘expand’ it. This will show it full screen – many times, users wanted to concentrate on one chart when presenting or interrogating data

As test users have said “Charts creation looks so much better.”

Make Marvellous Maps

Screen Shot 2017-08-08 at 19.05.55

We’ve recently upgraded our map visualisations, in a few ways:

  • data points can now have different sizes as well as colours, depending on fields of your choice
  • address recognition has been improved
  • the map background has been made grayscale so data points can be more easily seen

How to set up a map

  1. Open or create a view with address data in it. If mapping more than a couple of dozen data points, the view needs to contain a column for postcode, currently only UK postcodes are supported (though other data can be mapped – see below).
  2. Open the view and click the visualisations button (chart icon) on the left
  3. Under ‘map by postcode field’ on the right, choose the field in the view that contains the postcode (it will usually be called ‘postcode’)
  4. Optionally, select a text field to ‘colour by’. Each separate value in this field will get a different colour, so status fields are a good option for example
  5. Optionally, select a numeric field to ‘size by’. Larger numbers will get larger diameter circles. The system will automatically normalise the sizes so that none come out too massive or tiny

Address recognition

Some addresses in your system may not contain postcodes, either because they’re overseas or the address is incomplete. That’s no problem for a few cases, the system will query an address service ‘nominatim’, which powers www.openstreetmap.org

If your view contains other address fields, e.g. address 1, address 2, town, city or country, the system will build up the address to query by joining these fields together, from left to right in the view. The service has strict limits on the number of queries, so we can only do 15 or 20 at a time (exact limits may be subject to change), with a short delay inbetween each. However, we do cache the results in our database, so future calls to the same information won’t need this querying, each address will only ever need to be looked up once.

Note: we used to use Google Maps for this querying, but Open Street Maps has proved more accurate for the UK.

If you want to exactly specify which fields your ‘fallback address’ is built from, you can create a calculation and use that as the ‘postcode’ field. It could look something like

coalesce({postcode}, {city} || ', ' || {country})

if for example you wanted to fall back to city and country if postcode was blank.




Charting improvements

Many thanks to all of the many UX testers and customers who’ve recently helped us improved our platform and products.

There have been more updates than usual this month, that’s just because we’re being very productive implementing all the suggestions coming our way.

Without further ado, here are a few ways in which the new charting upgrade, which has been in beta testing for the past month, has been recently improved:

Chart editing

Previously, once a chart was saved, it wasn’t editable any more. That was because there wasn’t much point – charts were so easy to recreate, in most cases just needing you to specify the x-axis and y-axis functions. Now that there are more optional settings to customise, such as chart type, editing becomes more useful.

To edit a chart, there’s a new ‘edit’ option in the chart menu.


That will let you update the chart type, filters, breakdown etc.

Chart height

There’s a new option to let the user specify the height of a chart, useful for where there are lots of rows vertically which might be squashed – available under ‘advanced settings’ when editing a chart.


Editing feedback

The charting system is now more user friendly when making changes, so it’s clear for example when actions are in progress if they’re going to take a couple of seconds.

Please carry on telling us any new improvements you can think of!