RSS Feed c9 logo Australia's best motorcycle shop retail software
Release 5.2.129 June 12, 2025 barney

Unscheduled bugfix release to fix a single bug

Cash till, if you try and modify a previously saved cash till result and change a previously banked figure to zero the save will fail misreporting some sort of simultaneous change.

Bug was introduced with cash till changes in 5.2.127 to improve cash till journalling ; fixed here.

There was a workaround but workaround is difficult to do so in this case best / most safely handled with an unscheduled update

Release 5.2.128 June 3, 2025 barney

Includes db changes. You need to log all terminals out during upgrade

Bugfix with General Ledger cache changes

Recent changes to GL cache contain a bug. Certain narrow combinations of behaviour can invalidate the cache resulting in incorrect general ledger balances being presented. Underlying cause is fixed here. Following is two scenarios that can trigger issue

  • add a factory unit on floorplan. 24 hours or more later modify that unit so it is a straight purchase ( or vice versa)
  • create a job with an invoiced sublet. 24 hours later, delete the sublet.

The underlying bug is older than recent changes actually. Cache invalidation is supposed to happen whenever gl changing modification is detected. But a couple of types of txns, mainly tax coding changes (like. switching from to/floorplan) and changes to reserve tracking (e.g. sublets on open jobs)where not invalidating cache. In prior c9 cache, other simultaneous changes would also happen that invalidate the cache anyway. But the new cache algorithm is a lot more surgical/efficient in what gets invalidated; making a previously masked problem now obvious.

Part of changes to gl cache we added daily tests and alerts to verify cache is accurate; which is how we detected this issue so quickly. This test has been refined in this version to also automatically force a complete rebuild of the cache.

Release 5.2.127 May 27, 2025 barney

Includes DB changes. You need to log all terminals out during upgrade.

Low level system fixes and tweaks

  • Very subtle bug where switching to fiche first time of day at exactly right moment can cause some data corruption when the system does a remote fiche refresh. In the one known instance where it happened it disabled online backup for that dealer.  Thread race bug with c9 configuration, and requires perfect sub millisecond timing to trigger. Fixed in this version.
  • General ledger balance caching can cause all c9 terminals to lockup requiring a server restart.  Potentially happens in environments where the terminal network access is unreliable.; this is fix is motivated by a new client who as experienced this issue 3 times in ~ 2 months.  General ledgers need to be able to tally balances to a set date for things like cash up screen etc. Instead of tallying 10+ years/ 3 million postings every time c9 needs to show you yesterdays cash on hand, c9 uses some sophisticated caching to speed this up 1000x fold. The current algorithm, cache on demand, requires very carefully managed locks between all computers. A cache request on one terminal needs to be sure other terminals are not simultaneously manipulating the general ledger while it is generating a figure for caching; otherwise it might miss changes currently in flight and incorrect information ends up being cached. If that terminal that requests a lock for caching then falls off network then all terminals are broken until a restart.  This version of c9 introduces a new approach : mark/sweep cache. Advantages : alot faster overall. Cache updating only happens once a day and usually at midnight / first thing in morning. Recache cannot not trigger system wide freezes . Disadvantages : more complex to create.

 

Cash Till / Bank Rec quality of life changes

To date, cash till changes to amount banked would write an additional posting to reflect the change. So if you bank $50, then amend it to $55, c9 would write the difference $5 as an additional journal. This combined with delayed settlement feature added some time ago will result in very messy looking bank rec screens when it comes time to do a bank rec. This version of c9 changes behaviour so instead of adding the change as a new journal, the existing bank journal(s) are updated leaving bank as a single journal entry.

Further to help with managing delayed settlement capability, bank rec screen will highlight txns where banked funds are maanged via the banking funds clearing GL code, and it will show how much funds clearing has been delayed. (.e.g in bank rec will show +1 <dd.mm to indicate the entry in bank rec represents funds banked from the previous day)

Other tweaks and fixes

  • Unit sale with tradein : print tradein unit framenumber on cost tally. Needed for some finance companies
  • Payroll employment types: UX issue with how casual rules are shown on the screen. Redesigned so it is obvious these setting affect ALL staff in the employment type, not just staff tagged as casuals
  • Stihl Warranty : reword warranty questions as requested by Stihl
  • Spare Part history graph: provide grand total for all time sales #
  • Unit Deals : add color code icons similar to workshop jobs
  • Unit invoice : show separate unit discount entries for each unit on invoice
  • Payroll 2025 Tax tables / changes
    • Super Guarantee increases to 12%
    • Tweaks to Medicare low income threshold and Levy Surcharge
    • HELP/Student Debt changes to a simpler progressive tax scale - since now progressive scale do not include rate % on run
  • Profit summary - renamed to Business Health, to discourage attempts to use it for compliance reporting. Use P/L, Bal sheet located in accounting reports instead.

 

Release 5.2.126 May 16, 2025 barney

