SAP is the most widely deployed ERP product in large enterprises, and this very fact has led to some inherent complexity in the way that the user experience appears. Trying to present an easy to use interface on top of a product with over 30,000 underlying tables is inevitably a tricky proposition, and even though the SAP user interface has improved dramatically since the days that I first used it, it can still appear complex to an end user. A company that is making a very respectable living from this situation is Winshuttle, a Seattle-based software company (founded in 2003) which provides an Excel front-end on SAP. An accredited SAP partner, Winshuttle lives as an Excel add-in that allows a mapping to be defined between Excel cells and SAP fields. Once this mapping has been established, the end user can enter data within the familiar environment of Excel before entering this data into SAP (behind the scenes the updates appear via a remote function call, though the SAP BAPIs can also be used).
This approach can be very useful in the case of situations where a large batch of updates need to be made. Of course this could always be done via someone writing an ABAP program, but there is frequently a backlog of such requests in large enterprises, often meaning a lengthy delay in getting such requests implemented. An example might be if an adjustment was to be made to a large number of records in a consistent way e.g. a certain percentage price increase across a range of products. In Excel it is trivial to calculate what all the price adjustments would be via a formula, and using the Winshuttle technology these updates can be applied immediately. Of course all the SAP validation and business rules are still in place so there is no issue with data quality (at least, no worse than it would be by entering data manually), and the potential productivity advantage is clear. A neat feature is that if the user prepares a large batch of updates then these are queued up and executed, and the user can see the progress of these dynamically. For example, if 1,000 screen updates are made in Excel and batched up and then applied, but due to some problem the first 20 updates all fail, the user can cancel the request and fix the problem in Excel before resubmitting the batch.
This seemingly simple piece of functionality is so useful that 800 customers from a wide range of industries have already deployed it, allowing Winshuttle to grow at a rapid lick even through the recession. There has already been some acknowledgement of the business need for this via the Duet initiative between Microsoft and SAP. Although there is some overlap between these initiatives, there are enough differences (such as Winshuttle supporting all versions of SAP and all Excel/Windows combinations) that this effort should stimulate interest and broaden the size of the potential market, rather than rendering Winshuttle irrelevant. Winshuttle will have to dance carefully in such a situation to ensure that they provide enough difference in functionality to continue to add value, but given the somewhat different objectives of Duet, there should be enough room for tools like Winshuttle to prosper in the functionality gap left by the giant vendors. Moreover, Winshuttle could be further developed to provide a similar front-end to other ERP applications; SAP users are hardly unique in their desire to improve ERP productivity.