RSS Feed c9 logo Australia's best motorcycle shop retail software
Release 5.2.22 and 5.2.23 May 18, 2022 barney

Includes DB changes, you need to log all terminals out during upgrade

Couple of serious bug fixes with 5.2.21

  • c9 would crash on various circumstances because of pack qty changes such as selling parts to workshop. (couple of db stored procs not updated to handle packs, such as part kit update )
  • NullPointerException on unit sell. tradein or purchase fine, only sell broken (newly added code to lock db records before update broken).

Pack Qty management

Version 5.2.21 overhauled how packqty works in c9. These changes are intended to mainly accommodate suppliers like MCS where their pricing and ordering is substantially pack based but things a little fluid in that what exactly a dealer sells, the pack or an individual item, isn't strictly codified/proscribed by the pricefile/supplier. You may wish to manage and sell the items individually, or in packs, or a mix : most parts as individual but some parts as their pack.

The design change allows you to optionally pick and choose which parts you wish to pack and which you wish to separate out.

for example you may

  1. opt to deal with a franchise as mostly selling packs as supplied, but with some exceptions manage items individually
  2. deal with a franchise mostly selling items individually, but some items you want to maintain as a pack for sale and stocking.

Finally some items on price file may lack packing data which is really there so you may wish to add it in support either 1 or 2 above

Initial Setup

For a franchise like MCS key setting you want to make sure is in place is in spares -> utilities -> add/edit franchise.  In order to be able to mix pack / individual parts you need to tell c9 that the pack figures are not strict, and that it will be okay to order qtys which are not muliples of packs. This setting here:

Default setup - track things individually

To track things individually, you need to tell c9 that by default pricing and order with supplier is all pack based, so c9 will convert accordingly. In same add/edit franchise setting. Check the two options, price files are based on packs, and order qtys must be packs.

Default setup - track things as packs

To track things as packs by default, i.e. to buy and sell exactly as it appears on price file without dividing by pack qty, uncheck options as below.

Changing default setup

changing the default setup automatically changes pricing you can see for not carried items. But for carried items you need to do a reimport price file to apply changes.

Spares -> utilities -> import price file. Select franchise and pick update only. This will apply pricing changes to stocked items too

Changing default setup can be disruptive with your pricing and orders with stocked items especially so generally you want to set this once and not change it. If unsure recommendation is to track individually, as in enable the options that state price files are based on packs and order qtys must be packs

Comparing pricing you see for N/C items on changing this this one setting in c9. You can see for MCS here:

Pack set (individual pricing)

Pack not set ( default, pack based pricing)

Overriding settings on a single item

Say system is configured for individual pricing, but part CS520 we don't want to sell individually but as the bag. Then when we add part into stock we have some options we can control.

Initially part looks like so:

But by changing pack information from default to per item, we are telling c9 that the price on price file is per item price. So we are ignoring the pack setting.

The list and retail automatically recompute to pack based pricing (orange)

Make sure you change max and ecord qty (red) to something that makes sense for managing this item on a pack basis

General usage guidelines for packqty usage

As implied above, you want to lock into a regime and stick with it. Same goes for individual part overrides.

If you want a bit more flex at point of sale, sometimes sell an item, sometimes sell a pack then units of measure functionality is what you want to use instead. For relevant franchises/  items you want to track them at their supplier provided pack price (so set per item, or disable pack conversion on franchise) and then configure unit of measure entries for relevant parts.  UOM is more flexible and fiddlier to setup. Packqty provides a simpler solution where for relevant suppliers the information largely comes baked into their price files already.

 

Release 5.2.21 May 14, 2022 barney

Includes DB changes, you need to log all terminals out during upgrade

Tweaks and fixes

  • DB performance tweak on cash till. Loading of till no list was not efficient, especially on systems with alot of history. Now fixed.
  • General Ledger performance caching : gl tallies are cached automatically on month boundaries. To help keep the cache fast, automatically generate cache overnight for last 20 years of activity.
  • Reworked unit selling / buying and rolling back so that relevant database records are explicitly locked and validated before operations go ahead to protect against undefined outcomes when a these operations are performed simultaneously on different terminals.
  • Aged payables report: was incorrectly using creation date, not due date for determining age on some open txns (bills okay, but purchases or any other txn type would incorrectly work off creation date ), now fixed
  • Print deposits for unit/workshop/spares deposits. Would no longer print reference the deposit applies for for deposits added since upgrading to 5.2. Now fixed.
  • View txn details, unroll unit info a bit more so it is obvious what unit is being affect. Added a button 'view line details' to help with seeing txn line details. All this is to help figure out more easily what unit a factory purchase appears under
  • Expand size of audit/id on some key screens for txn ids for systems with huge amounts of history

