ERP and Smartphones

Monday, July 12, 2010

As I was sitting up last night at 3am rocking my littlest man to sleep again, a comparison of ERP being similar to a Smartphone popped into my brain.  It always seems my best thoughts happen in the middle of the night, but that’s another topic.  So, what do I mean by ERP as a Smartphone?

My Smartphone can do lots of things, even though it is a pretty basic model compared to what is currently available.  (Even that statement shows similarity – classes of Smartphones, just as there are classes of ERP, depending upon what you need/want and how much you are willing to invest.)  My basic model, out of the box, can surf the web, send and receive email, send and receive text messages, download new ringtones, play a few simple games, change the colors, etc.  All fairly common among Smartphones, and a pretty basic offering which suits my needs fine at this point.  There are two points I want to make here.  First, my  Smartphone does not do everything, nor do I expect it to.  Second, I can gain added functionality by downloading 3rd party apps that work with my phone.

Let’s start with point two above – 3rd party apps.  As Apple taught us, there is nothing wrong with 3rd party applications to enhance your existing phone.  Apple could not and does not want to have an Everything Phone and all that would entail.  They do not have the developer power or desire to do that.  No single company does.  So, by releasing a development kit, and creating a method for others to develop apps and enhance the smartphone experience, their smartphone becomes a jack-of-all-trades phone that almost can do anything and everything desired.  Not everyone needs all the apps available – people desire different things and the app marketplace is where they go to customize their phone as they desire.  This goes back to the first point above.  Apple, Google, HTC, Sprint, AT&T, et al provide the strong core, and virtually anyone in the world provides the enhancements and “wow” apps.

Translating this to ERP is easy, but people still expect their ERP system to be an all-in-one solution.  This is darn near impossible, for many reasons.  Chief among them, in my opinion, is that every organization has different wants/needs/desires, and expect things to work as they want, not as dictated to them.  The sheer amount of flexibility required to accommodate all options would make the software so complex that setup would take eons and require such detailed knowledge of what options affected what other options that an implementation would be outrageously expensive and cumbersome.  Therefore, companies make a strong core, even SAP and Oracle, and then other ISVs add-on industry specific functions or additional “core” functionality.  Selling this, however, is still difficult at times, because people have not stopped thinking of ERP as an all-in-one solution from a single vendor.  But this cannot be the case, and people need to learn that.

If you look at some ERP projects, especially some open-source examples like xTuple and OpenBravo, you will see an app marketplace.  There, anyone can develop an app that enhances the existing functionality.  Granted, developing an app for an ERP system is more complicated that for a Smartphone, but the general idea is the same: create a strong core, have a development kit that can be used to enhance/extend the core, and provide a way for ISVs/developers to monetize those apps and create an environment where the core is background but indispensible.  Think SalesForce with force.com, SugarCRM with Sugar Exchange, even NetSuite and Quickbooks.  Microsoft Dynamics GP does not have a marketplace per se, but does have a robust 3rd party solution directory.

I think ERP will continue to move in this direction, and I think it has to in order to actually live up to its own acronym – Enterprise Resource Planning.  That can entail so many things to so many different people that being able to get the solid core and then enhance it oneself or purchase/install 3rd party apps is the only way this can happen.

The Small Business Web (site)

Wednesday, May 5, 2010

While looking around on the Google Apps Marketplace, and some of the apps available, I stumbled upon The Small Business Web – “A directory of web apps to help small businesses bloom and grow.”

According to the site, “The Small Business Web is a movement to bring together like-minded, customer-obsessed software companies to integrate our respective products and make life easier for small businesses. While there are many products available for small business owners on the Web, the approach we're taking is to use each others APIs to provide a high-level of integration between these applications and create a more seamless experience for our customers.”

There is a lot to like in that statement, and a broad range of available options covered in the statement.  Notice that using APIs is the main method of integration, and some of the apps are integrated with multiple other apps.  For example, some accounting software may be integrated with expense tracking software, CRM software, email marketing software, and project management software.  I think for small businesses that can be both good and bad (like most things in life), but at this point I think the good will often outweigh the bad.

The Good

  • Focused software, so the small business gets software that is very good at what it does.  This is a very key feature, and cannot be understated.  Having an app (and vendor behind it) that focuses on their core is a great way to take advantage of the latest and greatest functionality available.  I have seen deals lost due to a lack of this in a larger, more broad package
  • Integration with other apps provides a simple way to leverage each application’s best-of-breed features
  • Generally free to manageable pricing (usually per user or per month)
  • All web-based software, so the small business owner does not need a server, server management, backup software and hardware, etc.  This can be a huge headache-saver and money-saver!
  • Always using the latest features of the software due to the SaaS model

