Wednesday, 3 February 2010

Prototyping with HTML 5 (2)

This blog post is just to announce the availability in the Openbravo forge of the prototype of the HTML 5 application based on Openbravo ERP web services I am working on. The project home page is Openbravo Mobile. And it is published the source code, a deployable .war file and an small wiki page with instructions to install. Everything under the Openbravo Public License.

All comments are welcome in the forum section.

Disclaimer: The project I am developing here is done in the personal investigation time I have reserved during development sprints and it is not in the roadmap of Openbravo ERP and there is not commitment from Openbravo to his partners, customers or community related to the availability or support of this project.

Wednesday, 27 January 2010

Initial Data Load demostration - Feb 4th, 2010

Open to all Openbravo Community members, this webinar will demonstrate Openbravo modularity, will help you better understand development techniques, processes and tools you can use to create extension modules, and will show concrete functional solutions to address specific requirements that might inspire you to create your own solutions.

Initial Data Load is focused to Openbravo ERP partners and customers that aims to reduce the time needed to deploy a fresh Openbravo ERP installation simplifying the import of all master data and operational data needed to start working with Openbravo ERP. This can save a lot of time in the deployment of Openbravo ERP.

The Initial Data Load module is a commercial module available in the Openbravo Exchange Marketplace at no additional cost for Openbravo Professional subscribers.

Take a look at this post for more details about the webinar.

Wednesday, 23 December 2009

Prototyping with HTML 5 (1)

In my last post, I wrote about the new HTML 5 features and how can these new features be a revolution in the ecosystem of current web applications. But I do not want to stop here without exploring a little bit about the possibilities of combining these new HTML 5 features with Openbravo ERP.

The plan is to start a series of posts with the objective to create a prototype of a web application for hand held devices like iPod Touch and iPhone, oriented to mobile users of Openbravo ERP.

The requisites I am imposing to myself for this prototype are the following:
  • It will be an HTML application and take advantage of HTML 5.
  • The application will run in an iPod Touch or iPhone, because these devices are broadly available, can be considered "cheap" for this task, and also because it is a device I love :-). It also will run in Firefox 3.5 for debugging purposes.
  • It will consume standard Openbravo ERP REST Web Services. Nothing else than a fresh Openbravo ERP community edition will be needed.
  • The application must be capable to work online and offline without any loss of functionality, just the need to work without the latest data available. It will be required when working offline, to cache data and to store data. And refresh the cache data and send stored data when the device is connected again.
  • The functionality developed should be "useful".
  • It should be just a prototype. Not expend too much time, handling exceptional behaviours, errors. Just make it work.
In this first development iteration I created a very simple application for sales men to allow them to have the list of products with details like the category and the unit of measure of the product (UOM). And with the ability to change there prices shown between all price lists available. It works completely offline and has the ability to refresh the data when the device is online.

I plan to publish the source code after polishing it in the Openbravo forge under the Openbravo Public License with small instructions to install it. In the mean time here you have screenshots of the application working:



In the next steps I plan to build a simple form to submit sales orders and also I would like to display charts. And if you have suggestions about how to improve this prototype I will be glad to hear them.

Disclaimer: The project I am developing here is done in the personal investigation time I have reserved during development sprints and it is not in the roadmap of Openbravo ERP and there is not commitment from Openbravo to his partners, customers or community related to the availability or support of this project.

Tuesday, 22 December 2009

Openbravo ERP module Initial Data Load 1.1.0 released

I am happy to announce that a new version of the module Initial Data Load 1.1.0 is now available.

Initial Data Load is focused to Openbravo ERP partners and customers that aims to reduce the time needed to deploy a fresh Openbravo ERP installation simplifying the import of all master data and operational data needed to start working with Openbravo ERP. This can save a lot of time in the deployment of Openbravo ERP for the following reasons:
  • It works in all standard Openbravo ERP flavors. For example with the professional cloud appliance.
  • You have a clear and documented definition of all entities and fields needed to start to use Openbravo ERP in the deployed environment.
  • After you collected all the data from legacy systems is just a matter of few hours to import all the data into Openbravo ERP.
  • Initial Data Load verifies all data before importing it into Openbravo ERP and if an error is found a clear explanation of the record that has the error and the type of error found is shown to the user.
  • All user interaction is through the browser, with no direct server access required.
This new version includes the import process for 10 Openbravo ERP entities that are more than enough to draw the initial picture of a company to start working. These import process are:
  • Products
  • Price Lists
  • Bank Accounts
  • Business Partners
  • Open Payables
  • Open Receivables
  • Assets
  • Journal Entries
  • Standard Cost
  • On hand quantity / Stock
If you want to know more about how to install it and a description of each of the import process included, read the User Manual.

The Initial Data Load module is a commercial module available at no additional cost for Openbravo Professional subscribers. This module is available in Openbravo's Central Repository and if you want to acquire it have a look at the How to acquire page or use our Contact Us form.

This module is also part of Openbravo ERP QuickStart. In the Quickstart page you can find all the extra benefits if you adopt Initial Data Load in conjunction with Openbravo ERP Quickstart.

Wednesday, 25 November 2009

Experimenting with HTML 5

