Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

18
Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009

Transcript of Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 1: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Wizard to add new Fields Module

Extension Module Webinar

21st of January 2009

Page 2: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 2Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Agenda

Functionality and Demo 15 min.

Process and Tools 5 min.

Development Technique 10 min.

Q & A 30 min.

Page 3: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 3Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Agenda

Functionality and Demo

Process and Tools

Development Technique

Q & A

Page 4: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 4Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Goal: Make it easy for non-developers to extend Openbravo Model

Wizard to add new Fields: Functional Highlights

Functional Concepts:

Simplified Openbravo Model

Use Module Manager Console (MMC) for System Rebuild

Solution Approach:

Deliver as a Commercial Module

Leverage on MDD for simplified development

Integrate existing capabilities (DBSourceManager, MMC)

Page 5: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 5Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

DEMO

Wizard to add new Fields: Functional Highlights

Page 6: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 6Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Agenda

Functionality and Demo

Process and Tools

Development Technique

Q & A

Page 7: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 7Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

History of the module

Deliver as a commercial Module

Why it is commercial?

Focused on QuickStart instances

Free for Professional Edition instances

Lesson learnt: small effort and high value

Next steps planned: graphical IDE to edit Openbravo Model

Page 8: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 8Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Functionality and Demo

Process and Tools

Development Technique

Q & A

Agenda

Page 9: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 9Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Wizard to addnew Fields

Development Approach: Technical Design

User Interface

SimplifiedModel

DBSourceManager

MMC

Page 10: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 10Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Wizard to addnew Fields

Development Approach: Technical Design

User Interface

SimplifiedModel

- Simplified info to run the process- Persisted so it can be rerun

MMC

DBSourceManager

Page 11: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 11Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Wizard to addnew Fields

Development Approach: Technical Design

User Interface

SimplifiedModel

- Simplified info to run the process- Persisted so it can be rerun

- Window, Tab&Field- Display Logic- Validations- Rich&efficient

MMC

DBSourceManager

Page 12: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 12Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Wizard to addnew Fields

Development Approach: Technical Design

User Interface

SimplifiedModel

- Read from Simplified Model- Update database- Export xml files

MMC

DBSourceManager

- Simplified info to run the process- Persisted so it can be rerun

- Window, Tab&Field- Display Logic- Validations- Rich&efficient

Page 13: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 13Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Wizard to addnew Fields

Development Approach: Technical Design

User Interface

SimplifiedModel

MMC

DBSourceManager

- Read from Simplified Model- Update database- Export xml files

- Simplified info to run the process- Persisted so it can be rerun

- Window, Tab&Field- Display Logic- Validations- Rich&efficient

- System rebuild- Server restart

Page 14: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 14Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Development Approach: code snippets, display logic

Page 15: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 15Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

private String createResultForNames(HttpServletResponse response, VariablesSecureApp vars, String colName) {

String windowtabId = vars.getStringParameter("inpnewfWindowtabId"); NEWF_Windowtab windowTab = OBDal.getInstance().get(NEWF_Windowtab.class, windowtabId); String dbprefix = windowTab.getModule().getModuleDBPrefixList().get(0).getName().toString();

colName = colName.replace(" ", ""); StringBuffer result = new StringBuffer();

String dbcolumn_name = colName; String full_prefix = ""; if (windowTab.isExistingTab()) { full_prefix = "EM_" + dbprefix; } else { full_prefix = dbprefix; } if (!dbcolumn_name.toLowerCase().startsWith(full_prefix.toLowerCase() + "_")) { dbcolumn_name = full_prefix + "_" + dbcolumn_name; } if (dbcolumn_name.length() > 30) { dbcolumn_name = dbcolumn_name.substring(0, 29); }

result.append("new Array(\"inpdbColumnName\", \"" + dbcolumn_name + "\")"); result.append(",new Array(\"inpcolumnName\", \"" + dbcolumn_name + "\")"); return result.toString(); }

Development Approach: code snippets, callouts

Page 16: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 16Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Functionality and Demo

Wrap-Up

Process and Tools

Development Technique

Page 17: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 17Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia

Wizard to add new Fields

Q & Ahttp://forge.openbravo.com

http://wiki.openbravo.com/wiki/ERP/2.50/Developers_Guide

[email protected]

Next webinar:Initial Data Load

February 4th, 2010 at 4-5 PM (CET)

Page 18: Wizard to add new Fields Module Extension Module Webinar 21 st of January 2009.

Page 18Wizard to add new Fields -Extension Module Webinar-Openbravo, Ismael Ciordia