RSS Feed c9 logo Australia's best motorcycle shop retail software
Release 4.838 July 31, 2020 barney

Includes DB changes you need to log c9 out during upgrade

  • Fixes and tweaks
    • On receive order or process parts credit disallow total amount to go into -ve. Doing so would result in incorrect journal postings that would reduce c9s reporting of input credits. If you are processing a net credit then use supplier credits, or a net positive do receivals. This change is to prevent one screen from being used to try and implement the functional equivalent of the other
    • Setup : database tools. Add a new db task to blow away un-referenced stock records. (Unused for 12+ months & no linked web assets : images etc). Previously this tool was standard part of import price file . But was removed from there because of issue of web assets. Reintroduced here as an sepeate db maintenance task
    • Cloud Backup & import master file performance : Tweaked how cloud backup works for elements which are generally bulk updated so they queue faster. (Price file importing and EPC importing)
    • Website part variations. Tweaked auto variation generator so it can recognise things like 'S-MX6 WP BOOTS 39' and 'S-MX6 WP BOOTS 41' being variations of one another. Previous algorithm would bail if variation only matched numbers at the end, since this would pickup lots of spare parts too. New variation system also looks for certain key words like boots/pants etc in the part description. You'll need to reapply and manually refresh website like so
      • Business -> website -> settings -> parts variance management to regenerate variations
      • Business -> website -> settings -> general : click on 'Force website to refresh pages now' to force website page refresh
    • KTM Fathers day promo added some tweaks to support this.  More info to be provided on a separate post on how to make it all happen.
      • Added ability to configure a web discount on a specific franchise
      • Added new part image importer, that will import images for 'KTM Promo' franchise
Release 4.837 July 26, 2020 barney

Requires DB update, you'll need to log all terminals out during upgrade

Bugfix with cloud backup.  Under some circumstances verify task will not run.

Verify usually happens once a day. It main purpose is to double check copy of c9 is same as what is in the cloud. Beyond verification one useful thing it does is make sure your entire database is functioning as it will double check everything is accessible and correct, including very old historical invoices etc.

Recent changes to how F2 select part works can interfere with verify. If you search for parts by description like this:

This sets the database up in a way where verify cannot complete. It will run but never finish meaning verify will never finalise. Closing F2 screen is not enough, you need to close c9 terminal where F2 screen was done in order to unwedge it. Result is eventually verify report due and then overdue.

Technical root cause and fix:  Search by description creates a temporary table which uses same primary key semantics cloud backup uses to trigger backups. Verify tries, incorrectly to verify a 'temporary table' description search creates and fails because the table isn't accessible to it. Two fixes

  • Make verify only check permanent tables. Skip over temporary tables
  • F2 select part screen : drop all temporary tables on closing this screen.

Non functioning verify is not a critical error as error detection rate for verify is less than <0.1% . But it can put significant load on database server as once verify goes undone for more than 24 hours, c9 will spin more aggressively trying to complete a verify which will cause unnecessary disk thrashing.

Release 4.835 July 22, 2020 barney

Couple of bug fixes

  • Bug that has been in system for a while. Add a part to order receive for accessory supplier. Would not walk supercession chain on any added part so would add pre-superceded part causing various issues with restocking. Now fixed
  • Another regression on v4.832 released yesterday. Workshop scheduler was broken whenever you tried to do things like move jobs around. Now fixed.
Release 4.834 July 21, 2020 barney

Includes database changes. You need to log all terminals out during upgrade. Upgrade is very fast, couple of seconds.

Performance related regression with v4.832 : when adding parts in point of sale the screen could pause for a couple of seconds on systems with large orderbooks while c9 checks to see if part is already on order. Now fixed and should now be instantaneous.

Release 4.833 July 21, 2020 barney

Regression bugfix with just dropped version 4.832 : search tools on some list screens were not working : orderbook, F12 pickup order and AusPOST dispatch screens mostly. Now working again.

Release 4.832 July 16, 2020 barney

This version includes database changes. You need to log all terminals out during upgrade.


  • Update can take upto 15 minutes to apply, if your database is massive and/or your server computer is slow/old.

  • This update generates alot of new data that needs to be backed up. Online backups may take a couple of hours to catchup after update is applied. You will see 'Backup: copying' display in top of c9 for a few hours after upgrading.

  • This version can only work on version 10 postgres. If you are running version 8.4 postgres you will not be given the option to upgrade to this version. V 4.831 c9 is the last version of c9 for which postgres 8.4 can work with.


Reworking of Spare parts and spare parts searching

