Stephen Smith's Blog

All things Sage 300…

Sage Advisor Update

with 9 comments


There is a lot of debate on the relative benefits of installing software on-premise versus using a cloud or SaaS based product. Generally for SaaS based software you don’t need to manage backups or infrastructure, that is all done for you and you don’t need to perform software updates, they just continually happen in the background.  On-premise software then gives you more control of your environment, allows greater customization and you don’t need to worry about your data being in someone else’s hands.  The team at Software Advice wrote a good article on the benefits of on-premise software here.

One of the advantages of SaaS, is not having to install updates, just having them appear magically, ready for your use. On-premise software can do this as well via auto-updates. For instance the Google Chrome browser will silently update itself whenever it notices a new version is available and usually you never notice that it has updated itself. Other products let you set options on how they update or prompt you whenever an update is available, letting you choose at that point what you want to do it.

Sage is looking to add automatic software updates (similar to Windows Update) to all our products called “Sage Advisor Update”. A couple of Sage products like the Nonprofit Solutions already include this. Most other products will be rolling this out with their next release over the next year. When a Sage product with this capability installs, it will add a new Sage Advisor Update program to your Start Menu. Think of this like the Apple Software Update program. Below is a screen shot with some labels of this program:

This will give you a list of all the updates available for all your Sage products installed on this computer. From this program you can see what is available and then download the update and optionally also install the update. The Sage Advisor Update is aware of client/server type installations as well as security requirements for installation (like being an Administrator).

Starting Slowly

Sage has a large set of business applications, based on all sorts of technologies and using all sorts of customization schemes. Running auto-update on an ERP which has source code customizations will remove all those customizations. Installing a product update that includes Crystal Reports runs the risk of over-writing customized reports. Perhaps all the workstations need an update to match a server update and this needs to all be done at once rather than at the whim of a single workstation user. Plus most large business applications are integrated to all sorts of third party products and compatibility with all these needs to be checked.

These are all the sort of pain points that cause upgrades to be historically expensive. Ultimately we would like to be able to silently and frictionless install updates without any user intervention. But we will start slow. For the initial releases, Sage Advisor Update will notify you of updates and download them for you. However it won’t take the next step of automatically installing them. This then allows you to contact your business partner to confirm whether whatever needs installing is safe for you given the customizations, third party products or integrations you might be running. Additionally Sage Update Advisor is fully configurable so you can tell it what you want done or not done.

Perhaps it will be a while before we can perform a major version upgrade silently behind the scenes. However perhaps we can automatically install some critical hotfixes that we know won’t break customizations. Perhaps we can quickly reach the point of quietly installing product updates behind the scenes. Part of this is discipline on Sage’s part to be very careful in product updates that we aren’t doing anything that will break customizations.


All Sage products tend to have upgrade-safe customization and upgrade-unsafe customizations. Upgrade safe customizations will not be broken by Product Updates and new versions of the software. The other will (might) be broken (or will break the new version). For instance for Sage 300 if you customize a Crystal Report in the directory where its installed, then it is not upgrade safe since it will be over-written by a new version. However if you place that report in a customization directory then it is upgrade-safe since it won’t be over-written. Similarly for Sage 100, if you use the customizer tool, then you are upgrade-safe, if you modify the source code, then you aren’t.

As we move forwards we want to make all customizations upgrade-safe. This way new versions can be installed at a far lower cost than they are today. Ultimately then customizations won’t be an issue to upgrading and won’t be an impediment to the Sage Advisor Update program.

Frictionless Upgrades

Ultimately we would like to make the whole upgrade process frictionless and remove the current large cost in upgrading customer’s business applications. Sage Advisor Upgrade provides a tool that can notify you when upgrades are available, download them and possibly install them. The next step is ensuring that our product updates don’t cause problems with customizations. Either by investing more in upgrade-safe customization technology or by having the product update itself update customizations to work with the new update.

Another aspect of this is to make sure any new features are easily and naturally accessible as well as very easy to learn. To make upgrades truly frictionless, they shouldn’t require a large training effort to get everyone to effectively use them. Other aspects of Sage Advisor technology has the ability to watch how you are using the software and offer training tips to take better advantage of what you have. A very large percentage of new feature requests we receive are for features that are already in the product, so we need to do a better job of helping people make use of these.

Downsides to Avoid

That’s not to say auto-update can’t be annoying. When I returned form African Insights 2012, I booted up my home computer and then it proceeded to install Windows Updates, Apple Updates, Flash Updates, Acrobat Updates, etc., etc. Basically it took over an hour to boot my computer hand have it usable. Perhaps I shouldn’t have clicked the buttons to let all these updates proceed, but I like to stay up to date. Especially annoying are updates that require a computer re-boot to complete.

