Hi,
Is it possible when i save filter name configuration it must not allow duplicate name which is already present.
Hi,
Is it possible when i save filter name configuration it must not allow duplicate name which is already present.
Hi Adnan,
Thank you for pointing out the problem.
Created issue: Prevent from creating filter configurations with the same name · Issue #1514 · jmix-framework/jmix · GitHub
As a workaround, you could override FilterSaveAsAction
action in your project: create a subclass, annotate with @ActionType(FilterSaveAsAction.ID)
and override applyDefaultInputDialogOkAction()
method.
Hi,
I tried workaround solution but overridden code is not getting call, default method written in FilterSaveAsAction class is getting call.
below Subclass is created
@ActionType(FilterSaveAsAction.ID)
public class ConfigurationFilter extends FilterSaveAsAction{
public static final String ID = "filter_saveAs";
protected void applyDefaultInputDialogOkAction(InputDialog.InputDialogCloseEvent inputDialogCloseEvent) {
String id = inputDialogCloseEvent.getValue("idField");
if (id != null) {
Filter.Configuration configuration = filter.getCurrentConfiguration();
Filter.Configuration copy = copyConfiguration(id, configuration);
copy.setName(inputDialogCloseEvent.getValue("nameField"));
saveNewConfigurationModel(copy);
}
}
}
below class which was overridden
@StudioAction(
target = "io.jmix.ui.component.Filter",
description = "Saves current filter configuration under a new id and name")
@ActionType(FilterSaveAsAction.ID)
public class FilterSaveAsAction extends FilterAction {
public static final String ID = "filter_saveAs";
protected void applyDefaultInputDialogOkAction(InputDialog.InputDialogCloseEvent inputDialogCloseEvent) {
String id = inputDialogCloseEvent.getValue("idField");
if (id != null) {
Filter.Configuration configuration = filter.getCurrentConfiguration();
Filter.Configuration copy = copyConfiguration(id, configuration);
copy.setName(inputDialogCloseEvent.getValue("nameField"));
saveNewConfigurationModel(copy);
}
}
}
Hi Adnan,
It turned out that some actions cannot be overridden in the application.
Created issue: Actions created by class cannot be overridden · Issue #1529 · jmix-framework/jmix