Feb 8, 2013

Design Guidance for Openbravo 3

by Rob Goris

Openbravo's modular architecture makes simple development of extension modules possible. Modularity allows people to develop extensions and to distribute them independently, as well as to leverage distribution channels.  The number of available commercial and non-commercial modules is growing and dissemination of modules is growing alongside. To avoid inconsistency or substandard user experiences, guidance must be given to the community on how to create high quality, usable, enjoyable and consistent modules and customized Openbravo windows. We have created two documents to help you in doing so. The starting point is the User Interface Guidelines wiki document that describes the main rules and tips for Openbravo 3 module and window design. In addition to this, we have built a mockup tool that lets you design Openbravo windows without coding. It is simply a shared presentation document that has templates and library components that lets you design your own windows and flows. Make sure to read the instructions before using it.



Jan 28, 2013

Enable/Disable options in Openbravo using Preferences

by Shankar Balachandran
In Openbravo ERP, preferences are a cool and effective way to manage restrictions and apply certain additional actions at various levels like Client, Organization, Role and even at the window level. For more information on using preferences, refer http://wiki.openbravo.com/wiki/Preference

One such preference was enabling/disabling toolbar options like  Delete, Attach, Export. From Openbravo 3.0 MP17 you can enable or disable these options for a particular window or a particular user and even for a particular role. Lets see few scenarios where this could come handy.

Note that all these options are enabled by default and using preferences you will only be able to disable them.

Usecase 1 : Restrict Deletion of Records
John is a new intern and maintaining User Information. Though he should be allowed access to 'user' information window, he should not be allowed to delete Users. This can be done by creating a preference as in the screenshot. Once this setting is saved, John will not be able to delete records from the User Window.


Usecase 2 :  Restrict export data
John (again) has also access to the General ledger window. But since this is a critical data, you do not want him to be able to Export this information. Usually the export is done through the Export as Spreadsheet option provided at each window. To disable this you need to create a preference like the below screenshot.


Usecase 3: Restrict attachments option
David handles the goods receipt section. As soon as he receives a shipment, he uploads the scanned copy of the receipt to the Goods Receipt record. But you want all users with the role 'Sales' to be able to view the Goods Receipt window, but not be able to view the attachments. You can achieve this by creating a preference as follows



Hope these cases give a clear picture of the advantages of using these preferences.





Jan 21, 2013

Warehouse Reservations

by Pablo Sarobe

We are proud to announce a new collaborative development, sponsored by TDS. This new feature is Warehouse Reservations that will come in MP19 which is planned to be released the 18th of January . This is a great achievement since many partners and end users were asking for this feature

Stock reservations are mainly used to ensure the stock availability when delivering a Sales Order. This functionality is disabled by default and needs to be enable using a preference. Coming with this feature it is also possible to lock stock not related to any Sales Order to avoid its consumption.

The functionality developed comes with two types of reservations:

  1. Pre-Reservation: These are reservations that are not physically in the warehouse but ordered to a supplier and where there is a relationship between the line of the purchase order and a sales order line. Once the purchase order line is received this pre-reservation is automatically converted to a reservation
  2. Reservation: Refers to stock stored in the warehouse that is already reserved by a sales order line

A reservation is always defined by the product that is desired to be reserved but other dimensions can be defined such as the warehouse, storage bin and attribute (i.e Colour, lots, serial number).

Another interesting thing is the possibility of allocating or not the reservation:

  • Allocated stock means that the stock reserved cannot be changed by other stock that also fulfils reservation’s dimensions
  • A Not Allocated reserved stock can be changed at any time by other existing stock but always ensuring that the Sales Order line keeps the reservation

This new functionality tries to cover several flows:

  • Sales
  • Procurement
  • Purchasing plan (MRP)

Sales Flow

A sales order can be reserved when the document is booked and pending to be delivered. The way to make the reservation is:

  1. Manual: No reservation is generated automatically. So when the order is booked the reservations needs to be done manually selecting the storage bin, attribute, etc
  2. Automatic: The reservation is automatically created and processed, reserving the available stock

For more information visit: Sales Order

Procurement flow

Pre-reservations can also be made from the Purchase Order. Being in the purchase order line there is the possibility of selecting any sales order line pending to be delivered that is waiting to receive the goods in the warehouse. Once the items are received the pre-reservation is converted to reservation and the goods are reserved for that sales order line

For more information visit: Purchase Order

Purchasing Plan (MRP)

When launching the purchasing plan there is now the possibility of making reservations for Sales Order and pre-reservations, that is, create purchase orders linked to sales orders

For more information visit: Purchasing plan




Jan 21, 2013

Publicación del Modelo 390 para 2012

by Patricia San Juan


{This blog post announces the availability of a new version of the Spanish tax report "Modelo 390" therefore it is written in Spanish}


Ya esta disponible una nueva versión del Modelo 390 de la AEAT para el año fiscal 2012.