This version includes significant changes to how spare parts searching works, especially the F2 find part screen. Specifics:

  • Part searching is now only sensitive to alphabet and numbers.  So things like slash (/) full stop etc (.) no longer affect part searching.  If you happen to have a part in system with is the same except for these special characters, c9 will pop an screen to clarify which one you want.
    • For Beta dealers, system is smart enough to cope with non dot parts superceding to dotted parts so it will not constantly nag you to select one of the other. If c9 detects similar parts supercede to same item it will just present the one option
    • For Toro dealers, standard toro part number brain damage where 90-123 and 901-23 describe completely different parts still applies / is retained.
  • Part search screen now resolves supers in realtime so when looking at a supers part you'll see the final price, qty and description that applies.
  • Color coding of part find screen has changed to reflect the point of sale color coding scheme. The screen no longer color codes based on whether or not a part supercedes. Instead it color codes according to:
    • blue: Not carried
    • in stock and qty>0 : black
    • in stock but no qty. Red
  • The screen should generally feel alot faster than previously. Scrolling, searching filtering etc should feel snappier
  • These changes are made in part to support dealers who maintain their own part numbering systems to allow them to 'organise' parts into an internal system that they like : who wish to migrate to supplier parts (c9 recommended setup) but wish to retain their old numbering system and its process advantages by making them superceed to supplier parts instead. This way when you eyeball these superceded internal parts, you'll see supplier partnumber, supercessions, and supplier description etc organised according to your internal part number scheme but where everything is tracked by supplier part numbers : with all the advantages that provides, e.g. importing PDF invoices, getting price files, magician checking etc. e.g.:

Other changes

  • Import price file. Generally should work alot faster.
  • Supercessions
    • Now resolve faster but since we are taking 10ms vs 20ms generally should not notice. Reverse SS resolution when doing view part buy/sell screen though should be alot faster.
    • Supercessions will no longer 'repair' in event of a bad supers on import price file. Instead they will retain and display error prominently in view screen. There are some edge cases where rewriting supercessions is bad as it 'destroys' potentially important information.  C9 will still rewrite supercessions it the bad supercession is a stocked item, because otherwise you will no longer be able to access the stock record if it now sits within a bad supers chain, and this is easily a far more serious consequence than rewriting bad supers.
    • Supercessions can now be infinitely long. 'Long supercession chain' is no longer a thing. Only dead and looping supers chains are reported.
  • Link Int magician check : working again
  • Payroll ABA Export. Do not export records for staff with a $0 payrun.
  • Modify purchase unit on deal. If unit was not on system already (e.g. as a unit that has been serviced), then modify would damage record on the deal and make it impossible to fixup the deal without c9 tech support help. Now fixed.
  • Low level changes
    • improve memory usage of orderbook and list screens in general. Now 90%/95% more efficient. Large orderbooks + very inefficient memory storage of screen lists are potentially a common cause of out of memory errors in c9.
    • added network idle timeout for db connections. If unused for over an hour recycle the connection. Mainly affects fiche browsing as this uses its own DB connection that isn't kept active. For networks that tear down network links after 2 hours but don't respond with network RSTs when connections wake up again.
Release 4.831 July 8, 2020 barney

Fixes and tweaks

  • KTM Factory EPC / Part Image importer : broken again.... Working again.
  • Memory monitor.
    • This version adds an active memory monitor into c9.  Once memory consistently exceeds 80% and system is idle for a few minutes c9 will pop an alert warning of this encouraging shutdown. Part of this is it does a memory dump to disk, which we can then analyse to figure out root cause of low memory scenario (typically because of bad behaviour between java and video card drivers, but many many things can cause this so worth diving in to try and figure it out whenever it happens).
    • New setup option that will trigger a memory dump in event of out of memory error so we can do a detailed followup to figure out why memory ran out.


Release 4.830 July 3, 2020 barney

Fixes and tweaks

  • Bugfix with browsing notifications  could display record fetch error. Root cause is sending invoices for internal jobs: would work seem to work fine but setup a subtle problem that triggers browse notification screen to fail.  Possible other pathways exist in c9 that could trigger same/similar issues. Bug potential has been there for a long time (since 2016 at least), but only just received a report of bad behaviour this week. Underlying issue now fixed.
  • Edit estimate : allow window to be resized / maximised
  • Point of sale, once # of parts on list fills the screen make sure scroll window to bottom whenever a new part is added
  • AusPOST integration
    • confirm despatch screen : added search and toggle all feature to help out dealers who are doing large volumes of online order fulfillment and need tools to help to finetune their daily freight manifest.
    • Open label screen. Now has an advanced tab where you can manually configure pdf viewer open config. This can be used to force PDF viewer to print to a specific printer. e.g. something like this (the {f} is replaced with actual PDF received from AusPOST)
      AcroRd32.exe /N /T {f} "auspostlabelprinter"