HTML 5 is the next mayor revision of the core language of the world wide web, the HTML language. Openbravo ERP and other enterprise applications are based on this language. This specification is still in draft status but newest versions of most popular web browsers, including Internet Explorer 8 :-), have support for some of the new features introduced by HTML 5. Even better, web browsers included in advanced smartphones and mobile devices like iPhone / iPod Touch or those based in Android 2.0 also have support for the most exciting features of HTML 5. At the moment of writing this article I tested HTML 5 with Firefox 3.5, Google Chrome, Safari 4 and the iPhone / iPod Touch OS version 3.0, and most of the features described in this article are ready for production deployment with no major impediments.

This new revision is a major step towards the support of full featured web applications. It includes features that aims to reduce the dependency on proprietary technologies like Adobe Flash, Microsoft Silverlight, Java applets and a long list of other web browser plug-ins. With HTML 5 combined with current techniques that combine AJAX, javascript and DHTML, developers can write cross-browser web applications with functionalities we were used to have only for desktop applications.

Mobile web applications will be easier to develop and deploy. Developers will not need to learn new technologies or create different applications depending whether the target platform is a mobile device or a desktop computer. They will have a full control whether the mobile device is on-line or off-line and with the increasing popularity of iPhone / iPod Touch touch and Android, they will be sure that their applications can reach a big slice of the mobile market.

If you browse the web searching for explanations and samples about the new features of HTML you will find a lot of articles with detailed information about it. I will only comment the most interesting features that in my opinion are focused for rich featured web applications. I recommend browse the samples published in HTML 5 Demos and Examples by Remy Sharp.
  • Off-line web applications. Properly configured, web applications will be able to work off-line using all application resources like html pages, javascript files, etc. cached in the client side. Web applications will be able to detect if the web browser is on-line or off-line and behave according this status.
  • Local Storage. With this feature web applications will be able to store locally in the client side data as application data or session data. This local storage can be very useful to let users work off-line and submit all the work done when the device is on-line again without losing any piece of data.
  • Input element improvements. For data centric web applications, data type input, and validation will be easier and integrated with the web browser without external libraries. Unfortunately, the support of this feature in current web browsers versions is very poor.
  • Geo-localization. Very interesting for mobile applications. With this feature, web applications will be able to offer data to the user contextualized in the place he or she is.
  • Canvas. This feature allows web applications to draw rich and dynamic graphics in the client side without having to generate these graphics in the server side. For example, there already exists impressive javascript libraries to render full featured charts using this new HTML 5 feature like RGraph.
  • Webworkers. Using this new feature developers will be able to implement background processes in the client side leaving the application responsive to user actions and without blocking him.

Wednesday, 4 November 2009

Netbeans Development Environment for Openbravo ERP

I am happy to introduce another Development Environment for Openbravo ERP based on the Netbeans IDE. There is a guide published in the Openbravo wiki document Installation and Setup of Netbeans IDE that explains step by step how to create an Openbravo ERP development using Netbeans and also how to perform common development tasks, like compiling, debugging, starting /stopping Tomcat, etc. This guide is still a work in progress. We hope developers will find this guide useful. Feel free to give feedback on the guide, especially if certain parts can be improved or if you miss certain information.

I would like to remind you that the main Development Environment for Openbravo ERP is based on Eclipse. You can read about it in the Installation and setup of Eclipse IDE guide. Development with Eclipse is fully supported and documented.

But IDE preferences change from one developer to another and frequently becomes almost a religious issue. We do not want to start another flame war Eclipse vs Netbeans, just give Openbravo ERP developers the opportunity to choose the IDE they feel more comfortable to develop Openbravo ERP.

Friday, 22 May 2009

Openbravo POS 2.30 released

After more than two months of the release of Openbravo POS 2.30 beta, finally Openbravo POS 2.30 is released. The changes from 2.30 beta to 2.30 has been only bug fixing and product stabilization. No new functionalities has been included. To show in numbers what we did since 2.30 beta. We fixed 66 bugs reported in the issues reporting tool and we did 90 change sets in the SCM repository. Now this release is published in production ready status. This means the following:
  • We recommend new implementation projects to start with this release.
  • We recommend existing production deployments to upgrade to this release.
  • An upgrade path is available from earlier releases to 2.30.
If you want to know about the new functionalities created from 2.20 and the most convenient package to download for your platform, I suggest you to read the Release notes of Openbravo POS 2.30, but I want to highlight the most important features introduced in 2.30:
  • The PDA restaurant module. This feature will allow users to take orders, browse products and manage tables using a mobile device. More information in the PDA module installation guide.
  • Product attributes. With this new feature products can have attributes like size, color, serial number, etc. More information in the Products attributes guide.
  • ERP-POS synchronization. A new architecture for the Openbravo ERP and POS synchronization. More information in the Openbravo POS and ERP integration guide.
Another improvement done from the engineering point of view, has been the movement of the source code management system (SCM) from Subversion to Mercurial. Mercurial is a distributed SCM designed for efficient handling of very large projects. Mercurial gives Openbravo POS developers several benefits based on its distributed nature like to allow to work productively even when not connected to a network, and make it easier to do merges between different Mercurial repositories. You can view a summary of the repositories in the Openbravo POS repositories list.

And last but not least, there is now a Professional Subscription for Openbravo POS 2.30. This is the recommended option for commercial deployment of Openbravo POS, and includes professional support from the development team, access to certified automated updates and upgrades, lifecycle guarantee, bug fixing guarantee, and IP indemnification.