Esta nueva versión relaciona los nuevos tipos de IVA y Recardo de Equivalencia del módulo de Impuestos de España, vigentes desde el 1 de Septiembre del 2012, con los parámetros del 390.

Además contiene los cambios necesarios para generar el fichero XML del modelo conforme a los nuevos requerimientos para 2012.

El Modelo 390 se distribuyen bajo Licencia Comercial de Openbravo, sin coste adicional para los suscriptores de la Edición Profesional.

Les recordamos que existe una nueva versión del programa de Ayuda "IVA2012" de la Agencia Tributaria que puede descargarse desde el siguiente enlace.



Jan 14, 2013

Openbravo package for Ubuntu Precise available

by Gorka Gil

We are proud to announce the immediate availability of the Openbravo 3 package for Ubuntu 12.04 Precise Pangolin.

New things in this package is upgraded PostgreSQL from 8.4 to 9.1 means better performance.

Installation of the package is as before and is as simple as one-two:

sudo add-apt-repository ppa:openbravo-isv/ppa
sudo apt-get update
sudo apt-get install openbravo-3

We also paid special attention to the smooth update from the Ubuntu 10.4 package to this new one. All you need to do is

  1. Update Openbravo to MP17 in a standard way.
  2. Update Ubuntu to 12.04.
  3. Install the new package.

In this update the database will be migrated from 8.4 to 9.1.

The commands to restart postgres and openbravo are the same, and the port used by postgres cluster of openbravo continues the same.

You can find more information in the installation and the upgrade guide here http://wiki.openbravo.com/wiki/Installation/Ubuntu

We are interested in your feedback !




Jan 11, 2013

Publicación del Modelo 190 para 2012

by Patricia San Juan