This version of c9 introduces another new remote access / support tool. Called RustDesk.

Last version of c9 we switched out AnyDesk for RemotePC.  RemotePC we have discovered in the last week is not suitable for shops where internet access is slow.

 

Release 5.2.125 May 7, 2025 barney

Includes DB changes. You need to log all terminals out during upgrade.

Managing banks

There have been some rough edges with this for some time.  A system starts off with a bank 1-1200 and this is assumed to be main trading account. But if you configure additional banks these drop as sub codes, making 1-1200 a control code now. There are some consequences around this which are messy . This version of c9 introduces a heap of improvements:

  • Define a default bank on a sub code : 1-1299 migrate all postings to 1-1200 to this new code
  • Include this default bank in select bank screen. : Hide it though if custom banks are defined or if the default bank gl has a non zero balance
  • Streamline bank rec for default bank ; always select an explicit bank now
  • Setup screen : remove 'x' buttons as they are now redundant with bank select screen now being able to explicitly select default bank in select bank screen
  • Make appropriate adjustments to bank rec, make sure balance sheet includes newly minted default trade bank code.

Remote Support

This version of c9 swaps out AnyDesk for RemotePC when you click on remote support.

Bugfixes and Quality of Life Tweaks

  • 100% line discount on spares was not saving correctly, on pickup stage of reserve would rewrite as 99.99% : now fixed
  • Finance Settlement with a AP flagged finance company : was broken and would show wrong figures on screen. Normal convention of using AR worked fine, just AP only a problem.  Now fixed for both.
  • Spares Point of sale :  make Loc column longer
  • All lists : provide a visual indicator if column content is clipped. e.g:
  • BAS  Guardrail Refinements
    • Initial computation of 4 (copy of W2) broken. It is supposed to copy w2, but it's behaviour was quite damaged and difficult to predict what it would store. Now fixed. Broken with recent introduction of guardrails, previously was fine.
    • Memorise payroll limit setting on each bas. Previously would default to last month of bas period always
    • Orange highlights on Payroll figures (W1,W2,4) : do not highlight when underlying payroll figures are zero : assume payroll is managed elsewhere
  • Aged Balance /Historical Aged : make sure negative sign is shown on aging % for relevant columns
  • Availability / Leave  : Do not allow records where no day/time/DOW is set : allowing it blows up scheduler and it has happened enough times now it deserves a strict guardrail
  • General Ledger Control Code Posting : c9 being loose in design allows posting to control codes. Almost always though this is unwanted, this version of c9 includes locks to guard against this. The lock is configurable in same place bas/gl locks are configured. By default with this version you cannot post to a control code whose balance is zero: this default setting should discourage practice and for dealers who use it, they will not be immediately impacted by this tightening of rules
  • Point of Sale Import - allow PDF importing of invoices we support for suppliers. Could be useful in some situations. Main thing this can be handy for is importing from generic excel files with following format:
  • Add customer with duplicates - on select screen highlight whether or not a potential match is archived. Score archived matches much lower than active matches. When selecting an acrchived customer automatically un-archive them.
  • Label printing - added some guards against null pointer exception walls of text : one consistent way to trigger this is configuring labels with 0 size but suspect other things at play too like font caching in java etc.
  • Payroll pay run screen - multiplier column would only show 2 decimal points, not full 4. So results like leave loading of 0.0175 would display as 0.18.  All the math was fine, and payslips print correct too but on screen it looked incorrect because of visual rounding of result to fit 2dp on the manage payrun screen. Now fixed.
  • Miner - allow query of workshop order number field
  • TillPay tokens for payments - expand their use
    • deposit handling
    • workshop job payments
    • AR/AP/Cust Deposit Txn processing
  • QLD Form Updates
    • F5245 - LOA Individual
    • F5244 - LOA Company
  • Profit Summary - would misreport profit change totals in cases where in current period there is nothing to report but past comparison period there was activity. The comparison data would effectively be ignored and not make it into the report. Now fixed
  • High DPI Screen sizing tweaks
    • Changed the algorithm slightly so resizing is consistent across all screens. Previously it could vary slightly depending on the open window.
    • Left hand menu screen didn't do sizing very well; effectively double dipping screen size configuration making the side menu look massive. Now fixed
  • Tillpay Weborder Fixes : cope with some exotic scenarios where preauth isn't voided when it should. c9 tries to avoid calling void unless it is confident it is needed. C9 miscalculates when it is needed by failing to distinguish between a capture and a debit. It sees debits >= original preauth and assumes the preauth is already done. Generally not an issue for most setups, but impactful for small % of dealers who do not do on website capture, customer authorises recurring payments and the txn funded is greater than original capture.

Notes about remote access

  • Note things included in this c9 do not automatically show up when using c9 remotely. We need to build a new version of remote access for those to kick in. This will be in a week or so. Specifically
    • screen sizing improvements
    • list column clipping indicators