The Bad

  • Multiple apps means multiple vendors, which means multiple support options, multiple payments to be made each month (although automated billing is probably used), multiple apps to learn and use and grow accustomed to their interfaces
  • Integration may be used loosely, so you may be expecting more than is available
  • You are paying a monthly or per-user fee for the life of the service, which can add up over time (or user counts!)
  • If you are uncomfortable with knowing your data is at someone else’s house, this may not be for you.  I’m not going to harp on this one, because many, if not all, of these companies hosting these services have better data security than a small business would
  • How do you decide which app to use?

I’m sure there are more positives and negatives, and if you have any please leave a comment.  Overall, I really like this idea, and will be attempting to evaluate some of these apps.  Many have a free trial or are free for one user, one project, etc.  I’m going to do my darndest to get some evals up on the blog soon!

xTuple Release 3.5.0

Wednesday, April 7, 2010

I attended a webinar on xTuple's upcoming 3.5.0 release.  One new item I am looking forward to is drop-ship functionality for Purchase Orders.  It ties in very well with Sales Orders, such that when you create a Sales Order line for a drop-shipped item, it can automatically create the PO right then.  When you "receive" the PO, it automatically updates the Sales Order, telling the order that the quantity has shipped, so you can then Invoice the Sales Order.

Version 3.5.0 should be out any day now, followed by 3.5.1 not too long after.  3.5.1 will add a new "Desktop" to the application, with icons that link to a menu option.  This is more along the lines of what Microsoft is doing with their Dynamics ERP software packages - a customizable home page.

There are some other features in the release, such as autocomplete when looking up records, and some features around manufacturing and tooling that will be helpful.  Overall, I am really looking forward to evaluating this software and comparing it to Dynamics GP and others.

Related:
http://ostatic.com/blog/xtuple-expands-erp-software-with-cloud-computing-drop-ship

Open Source ERP Projects Worth Evaluating

Monday, March 29, 2010

This is not meant to be an exhaustive list, by any means.  These are projects that I have played with some, and believe they can work well for small-medium enterprises.  List is in alphabetical order, nothing more is implied by placement.

They each have their strengths and weaknesses.  Each have a free version, some have commercial versions with additional features.  Compiere, Openbravo, OpenERP, and openTaps all have web-based interfaces.  All can run in the cloud (usually Amazon EC2) or will be with new releases soon.  Hosted versions exist as well.

I plan on publishing more details about each as I continue to test and evaluate against other ERP solutions (mainly Dynamics GP), so stay tuned!

Is OpenERP ready for Primetime in the US?

Wednesday, December 9, 2009

I have had a recent email conversation with a gentleman about OpenERP and its readiness for US-based small businesses.  It's an excellent question, and one I am currently evaluating, and have been for a month or two.

OpenERP, if you do not know, is a modular-based ERP software solution that is more of a framework than most ERP solutions I have seen.  It is built on Postgres and Python, two of my favorite things.  The website touts over 300 modules that are available to plug into your OpenERP solution.  It's feature list is large and broad, to say the least, with modules for Document Management, Wiki, Portals, HR, Projects, and more.