{This blog post announces the availability of the a version of the Spanish tax report "Modelo 190" therefore it is written in Spanish"


Ya esta disponible una nueva versión del Modelo 190 de la AEAT para el año fiscal 2012.

Esta nueva versión relaciona los nuevos tipos de IRPF del módulo de Impuestos de España, vigentes desde el 1 de Septiembre del 2012, con los parámetros (clave/subclave) del módelo 190.
 

El Modelo 190 se distribuyen bajo Licencia Comercial de Openbravo, sin coste adicional para los suscriptores de la Edición Profesional.

Les recordamos que existe una nueva versión del Modelo 190 (2012) en la plataforma de validación Informativas de la Agencia Tributaria que puede descargarse desde el siguiente enlace.



Jan 9, 2013

Geolocation of Openbravo Windows in Google Maps

by Unai Martirena
We all know the power of Google Maps in the Geolocation of any item on a map. We know how intuitive and easy is to see all desiderated elements at a glance. Imagine now that is possible to represent any record of any window of Openbravo on Google Maps (Business Partner Location, Sales Orders, Warehouses, etc.) A new module has been developed by Openbravo implementing this functionality. It will be possible to geolocate through the application every element and to represent them, also some windows that contains already an address they will be possible to represent automatically with defined address. Here in the wiki you will find the howto of the module. This is a very basic implementation inside a huge functionality available. As all the information in Openbravo windows is readable by google maps, dozens of new use cases could be implemented. Identify by colour the diferent points based on the amount of the sales, create optimal routes between points to apply in logistics, use kmz files to represent not just single points but bigger areas, etc. And also you can test it visiting the Openbravo Public Demo, opening Business Partner Screen and pressing Show in Google Maps toolbar button (same for Sales order window). The Google Maps API is growing every day as grows Openbravo, then this integration is part of the future. This module will be released soon. Keep tunning in! Happy Geolocation!! Unai



Jan 8, 2013

Informes anuales de IVA e IRPF (Enero)

by Patricia San Juan


Tal y como ya adelantamos los modelos anuales de IVA e IRPF se han visto afectados por el Real Decreto-ley 20/2012, de 13 de julio, de medidas para garantizar la estabilidad presupuestaria y de fomento de la competitividad.

Es por ello que se va a publicar una nueva versión de los modelos anuales de IVA e IRPF en las fechas que se detalla a continuación:
  • Modelo 190 -> 10 de Enero
  • Esta nueva versión contendrá sólo cambios en el conjunto de datos. 
  • Modelo 390 -> 18 de Enero
  • Esta  nueva versión contedrá cambios en el conjuto de datos y además cambios en el código ya que:
      • las casillas del modelo relativas a IVA Devengado al 16% pasan a ser de IVA Devengado al 21%
      • las casillas del modelo relativas a IVA Devengado al 7% pasan a ser de IVA Devengado al 10%
      • se han creado nuevas casillas en el modelo para los nuevos tipos de recardo de equivalencia (5,2% y 1,4%)
      • se han creado nuevas casillas en el modelo para el IVA Deducible a los nuevos tipos (21% y 10%)
    Recalcar que los modelos anuales de IVA e IRPF forman parte de la Localización para España en su versión "Profesional".
    Finalmente, os comunicaremos en breve cuándo se va a publicar una nueva versión del Modelo 347 que este año debe presentarse en Hacienda antes del último día del mes de Febrero.



    Jan 8, 2013

    Tips to speed up Openbravo Development

    by Shankar Balachandran
    Openbravo as framework is as powerful as Openbravo as an ERP. Development and Customization has been very much streamlined due to the MVC architecture and the modular approach. That is one reason there are so many modules/verticals available on top of Openbravo.

    Here are few tips that helped me increase my productivity in Openbravo development. This is more like a compiled list from various articles that I used. Feel free to add more to it in the comments.

    1. SQL Query Editor
    A feature that is available for a long time, the SQL Query Editor available in System Administrator role can be used for quick selects across any table in Openbravo. This could save your time from switching back from your query tool to the Application. To open the query Editor, go to SQL Query in the System Adminstrator role.



    2. HQL Query Editor
    A more useful tool that is provided as a module by Openbravo is the HQL Query Tool. This query can be used to perform hql query across all the Entities present in Openbravo. One advanced feature is that you can select your desired Entity from a drop down and find all the attributes of the Entity. To install the same, login as System Administratior, go to Module Management Window and search for 'Openbravo HQL Query Tool'.



    3. Auto Logon Manager
    The most time consuming task for me while developing is to type the default username and password more than few hundred times per day (increases exponentially with my potential code blunders). A simple feature that would remove this hassle is to use the Authentication Manager in Openbravo. Just add the following lines under Authentication section in Openbravo.properties file in config folder (or anywhere in the file, better to put it in the right section) to login into the Application as Openbravo user without having to enter the user credentials.
    authentication.class=org.openbravo.authentication.basic.AutologonAuthenticationManager
    authentication.autologon.username=Openbravo
    Source : http://planet.openbravo.com/?p=7012

    4. Smartclient Development Module
    The smartclient development module provides you with an uncompressed version of the SmartClient components, thereby assiting in deep debugging of the Client side smartclient code, and also can provides non-obfuscated code so that you can debug even the custom code. More on the this module here.
    http://wiki.openbravo.com/wiki/Client_Side_Development_and_API#The_smartclient.dev_module.2C_smartclient_console_and_sources

    5. Logging into multiple roles at the same time
    More often than not we will be usually juggling between the client admin login and the System Administrator login. To save time from switching over one login to another, there are two ways.
    1. Use incognito /private browsing mode. Using the incognito mode, one role opened in a session and another role opened in another session (separate windows).
    2. A simpler way is to use Ip/domain name differentiation. For eg., if you are running Openbravo in your local instance then you can have two tabs opened, one with the URL http://locahost:8080/Openbravo and other with 127.0.0.1:8080/Openbravo and have two different roles in each tab.

    6. Debugger in chrome developer tools
    One technical tip while debugging client side code, if you are not sure what your code actually errors out, you can use the 'debugger;' keyword that will stop the execution of the script at that point. But just be careful to remove the keyword after debugging so that the Application does not do that for unintended circumstances.



    Nov 27, 2012

    A key documentation tip

    by Patricia San Juan


    As you know one of our main goals is to create and maintain an excellent documentation about OB3

    This blog post is intended to give you and our Community some tips to get that goal.

    Normally all of you document windows that were changed or that are added. That is correct and great.

    However majority still forgets to update or at least to review for a possible change the business flows or how-to articles where these windows are used.This last step is key because according to our documentation concept each window is taking part of some business process.

    Therefore, every time that you document a new feature please remember that you need to reflect it at least in two places in the documentation:

    (1) In the particular window(s) / report (s) documentation itself.
    (2) In the business flow / How-To articles where this window(s) / report (s) is used. This part is quite often overlooked.
    * As of now we have 13 business flows and 13 How to articles. Each of them starts with the configuration required before performing a business flow and then explains how the business flow is executed. Depending on the new feature you implement you might need to change the configuration part and/or the execution part of a business flow.
    Even more, I would recommend to start the documentation work by updating this part of the documentation first because it sets a context that is required later on to describe the window and the operations in this window.

    Additionally, if you change an OB generic component such as the "Product Selector" you need to review the Common OB Concepts and Processes section.
    In that section we describe only once common concepts and/or processes which can be used in many places in Openbravo.

    Lets review few real examples:

    (1) "Return Materials" functionality required the creation and explanation of a new business flow (Supplier Returns business flow) and of course the explanation of specific windows such as the Return to Vendorwindow in the Procurement Management application area.

    (2) "Quotations" functionality required a change in the Configurationsection of the Order to Cash business flow as well as a change in the Executionsection of the same business flow, besides the corresponding changed in the Sales Quotation window and Sales Orderwindow of the Sales Management application area.

    (3) The feature of renaming "Accounting Schema" as "General Ledger" required a change in the Basic Configuration section of the Period End Close to Financial Report business flow besides the corresponding changes in the General Ledger configuration window article of the Financial Management application area.

    Please do not hesitate to contact me in case you have any doubt. I'll be glad to help you.