Other

  • TxnEngine update : allow rearrange lines on a journal post. Needed for reorganising workshop line items in 5.3. Non functional impacts on v5.2
  • Event Logging : added ability to permanently record and centralise debug/performance activity with critical systems. Initially implemented on tillpay for online + instore terminals. Intent is to allow us to assess performance and reliability of critical dependencies without having to request logs off individual terminals.

 

Release 5.2.124 April 8, 2025 barney

Regression bugfix

  • changes to estimatein 5.2.123 broke ability to create an estimate. Could not complete screen as next button was always greyed out. Now fixed

Other

  • payroll liability report. Service years column math was incorrect. Now fixed.
Release 5.2.123 April 2, 2025 barney

Tweaks and fixes

  • Mojo Magician - working again
  • Beta Fiche Import - working again
  • View Customer  - Units tabs - show model year
  • Payroll changes
    • Recurring charges: add an option to enable / disable prorating figures. Enabled by default to retain existing behaviour. Useful for mandatory garnish
    • New employment type option to flag leave loading as OTE. Important: this is enabled by default to align to ATO guidance which represents a change in existing behaviour for c9
    • New employment type config setting to suppress sick/long service leave entries on payslips
  • Labour rates - some rounding issues in some circumstances. Such as inputting 115 for inc rate. Now fixed
  • Honda Warranty Export - only export mobile numbers not landline.
  • BAS - add lots of guard rails to minimise human error
    • Highlight when bas reporting period isn't locked in GL with a BAS lock
    • Highlight figures which do not match c9 retally
    • Disable editing date range if bas is flagged as paid or c9 retally doesn't match any of the figures
    • Add a 'reset' button to reset to c9 tally
  • Workshop estimate - estimate with warranty flag does not  apply the warranty flag
  • Workshop Planner - Dates and times
    • make promise date presentation same as receive date for consistency
    • drag/drop to work on promise date+time as well as receive date+time
    • move to work on promise date+time as well as receive date+time
  • Workshop job types - autofeeding effort and descriptions etc. tidied up code and make sure it works for editing estimates (previously estimate edits did not update effort etc)
  • Workshop Effort tally - would go haywire in some circumstances when adding/modifying job types and estimates. Caused by mishandling of internal encoding of effort when adding/subtracting effort figures.
  • Simple Workshop Job - default staff select to only show mechanics
  • TxnEngine - some more refinements to recent changes : bug with editing ancient v4 migrated txns such as unit floorstock from 5+ years ago. Edits would fail to save with journal error.
Release 5.2.122 March 20, 2025 barney

Another regression defect in 5.2.120.  Receive spares goods in completely broken and unable to save result due to journal error.

Now fixed : 5.2 code was incorrectly using 'internal' tax code to model a spares goods in txn. Definition of 'internal' refined as part of 5.3 work and this broke this workflow. Reviewed all other code paths incase of other examples of this; confident goods in was only problem.

Release 5.2.121 March 13, 2025 barney

This version fixes a number of regression bugs introduced in last version of c9 earlier in week

  • Weekly planner. Ability to drag and drop lost. Loss is caused by some rough edges in our tooling where loss of drag/drop functionality can happen and we don't notice the change in our change management processes. Readded in a way that is less likely for same thing to happen again.
  • Edit Contact txn: if you edit any contact txn involving a tax code, like EXPENSE on a bill, but only make a trivial change like change reference only the change will fail to save with a journal error. Now fixed.
  • Add Txn: under some narrow circumstances the visual final balance & aged balances shown on screen will be incorrect, but txn will save correctly anyway with actual correct/expected figures all round. Include fix to visually show correct value. This bug is a bit older than Tuesday's update for 5.2.120
Release 5.2.120 March 7, 2025 barney

Includes Database changes. You need to log all terminals out during upgrade

Tweaks and fixes

  • Add payment. Under some circumstances c9 will link to related txns multiple times with partial amounts depending on how the operator inputs the the payment. This is only obvious when go review linked txns or print an open style statement. Force c9 to rationalise links from payments to invoices so there is only one record instead of multiple
  • Deal. Colour code detailed notes button if there are any
  • New GL Codes
    • Equity - Issued Shares
    • Sales - Insurance payout
  • Planner. Show promise time as well as date
  • Workshop invoices:  suppress pricing broken on invoices since change to accommodate optional Ex gst pricing outputs
  • Browse Spares Deposits: make sure report includes any invoices which have open deposit even if they normally would not have any such attachment
  • magician checks
    • wasn't handling out of stock condition correctly. Fixed
    • Mcleods now working again
    • New Monza portal. Note : bulk image scraping is no longer feasible with new monza site. Also dealer website based checks are removed due to concerns about performance / result reliability

TxnEngine 6.0 : this version includes a heavily reworked tax / discount engine. Mostly these changes are intended for 5.3 and it is not expected they will be functionally obvious in 5.2 but documented for completeness.

Next Page »