This is great, I followed the instructions in the following references and
able to extend an OOTB component with a custom component, and limit the
fields displayed on screen by changing code in my custom component ONLY,
Following are the steps, that i had to do to change a ftl file e.g.
applications/product/webapp/catalog/main.ftl
- Extend a OOTB Ofbiz component (Product) with a custom component in
hot-deploy *productcustom*
- Update the reference to the screen widget in
hot-deploy/*productcustom*/webapp/catalog/WEB-INF/controller.xml,
e.g.
!-- View Mappings --
view-map name=main type=screen page=component://*productcustom*
/widget/catalog/CommonScreens.xml#main/
- Update reference to main.ftl in hot-deploy/*productcustom*
/widget/catalog/CommonScreens.xml
decorator-section name=body
screenlet
title=${uiLabelMap.ProductCatalogAdministrationMainPage}
platform-specific
htmlhtml-template location=component://
*productcustom*/webapp/catalog/main.ftl//html
/platform-specific
/screenlet
/decorator-section
- Update form main.ftl in hot-deploy/*productcustom*/webapp/catalog/main.ftl
to include customizations
- Technically the actual change is in main.ftl, however controller.xml and
CommonScreens.xml needed to be updates the references to refer main.ftl in
custom component
- I tried to create the custom component in hot-deploy with the same name
as the OOTB component to avoid changing the references in controller.xml
and CommonScreens.xml, however that did not work;
- As i have lot of screens to be customized, is there a better way to
handle this, just to be able change .ftl or Forms.xml and avoid changes
in controller.xml and Screens.xml
Regards
On Sat, Jun 21, 2014 at 5:04 AM, Pierre Smits pierre.sm...@gmail.com
wrote:
Richard,
Adding an additional layer of functionality to hide other functionality
might increase performance degradation.
Regards,
Pierre Smits
*ORRTIZ.COM http://www.orrtiz.com*
Services Solutions for Cloud-
Based Manufacturing, Professional
Services and Retail Trade
http://www.orrtiz.com
On Fri, Jun 20, 2014 at 6:50 PM, Richard Siddall
richard.sidd...@elirion.net wrote:
Let me just suggest the approach of using display:none in a custom CSS
file to suppress display of the screen elements you don't want to see. I
don't know if it would actually meet Integrin's requirements.
You would not use this approach normally since you have control over the
HTML generated, but it looks like it requires little more than spending
several hours in Firebug to get the CSS selectors of the screen elements
you want to suppress, and somehow registering the extra VT_STYLESHEET
with
a VisualThemeResource element for all the themes you want to be able to
use.
Richard.
Jacques Le Roux wrote:
This is good, you can even go further.
Most of the OFBiz parts can be overridden in a hot-deploy component.
This prevents you to have even to maintain patches...
When you always try to apply this idea you really understand the genius
behind OFBiz...
Jacques
Le 20/06/2014 16:31, Anil Patel a écrit :
Hi,
As a general practice we don’t modify source files that comes with
Apache OFBiz. In case we need to, the changes are maintained in patch
file.
Here is document on wiki that talks about customization in OFBiz.
https://cwiki.apache.org/confluence/display/OFBIZ/Addressing+Custom+
Requirements+In+OFBiz
In my experience, this is the right way to do it.
Thanks and Regards
Anil Patel
COO
Hotwax Media Inc
http://www.hotwaxmedia.com/
ApacheCon US 2014 Silver Sponsor
http://na.apachecon.com/sponsor/our-sponsors
On Jun 20, 2014, at 10:18 AM, Integrin info.integ...@gmail.com
wrote:
Hi Ofbiz Users,
I'm working on customizing ofbiz as a ERP solution and the requirement
comes to having less number fields in most of the screens than what
comes
out of the box, this requires changes in .ftl files and Forms xml, in
the
past i have been commenting out the fields that are not required or
use
access privilege to limit the fields that are being displayed;
however this
requires merging all these changes when i will be upgrading to the new
version; please can you advise what is the best way to handle this,
Any
pointers appreciated
Regards