View source | View content page | Page history | Printable version   

Projects:Product On The Fly in WebPOS/Functional Specifications


Product On The Fly in WebPOS - Functional Specifications


This project is about to have the possibility of creating new products “on the fly” through the webpos. These new products will be used for an specific sales order and never will be re-used again. The products can be created into different ways:

General Business rules

Functional Requirements



Dialog Constraints: Copying an existing product

A dialog with following fields:

Dialog Constraints: Creating the product from scratch

A dialog with following fields:


This project is implemented in a new collaborative module: org.openbravo.retail.productonthefly

Add context menu

To implement this module were necesary make a change en core module: org.openbravo.retail.posterminal to allow add context menu options to the contextual menu on search result.

When the terminal was loaded from backend (Hook: OBPOS_TerminalLoadedFromBackend), it's added the option Create OTF on product context menu

   var productContextMenuOptions = OB.MobileApp.model.get('productContextMenuOptions') || [];
     kind: 'OB.UI.ListContextMenuItem',
     content: OB.I18N.getLabel('OBROTF_lblMenuOption'),
     permission: 'OBROTF_otf.create.contextmenu',
     selectItem: function (product) {
   OB.MobileApp.model.set('productContextMenuOptions', productContextMenuOptions);
   OB.UTIL.HookManager.callbackExecutor(args, callbacks);

Terminal model has a new property: productContextMenuOptions (if not exist only need create it in the model), this property is array of OB.UI.ListContextMenuItem.

Your menu option will have following parameters:

Hook: OBROTF_SetProductExtraProperties

After that all changes are applied to new product and before add the new product to current receipt is called a hook to allow add/modify other properties of new product.

Hook name: OBROTF_SetProductExtraProperties


Retrieved from ""

This page has been accessed 1,767 times. This page was last modified on 20 October 2015, at 15:08. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.