In Africa, several people I met never run Windows Update. This is because they access the Internet over the cell phone network and have very low download limits. If they let Windows Update run then it uses up their download limit and Internet access becomes quite expensive.

Of course a worse case is having some favorite program break, so you can’t use it until the next update or you have to manually un-install it and then manually install an older version. This has happened to me with Google Chrome a couple of times. Worse of course is when Windows Update messes up and you are stuck with re-installing Windows.

We need to keep all these things in mind when we deploy updates, that we aren’t just putting a lot of noise in front of customers. That we are respectful of people’s time and the fact that they need to get work done with their computer. That they may have restrictions like bandwidth limits and will need ways to work around these. We especially have to increase our product quality so that our automatic updates don’t break things and don’t cause problems. A certain number of current upgrade difficulties is due to Sage pushing upgrade tasks to Business Partners rather than automating the process; now, Sage needs to spend the time and make the investments to automate all these tasks.


I just updated my iPad and iPhone to iOS 5.1 and this was a fairly painless procedure. It took the device a little time to download and install the update, but it did it all without intervention from myself. It will be nice when upgrading large multi-user business applications is just as easy.

Written by smist08

March 10, 2012 at 6:22 pm

9 Responses

Subscribe to comments with RSS.

  1. […] Read more about the Sage Advisor technology […]

  2. This is all fine and dandy if there is some serious QA done on the updates. If I see this with SageCRM given the track record of the last few patches I will be very afraid. The last few SageCRM patches released were pulled a a short time later due to serious bugs, then re-released. If these were automatically updated via Sage Advisor, installs could suffer from these initial bug effects.

    How would QA of updates be handled with Sage Advisor..would you have a small initial release (say to customers who are willing to be guinea pigs) to gauge any possible real world problems, then rolled out to the masses?

    Stacy Denunzio

    March 12, 2012 at 8:52 pm

    • True, these do require a higher level of QA. Releasing to a smaller subset first sounds like a good idea.


      March 12, 2012 at 11:14 pm

  3. I also designed an automatic updates, we developed in Agile fashion and learned critical lessons.

    InstallShield are clueless to what’s required to safely auto-update an on premise ERP system with customization potentiality in the database, on the client or even simply customized Crystal Reports.

    So we built 2 installers.

    Each only ever needs installing once on a new PC. From that point onwards, the process is automatic, metadata driven and componentized (but still using InstallShield). To such degree a metropolitan ERP site in Spokane took 5 IT people 3 days to install before the new push installer, afterwards takes 15 to 30 minutes for 200+ PCs.

    What we learned is to autoback up Crystal Reports on each client, because customers never know what is custom and what is not. We did the same with any custom components. The client server app, runs under an HTML Browser allowing full white label re-branding and Lynx style multi-country forks.

    On the server we provided a test and production install, to allow any database customization to be rolled into the new update. Immediately on deployment, the client installer auto-detects the new server installer via simple txt batch number comparison (=agile release in development) providing a continuous update process with extreme traceability and no hot fixes ever, achieving SaaS like updates.

    Probably some details I’ve forgotten. The main thrust, we able to dramatically improve customer experience, reduce support and increase development throughput, all by changing to an automatic push installer.

    boulton clive

    March 22, 2012 at 6:53 am

  4. […] Sage products over their coming releases. Previously I blogged on the Sage Advisor Update project here. In this blog post I’m going to talk about the Sage Advisor PEP (Product Enhancement Program). […]

  5. […] include a number of stock process flows. We can then augment this collection as we go along using Sage Advisor Update. If you have the proper security rights, you can right click on the item in the tree and select […]

  6. […] Sage Advisor Update Sage Advisor PEP Sage 300 ERP 2012 Payment Processing Sage 300 ERP Inquiry Queries for 2012 Value Added Application Features for Sage 300 ERP 2012 Sage Visual Process Flows What’s New in the Sage CRM Integration for Sage 300 ERP 2012 SageCRM 7.1 Released Sage 300 on Windows 8 Sage 300 ERP 2012 Supported Platforms SData Enhancements for Sage 300 ERP 2012 SData Referenced Resources […]

  7. […] Langner, Executive Vice President of Mid-Market Solutions at Sage – explaining that part of Sage Advisor’s utility may be to mine anonymous customer data for providing feedback to other customers (average […]

  8. This would be great … of course, it would need administration controls – especially for synchronised database (like Sage ACT!) where an update might require a schema change or break third-party addons and need to be tested before allowing it to roll out to LAN or remote users. Maybe an option to use a custom update server (à la Microsoft’s WSUS – but without a full server infrastructure) so that admins could approve them? I’ve previously written some articles in different scenarios for this and could dig them up if anyone wanted to see them


    January 11, 2013 at 8:03 am

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: