[358 total ]
Openbravo ERP: 2.50beta available

Openbravo ERP is a Web based ERP for SME, built on proven MVC & MDD framework that facilitate its customization. Already in production, Openbravo ERP encompasses a broad range of functionalities such as finance, supply chain, manufacturing & ... [More] much more.

Featuring an exciting new modular architecture, usability improvements and broader functional coverage, Openbravo ERP 2.50 is the latest release of the leading open source ERP solution. This beta version is ready for general usage, including evaluation and production. Given its recent publication, however, this release has not yet been proven in enough live customer deployments to be labeled as a production release. Therefore we recommend existing production deployments not to upgrade to this release until it reaches production status, but we do recommend using 2.50 beta for new implementation projects.

An upgrade path is available from 2.40 to 2.50beta beta and an upgrade path will be available from 2.50beta to 2.50 production. To download the 2.40 to 2.50beta upgrader:
https://sourceforge.net/project/showfiles.php?group_id=162271&package_id=212939&release_id=669589

For detailed instructions about the upgrade process:
http://wiki.openbravo.com/wiki/ERP/2.50/Upgrading_From_2.40

-- What is new --

For a list of feature included in this release, check the release notes:

http://wiki.openbravo.com/wiki/Openbravo_ERP_2.50_ReleaseNotes#New_Features

-- Test it --

We do encourage you to download and test this new version and give us your feedback. You can post your opinion and question on the new features in the Open Discussion forum (https://sourceforge.net/forum/forum.php?forum_id=549510) and you can log any defect that you might find in the product using our issue tracking system (http://issues.openbravo.com).

In this release, you can install Openbravo ERP following two different approaches:

* Community Appliance (recommended): you can download and install a fully configured appliance that runs in your preferred virtualization environment. The appliance includes both Openbravo ERP as well as its underlaying technology stack and allows you to get started with Openbravo in just a few minutes and with only a few clicks. The images are available for the VMware, VirtualBox, QEMU, Parallels and Xen virtualization systems. To download these images:

https://sourceforge.net/project/showfiles.php?group_id=162271&package_id=217740&release_id=669641

* Custom installation (experts only): a custom installation gives you full control over your deployment environment and allows you to choose your preferred configuration for the technology stack. However, it requires you to install and configure all components of the technology stack as well as compiling Openbravo ERP from sources. You can to obtain a copy of the source code by either:

- Downloading a source code tarball:

https://sourceforge.net/project/showfiles.php?group_id=162271&package_id=315032&release_id=669639

- Checking out the source code from the Openbravo Mercurial repository

http://code.openbravo.com/erp/devel/main (tag: 2.50beta)

Download and test it following our installation and configuration guide:

http://wiki.openbravo.com/wiki/Openbravo_ERP_Installation_2.50 (0 comments) [Less]

Gil Forcada: Categories

Our wiki is improving as days goes by.

If some days ago I talked about the new hierarchies system today is for categories.

Some months ago Jordi made a proposition a new category layout for our wiki and now I'm really excited to ... [More] come here and say that it's already done!

What means for users? Basically that it will be a lot easier to browse inside the categories, Openbravo POS is a full citizen of our wiki with its owns categories and that this is the ground for keeping up with all new articles that are created daily.

The full category hierarchy can be seen in the wiki administration article (or interactively in the category tree article). We are satisfied with the new category system, but don't hesitate to send recommendations, there's always space for improvements.

Thanks for reading! [Less]

Paolo Juvara: Got ideas? Help us drive the future directions of Openbravo ERP

As we are putting the finishing touches on Openbravo ERP 2.50 and we are preparing for its beta release, it is already time to start thinking about the next release.

I am writing this blog post today to announce the availability of the ... [More] Openbravo Ideas page.

Like we did last year when we started planning 2.50, we would like our Community to help us prioritize the feature candidates and fine tune our development road map. Better than last year, when we used an on line spreadsheet, this year we have streamlined our processes and adopted the marvels of web 2.0 by creating an Openbravo page on User Voice (this was actually a Community suggestion from last year).

All of our most significant feature requests have been exported from the Openbravo Issue Tracker and loaded in User Voice with some default votes that reflect their priorities as we currently understand them.

You may now visit our ideas page and either vote for one of the existing entries or create a new one.
Each user is allowed ten votes and you can vote for ten different entries, assign all your ten votes to an existing entry, or anything in between.

You may vote either anonymously or after login. It would be great if you could login before voting so that we can notify you when we start implementing your preferred idea and involve you in the design and feature reviews.

I look forward to your votes! [Less]

Gil Forcada: Hierarchies

Hi all!

A new feature has landed in Openbravo's wiki: Hierarchic content.

With this new feature one should be able to navigate wiki articles like if it was a single article but split with several articles.

A nice index will ... [More] be shown in the articles top-right:

Also at the end of the articles there will be a couple of links to the next and previous articles.

As always, the Help article has been updated to show how to use it.

You can already see it in action in the Modularity Videos. [Less]

Adrián Romero: My Openbravo Community Awards nomination

One of the important keys of the success of Openbravo ERP and POS are the members of the community. This year, during the Openbravo World Conference we want to honor the most important members of the community. I nominated the following persons and ... [More] organizations.
Ronny G (ronny_g). Ronny is very active reporting issues and testing every new commit in the development branch of Openbravo POS. He is also an important participant in the forums and author of several documents in the wiki.Jim (jbablittle). Jim is one of the most active persons in the Openbravo POS forums, friendly, and always giving detailed answers to people looking for help.Mohammad Jaffar. For its translation of Openbravo POS to the Arabic language. The Arabic translation package of Openbravo POS is one of the most downloaded of the packages available for Openbravo POS.Amorebieta-Etxanoko Udala. For the translation of Openbravo POS to the Euskara language.Open Sistemas. For its contribution to the Openbravo POS source code adding functionalities oriented for the fast-food segment and for the largest implementation of Openbravo POS in Bocatta.
Please do not forget to nominate yourself or your favorites candidates to give the appropriate recognition to the most important people in the Openbravo community. [Less]

Paolo Juvara: My nominations for the Openbravo Community Awards

This year, during the Openbravo World Conference, Openbravo will recognize some of its most outstanding community members as part of the Community Awards program.

The nomination phase of the awards is now open and I nominated the following ... [More] individuals.
Best Quality Assurance (Individual): Naveen Chanda
Naveen has been a strong participant in the 2.40 alpha and 2.35 MP4 testing cycles, helping us proving those releases in a number of platforms.
He reported 8 defects, all of which were confirmed.Best Quality Assurance (Individual): Paulo Leandro
Paulo has been a strong participant in the 2.35 MP1, 2.40 alpha and 2.35 MP4 testing cycles, helping us proving those releases in a number of platforms and validate the functionality, in particular in the Sales area.
Best Localizer (Individual): Kenzo Repole
Kenzo is the localization leader for Saudi Arabia. Besides working on the Arabic translation, Kenzo has been instrumental in developing support for right to left languages and contributing it to Openbravo.
This important capability became part of core Openbravo ERP as of release 2.50.Best developer (Individual): Ville Lindfors
Ville has been involved with Openbravo for many years now and has contributed countless commits to our core code line, both in terms of defect fixes as well as improvements, with particular emphasis to security and performance.
Ville is also a continuous source of feedback and ideas on how to improve our product.Best localization (organization): CBT Open
CBT Open made a very significant contribution to Openbravo in release 2.40 by developing, as part of the Italian localization, the withholding tax functionality.
In addition, CBT Open, as Italian localization leader, worked with other Italian community members and Kelyon in particular to improve the Italian translation.
Best localization (organization): Kelyon
Kelyon has been a very active contributor to the Italian translation in particular and the Italian localization in general. Their work in the translation pioneered the processes of collaborative translation and their work has been seminal in the refinement of tools such as Openbravo2PO and the POMerge functionality.
The collaboration between CBT Open and Kelyon is a model that we would like to see repeated in many other geographies.
Please remember to nominate your own candidate and help us creating a vibrant community were active members willing to contribute get the recognition they deserve. [Less]

Adrián Romero: Openbravo POS 2.30 beta released

Finally Openbravo POS 2.30 beta has been released. It has been a long way to achieve this moment but it is worth the effort. You can download it from Sourceforge.net, and read the release notes in our wiki.

There are a lot of new ... [More] functionalities and bugs fixed I want to summarize here:
PDA Restaurant Module: This feature will allow users to take orders, browse products and manage tables using a mobile device. In this version Opera Mobile and iPod touch / iPhone are supported, but with simple modifications any mobile device with web browsing capabilities and wifi connectivity will work. This feature is oriented for restaurants and other hospitality business. Product Attributes: This feature has been created using the same concepts for product attributes in Openbravo ERP. With this new feature products can have attributes like size, color, serial number, etc. All these attributes are registered in all the operations like sales and inventory movements. New master data panels, reports and dialogs have been added to Openbravo POS to manage properly product attributes. This feature will be very useful for lots of sectors. ERP - POS Improvement of Synchronization: The whole architecture for synchronization between Openbravo ERP and Openbravo POS has changed and more data is synchronized. In the ERP side a new module has been added to provide REST web services for the integration. The tool selected to run synchronization jobs is Pentaho data integration. Pentaho data integration is an open source, powerful, metadata-driven ETL, with a graphical interface to design synchronization jobs. With this new architecture the synchronization logic is decoupled from the data, it will be easier to schedule synchronization jobs, design and create new synchronization jobs between Openbravo ERP and Openbravo POS and other applications. Payment Gateways: The payment gateways functionality has been improved and extended. Now we support natively the following payment gateways: PayPoint / SecPay, Authorize.net, Cyberauthorize, First Data / LinkPoint / YourPay and PaymentsGateway.net, and more payment gateways can be added easily. With these improvements Openbravo POS is able to manage card present transactions and is prepared to support EMV standards, PCI standards, and Chip/PIN requirements. Bitrock Installers: Install Openbravo POS is now easier than ever. Now we provide installers for the following platforms: Windows, Linux x86, Linux x64, Linux ia64, OSX and Solaris Intel. The classical binary and sources packages are still distributed. Support for the Apache Derby database engine: Apache Derby is an open source relational database implemented entirely in Java. Apache Derby improves the performance and reliability of Openbravo POS when running in embedded mode. And also Apache Derby in embedded mode replaces HSQLDB as the default database engine in the binary distribution of Openbravo POS 2.30. HSQLDB continues to be supported in Openbravo POS but it is no longer the default database engine. Upgrade license to GPL version 3: With GNU GPL version 3 we are up to date with the latest version of the license and we close several gaps of the previous license like granting patent licenses to every user, extending compatibility with other free software licenses and dealing with the new threats to free software that have emerged since version 2 of the GNU GPL. You can read the announcement in my previous blog post. Upgrade third party libraries up to the latest stable release: The following libraries has been updated: SwingX 0.9.5, Substance 5.1. Improve receipt printer support: In this version Openbravo POS supports a larger set of receipt printers. It adds support for receipt printers with system drivers. Almost every receipt printer with system drivers is supported in Openbravo POS. It includes native support for Star Micronics receipt printers, and for text only receipt printers. It also has been improved the support for javapos fiscal printers. Usability Improvements Panel to edit auxiliary products relation: Openbravo POS supports auxiliary products since older versions but this relation had to be configured manually editing the database. Now there is an Openbravo POS panel that helps editing auxiliary products relations. Add a dialog to find receipts in the edit sales panel. A new dialog has been added to find receipts without knowing the receipt number. Users will be able to search receipts by date, by type (sale or refund), by user, and by total. Add a keypad in the cash movements panel: With this addition the cash movement panel can be operated using only the touch screen. This is a good improvement for environments that need to manage the cash amounts directly from the Openbravo POS touch screen terminal. Add the possibility to print a partial report in the Close cash panel: Now it is possible to print the close cash report with the partial results without restarting the counters and totals. However you will be able to differentiate if the report is for the partial results or for the final results.The PDA module has not been included in this beta because it was not ready. But we will try to release it as soon as possible.

The stable release will be available in some weeks, and there are still too many things to be done for this final version: Fix all planed bugs, write documentation, finish as many localizations as possible...

If you want to collaborate, please download the version and help us testing and giving us feedback in our forums. [Less]

Jordi Mas: My Openbravo Community Awards nominations

As you know already know we are running the Openbravo Community Awards organized and sponsored by Openbravo to honor individuals and companies for their outstanding contributions to the Openbravo ERP and POS projects.

The nomination period ... [More] is open. Please nominate the people in the Openbravo Community that have made a difference to you.

I have nominated many people. However, I want to highlight some people and organizations that under my opinion (subjective obviously) made important contributions: Jens Wilke, for his work on Openbravo2PO and the initial German translation and chart of accounts. Jens' work on Openbravo2PO set the ground of our a tool that is part of our translator's toolset today. On top of that, we did the first translation of Openbravo to German, identifying issues that after clean the path to other folks.Enric Alegre. He has been one of the strongest supporters in the Openbravo forums with 165 forums messages during 2008. Thanks for helping everyone to succeed in Openbravo community. He also is cooperating with the local government as part of our academia program to introduce Openbravo to students.Victor Gaspar from starting the idea and contribute some of the Code Snippets, pieces of code that you can reuse in different places.The Software Engineering Research Center in Pakistan is one of our members of the Openbravo academia program. They are teaching Openbravo there, contributing to Core with bug fixes and working regularly with the development community. A good example of how the academia world and open source software can work very well.
Mancomun.org, an initiative from the government of Galicia to promote free software. They have localized Openbravo ERP (partially) and Openbravo POS to Galician language.
Remember to nominate your our candidates and make your opinion count. [Less]

Paolo Juvara: Quick status update on ERP 2.50

My last blog post was focused on the status of Openbravo ERP 2.50. Since a month has gone by, I would like to give you a very quick status update on where we are now.

Since then, we had to modify our exit criteria to make it more reachable. ... [More] In particular, we had to put a "cut off" date for the defects that we were planning to fix. We debated this both internally and in the Community and finally we settled with the following exit criteria:
Defects logged up to Feb 13th: 0 critical and major defect, less than 100 minor and trivial Defects logged after Feb 13th: 0 defects with urgent priority QA testing completed
Upgrader ready and tested This criteria gave us a good provision for a) cleaning the backlog of old stuff and b) giving QA the flexibility to request fixes for as many show stoppers they feel are needed and hold the release until they are satisfied with its quality level.

We reached this exit criteria last week on February 24th. Since then, we have frozen the the development code line (Main, using the new Mercurial terminology) and are running various installation and upgrade tests with this final code.

We hope to release 2.50 Beta within this week. [Less]

Asier Lostalé: Using Mercurials bisect extension to find bugs

One week ago Openbravo ERP code was moved from Subversion to Mercurial. I am completely new to Mercurial and to distributed SCMs since I always worked with Subversion but, apart from the new concepts it incorporates, the transition was very smooth ... [More] , at least till the moment. I’ve spent some time during the last days looking the extensions Mercurial has and, for me, one of the nicest ones is bisect. Bisect can be very useful to find the changeset when a bug was introduced in the code.

A real example
Recently I was assigned this bug. I discovered that it was not present in  r2.40 but it was in development branch, furthermore, I find out the bug was caused because a line had been removed from the code. At this point I wanted to know which commit removed that line, just to know if it was a mistake or it was done on purpose trying to fix another bug, so the tedious work started: given two revisions one that has the bug (head of development branch) and another one that has not it (r2.40 tag) try different revisions in between to find which one removed the line that causes the bug. This is not only tedious but also very time consuming.

A good solution: bisect
Bisect is an extension for Mercurial that makes this kind of work much faster. Bisect’s behavior is pretty simple, you tell it the good and bad changesets and it updates your working copy to another one between them, then you can test if in that one the bug is present and you mark it as good or bad, then the process is run again until it finds the changeset that introduces the bug.  In fact bisect just decides for you which is the next changeset to test in. It sounds not to be a very high improvement, but if you combine it with some simple (at least in some occasions) automated test the results can be awesome.

Let me explain it through a simple example:

First prepare the environment: a file with a lot of lines, and a commit somewhere there removing a line which we’ll look for afterwards.

$ hg init testBisect
$ cd testFile
$ cat testFile
This is
a file
with some feature
and this
line here
is needed to work fine
$ hg ci -A -m "init file"
adding testFile
$   for (( i = 0; i < 335; i )); do echo "line"$i >> testFile; hg commit -m "change here"; done
$ sed -i 's/line here//' testFile
$ hg ci -m "this commit is buggy"
$ for (( i = 0; i < 872; i )); do      echo "line"$i >> testFile;      hg commit -m "change here";      done
$ hg parents
changeset:   1208:7568a581b554
tag:         tip
user:        Asier Lostalé
date:        Mon Mar 02 11:13:39 2009 0100
summary:     change here

Now we have 1208 changests! Let’s make the script to decide whether a revision is buggy or not and to continue looking in case it is not:

$  cat test1.sh
#!/bin/sh
MIN_ARGS=2
if [ $# -lt $MIN_ARGS ]; then
echo "Usage: $(basename $0) FILE TEXT_TO_FIND" >&2
exit 1
fi
FILE=$1
shift
TEXT_TO_FIND=$*
check() {
grep -q "$TEXT_TO_FIND" $FILE && RESULT=good || RESULT=bad
echo $RESULT

hg bisect --$RESULT
}
while :
do
if check | grep -q 'Testing changeset'
then
echo
hg bisect
else
hg bisect
exit 0
fi
done

Now we are ready to start testing, first of all reset bisect and tell it which is the bad and good known revisions. Bad is current one and good is the first one.

$ hg bisect --reset
$ hg bisect --bad
$ hg bisect --good 1
Testing changeset 604:9d6a42635e81 (1207 changesets remaining, ~10 tests)
1 files updated, 0 files merged, 0 files removed, 0 files unresolved

Finally just execute the test to find out who removed the line.

$ time ./test1.sh testFile 'line here'
Testing changeset 302:132a5339324e (603 changesets remaining, ~9 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 453:aa92eb899545 (302 changesets remaining, ~8 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 377:5c8e69bdb1ce (151 changesets remaining, ~7 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 339:05f7bb18e505 (75 changesets remaining, ~6 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 320:3107aee2dbd2 (37 changesets remaining, ~5 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 329:0d907ee53cdb (19 changesets remaining, ~4 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 334:8a0d38375333 (10 changesets remaining, ~3 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved

Testing changeset 336:dc2037e24dfc (5 changesets remaining, ~2 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Testing changeset 335:939ca611ae0f (2 changesets remaining, ~1 tests)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
The first bad revision is:
changeset:   336:dc2037e24dfc
user:        Asier Lostalé
date:        Mon Mar 02 11:11:52 2009 0100
summary:     this commit is buggy
real    0m1.374s
user    0m1.128s
sys    0m0.204s
And we are done: in less than 1.5s we know which is the commit that removed the line!

Though this example is quite theoretical I think bisect is a very good solution for this kind of searches. Do you have experience with this extension? Any comment about it is welcome.

Posted in Openbravo Tagged: mercurial, scm [Less]