I have downloaded and installed OpenERP on Windows and on Linux.  There is a fat client and also a web client with equal functionality (as far as I have seen so far).  There is also a SaaS version called Odoo (http://odoo.com) that is very reasonably priced.  Although the SaaS version does not let you install all the available modules, but it does tell you why it is that way.

So, do I think it's ready for primetime in the US for small businesses?  For the most part, I would say it is.  The price tag of the software itself is unbeatable (free) and the modules and features are solid.  Other packages will do other things better, but not at the price and perhaps not as integrated.

More to come as I keep learning it and evaluating.

GP Sales Cube with Pentaho

Tuesday, December 8, 2009


I now have Pentaho talking with my Dynamics GP data in SQL Server 2005.  I have since been able to make a Sales Transaction cube using the Pentaho Data Integration tool along with the Schema Workbench.

The Data Integration tool is used for the ETL/Integration portion of the process.  It reads data from GP and creates dimensions and the resulting fact table.

The Schema Workbench is used to create the Analysis views that will be available in Pentaho's Mondrian Schema.  It's an XML file that lists out my dimensions I define (Time, Sales Territory, Customer Class, Item Class) and some measures.  You use this tool to publish the schema file to Pentaho so you can use the User Console to create a new Analysis View and slice and dice your data.

I have also worked a little with the Design Studio and created some xaction files that generate flash-based charts using my GP data.  The examples are quite helpful, as well as the Pentaho Wiki on Charting.  These xaction files also are accessed via the Pentaho User Console.

Next step - refining my Sales Cube and using the Community Dashboard Framework (CDF)!

More on Accessing Dynamics GP Data using Pentaho CE 3.5

Thursday, November 19, 2009

My first post on using Pentaho to access Dynamics GP data in SQL Server left off with me being stuck in limbo.  Since then I have downloaded the Pentaho Enterprise Edition trial version, which provided me with access to the very helpful Pentaho Knowledgebase.  The Pentaho KB has very good information about installing, configuring, and using their software.  I also stumbled upon a great little guide for using Pentaho Metadata editor to setup data sources for use in the Pentaho User Console.  Using this guide and some info from the Pentaho KB, I have now setup data sources that access Dynamics GP data residing in SQL Server that can be used in the console for Ad Hoc Report creation.

I extracted the Metadata Editor to my c:\pentaho\design-tools folder.  Inside the newly created folder, metadata-editor, put the sqljdbc.jar file in the libext/JDBC folder.  This is to access MS SQL Server.

Now in the Pentaho Admin console, I setup a new data connection called TWO, and specify my connection information.  I am using the Microsoft SQL Server JDBC driver, which is located in the following folders for the Admin Console and the User Console to access this driver:
  • c:\pentaho\server\administration-console\jdbc
  • c:\pentaho\server\biserver-ce\tomcat\common\lib
If you have not put the sqljdbc.jar file in these folders, do so, and then restart the Admin Console and the main BI Server.



Now I follow the quick guide mentioned earlier, and start by editing the c:\pentaho\design-tools\metadata-editor\simple-jndi\jdbc.properties file to add my custom datasource.  My section looks like this:
TWO/type=javax.sql.DataSource
TWO/driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
TWO/url=jdbc:sqlserver://localhost;databaseName=TWO
TWO/user=username
TWO/password=mypassword
Use the same name as what you called the data connection in the Admin Console.  Next I open the Metadata editor by running metadata-editor.bat.

First step is to add a new connection.  I thought I could use a JNDI connection because I had set it up previously, but that did not work, so I added a new connection of type MS SQL Server and Native (JDBC) as the access method.  Name it the same as what you have used earlier - in my case TWO.  After I confirmed this, a window popped up asking me to import any tables I wanted.  I selected a few needed for accessing Customer information.



Next is to make a new Business Model by right-clicking on Business Models and selecting "New Business Model."  Enter at least an ID and a Name.  This name will show up in the Pentaho User Console as an available Data Source when making an Ad Hoc Report.



In the Metadata editor, you can give pretty names to tables and columns, instead of the sometimes cryptic hard names (especially in GP!).  This can be done at the main Connection level, which would display in the Business Views, or at the Business View layer itself you can override what is already setup.

I opened up some customer tables and edited the names of the tables and the names of the columns to make them more presentable.  These names show up in the Ad Hod Report designer, so make them easy to understand.  I made my changes after dragging the tables into the Business Table area under my new Business Model.



After creating my relationships between the tables and editing my Metadata to override the GP cryptic table and column names, I created some Business View Categories.  These are not so much dimensions in the sense of an OLAP cube, but categories for selecting and organizing data that you want to include as available to add to a report.  These categories will show in the Ad Hoc Report creation tool, and the data will be grouped as you define it here.  I made three categories to test it out - Customer Address Info, Customer Basic Info, Customer Summary Info.  I used the Manage Categories feature to add the tables to the correct categories.



Now our model is done, and is ready to be published to the Pentaho server.  First, save this definition.  Now you can publish to the server.  But before we do that, I created a new folder in the Pentaho Solution repository, because there can be only one metadata.xmi file for each folder.

Using the Pentaho User Console, I created a new folder called gp-two.  I did this because I read there should be no spaces in the folder names.  You can change the display name by going to c:\pentaho\server\biserver-ce\pentaho-solutions\gp-two and editing the index.xml file.

I also needed to setup the publishing password, which is blank by default in the Community Edition.  The file to edit is c:\pentaho\biserver-ce\pentaho-solutions\system\publisher_config.xml.  I did not restart the biserver, and it still worked for me.

So now back in Metadate Editor, File - Publish to Server will open up the dialog box.  Enter the appropriate information, including the newly set publishing password, and a username/password combo, and the folder, in my case gp-two.  This will create the metadata.xmi file that will be used when creating an Ad Hoc Report.  Anytime you make changes to the model, save and publish!



Back in the Pentaho User Console, I want to create a new Ad Hoc Report using my newly created Business Model.  When I open a new Ad Hoc Report, I see my new Data Source, Customer Info, which is the name of my Business Model in Metadata Editor.



I select the new Data Source and hit Next to move to the next step of selecting the fields I want on the report.  In this screen, you see the fields grouped by the categories we defined in Metadata Editor.  Select what you need and move along.



After confirming the selections and giving the report a page header on the last step, save the report and preview it.  It works!  Woohoo!