Heavy reworking of packqty logic especially around behaviour with pricefiles based on packs setting. Previously this setting would only influence pricing on stock file record and would only recompute on installing a price file. New changes:

  • N/C stocked pricing : factor in pack settings so displayed retail price for example is sensitive to pack size and pack setting
  • Recompute list & retail price when pack settings are manipulated in view change part
  • Update prices : applies pack pricing
  • Factor in pack settings on add part to stock
  • Allow ecordqty to not be a multiple of packqty where orderpack setting is not for packs.

Part of this change is to help facilitate MCS price files. MCS price file contains alot of parts in pack form. Now dealers may wish to sell some/all of those items on pack basis or individual basis. The above design changes will help facilitate this. A separate post will be included to help explain how to effectively manage MCS stocking with respect to packs.

 

Release 5.2.20 May 10, 2022 barney

Fixes and tweaks

  • Honda SAP Magician working again. (Tweak HTTP header payload)
  • Cash till detailed report : was not printing instrument name for cash tills with a till no of 2 or above. Now fixed
Release 5.2.19 May 6, 2022 barney

Tweaks and fixes

  • Newly added 'Items Repriced' screen looks visually similar to existing 'Items Below RRP' screen, but these two screen do very different, almost opposite things. Added some color and bold headers to help make it very obvious which one a dealer is in.
  • Added facility to tag units for online advertising to target i-motor 3rd party platform
  • Deals and unit sales : profit figures to show line margin (non spares invoice lines & passed on PD charges)
  • Orderbook : new button to access received order the part was received in on

 

Note there are some changes to KTM / HQV PDF importer to try and cope with kit parts. On importing PDF c9 will now list the kit and it will list component parts underneath it, setting components to 0 qty and kit qtys + price as needed. How c9 figures out  kit qty is a bit complex and is an imprecise 'guess' because kit qty information isn't definitively encoded on their invoices but it should be accurate 99% of the time. C9 will warn you of kit parts where the kit qty is imperfect and require manual checking.

Example result below

As always with these ongoing improvements, provide feedback and raise issues as you run into them as we try to zero in on some viable solutions for problems/challenges our industry throws at us.

 

Release 5.2.18 May 5, 2022 barney

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

  • Tweaks and fixes
    • Honda magician
      • Reworked magician code, something NQR about old code. (Rewrote to use std java http apis instead of apache httpclient)
      • Integration with Honda public deadstock website working again (with their new site addr)
    • Modify job : include button 'view unit', similar to UX design for view customer button
    • Previously reported bug with nullpointerexception on workshop parts positively identified and fixed (bind error view in selCustDailyOrder)
    • Paperwork for dealers in SA, default to SA (previously was defaulting to Vic paperwork)
    • View spares invoice : for spares invoices which are part of a complex graph of multiple invoices because of repeated use of 'merge invoice' function, some invoices would not be accessible / viewable because they did not land in the graph of invoices as expected. Problem only occurs in some very narrow circumstances and structuring of invoices. Fixed in this version so should work for all possible ways invoices could organise.
Release 5.2.17 May 4, 2022 barney

Something broken with 5.2.16, pc-eftpos integration not working with it.

No actual bug in the code, I suspect some sort of issue with compilation of code into program. Did a full recompile. Okay now.

Release 5.2.16 May 3, 2022 barney

Includes DB changes, you need to log all terminals out during upgrade

  • Tweaks and fixes
    • Bank rec and cash till : tweaked some times to improve database performance. Significantly snappier on systems I tested ( nested SQL procedures do not seem to be optimising well. Rewrote core query as plpgsql function, stored ref/prior rec ids in temporary variables. The resulting plan is essentially the same but it is significantly faster, suggests STABLE flag on prior/ref stored procs is not working as advertised and might be getting executed multiple times. Some more testing strongly suggests this is indeed the case )
    • low level v5 changed to help improve data migration tooling. (allow dbtool to hook into any JDBC database, not just c9 postgres. Improve performance of TrImport using cursors and some logic fixes on job batching not isolating self contained txn runs perfectly)
    • Couple of reports of add part to workshop triggering nullpointerexception. Problem likely caused by a closed table in a view which is triggered when keying in a part on order (pops select customer order screen). Added some guards to prevent tables from being accidently closed on main thread.
Release 5.2.15 April 28, 2022 barney
  • Tweaks and fixes
    • Billpay fixes and tidies: all fixed
      • Edit transaction - would not let you modify due date on spares receival bills.
      • Browse unpaid bills, would not show spares receival bills.
      • Pay selected bill in unpaid bills : would not  allocate payment to selected bill instead would instead use default logic of paying txns from oldest to most recent ordering
    • Biz activity report and recently added cash reconcile
      • Removed BAS - Cash basis as an option. Instead add a new option to report on accruals or cash, separate so can apply irrespective of tax code filter selected
    • Piaggio Group EPC importing : up and running again
    • Stihl Warranty export : change fuel question so it is tri-state. Instead of checkbox is now a radio with 3 options: Yes, No or N/A (N/A applies for things like electric items)
« Previous PageNext Page »