[ https://issues.apache.org/jira/browse/OFBIZ-4021?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12933087#action_12933087 ]
Bruno Busco commented on OFBIZ-4021: ------------------------------------ When I include the FIXME code MacroFormRenderer.java like this: public void renderFormFilterRowOpen(Appendable writer, Map<String, Object> context, ModelForm modelForm) throws IOException { String formName = modelForm.getCurrentFormName(context); String targetType = modelForm.getFilterForm().getTargetType(); String targ = modelForm.getFilterForm().getTarget(context, targetType); StringBuilder linkUrl = new StringBuilder(); if (UtilValidate.isNotEmpty(targ)) { WidgetWorker.buildHyperlinkUrl(linkUrl, targ, targetType, null, null, false, false, true, request, response, context); } StringWriter sr = new StringWriter(); sr.append("<@renderFormFilterRowOpen "); sr.append(" formName=\""); sr.append(formName); sr.append("\" linkUrl=\""); sr.append(linkUrl); sr.append("\" />"); executeMacro(writer, sr.toString()); } I get this error in the log. ---- exception report ---------------------------------------------------------- Error in request handler: Exception: org.ofbiz.widget.screen.ScreenRenderException Message: Error rendering screen [component://common/widget/CommonScreens.xml#FindScreenDecorator]: java.lang.IllegalArgumentException: Error evaluating BeanShell style conditions on form ListExamples (Error evaluating BeanShell style conditions on form ListExamples) ---- cause --------------------------------------------------------------------- Exception: java.lang.IllegalArgumentException Message: Error evaluating BeanShell style conditions on form ListExamples ---- stack trace --------------------------------------------------------------- java.lang.IllegalArgumentException: Error evaluating BeanShell style conditions on form ListExamples org.ofbiz.widget.form.ModelForm.getStyleAltRowStyle(ModelForm.java:2775) org.ofbiz.widget.form.MacroFormRenderer.renderFormatItemRowOpen(MacroFormRenderer.java:1616) org.ofbiz.widget.form.ModelForm.renderItemRow(ModelForm.java:1696) org.ofbiz.widget.form.ModelForm.renderItemRows(ModelForm.java:1660) org.ofbiz.widget.form.ModelForm.renderListFormString(ModelForm.java:1139) org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:873) org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:753) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:613) org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:129) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:646) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:104) org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:260) org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:652) org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:373) > Adding columns filtering fields in form widget > ---------------------------------------------- > > Key: OFBIZ-4021 > URL: https://issues.apache.org/jira/browse/OFBIZ-4021 > Project: OFBiz > Issue Type: New Feature > Components: framework > Reporter: Bruno Busco > Priority: Minor > Attachments: column_filter_disabled.JPG, column_filter_enabled.JPG, > FilterForm.patch, img_for_tomahawk.zip > > > This patch includes an initial implementation of a list-form column filtering > feature. > The aim is to add the possibility to configure a list form to show, in its > header, some fields that could be used to filter the rows displayed in the > form. > This is a feature quite standard in many systems and could be seen into OFBiz > as a "quick search"; the standard way of searching using a complete > single-type form could be seen as an "advanced search". > Please find attached to this JIRA two screenshots that show you how the > filtering option appears on the screen. > *How the user uses this feature* > The part of the screen that is normally used for the pagination controls > (only the upper one) has been extended so that two icons are shown on the > left. > The first one (a funnel) is used to show or hide the filtering fields. The > second one (a magnifing glass) is used to run the search with the filter > content. > *How the developer uses this feature* > The filtering feature can be enabled on any list-type form specifying the > "filter-form-name" attribute. > This must be the name of a form that contains the details about how the > filtering fields should be rendered. > When a list form with the filter-form-name option set is rendered, any column > field is searched for in the filter-form. > If a field with the same name is found, its field rendering options are used > to render the filter field. > A new field attribute "filter-field" has also been added. > This defaults to true but if it is set to false the filter field is not > rendered for this column, even if a field with the same name is present in > the filter-form. > This feature allows to use as filter-form an already existent form such as a > regular FindXXX form. > In the patch the ListExample form has been changed to use this feature. You > can check it there. > Unfortunately the patch does not work yet 100% but I hope that if someone > finds it interesting could help me. > *What is there still to do* > 1) There is a FIXME in MacroFormRenderer.java file. I cannot make it work. If > I enable the code that is commented there I get an error when a search is run. > 2) I cannot make the filtering fields show the actual content after a search > is run. They are always rendered as empty. > 3) The filter row hide/show status should be saved so that it is maintained > after a pagination. > I submit this patch as it is becouse I cannot easily improve it further but I > hope someone could help. > The img_for_tamahawk.zip file includes imgs that should be added in the > tomahawk images folder to make the patch work. > Thank you for any help! -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.