Explains the concepts related to the concepts of filters and restrictions


Filters is a tool of imposing user restrictions on the object list.

All lists have the functionality for the imposition of filters. To download the list, use view L and submission to T and D used for imposing on him restrictions. This is why L and T (D for detailov object) should contain the same set of attributes.

The constraint editor

The constraint editor is used to create filters.

Read more about the editor can be viewed in this article

The settings filter (FilterSettings)

To set FilterSettings you must use Flexberry Administrative Console (AdmConsole).

If you use generator filters settings, you need to pay attention to the following points:

arr.Add(new IIS.WinUI.Runners.EditFormRunner(typeof(IIS.Core.App_FilterSettingsGeneratorE), Administration, "Generator filters settings", "", new IIS.Core.App_FilterSettingsGenerator(), typeof(IIS.Core.App_FilterSettingsGenerator), false));
  • In the config app should be lines like:
<add key="DefaultLibFolder" value="lib"/>
<add key="FilterSettingStrategy" value="reflection"/>

The Assembly of objects and forms in this case should be moved to the folder specified in DefaultLibFolder.

  • The objects have to be T view.

  • Once filter settings are generated, they must be connected as indicated here.

FilterSettings specify settings for datalow and lyapov (for example, without these settings when you set limits you cannot use detaily).

After you set FilterSettings in the application database, which was set up AdmConsole will be filled with the following table:

  • STORMFILTERSETTING (contains names of filters names of objects, which will apply these settings);
  • STORMFILTERLOOKUP (contains settings for lyapov);
  • STORMFILTERDETAIL (contains settings for datalow);

Form restrictions AdvLimit

AdvLimit allows you to set ограничения; to extend the functionality, you must configure FilterSettings (see here and here).


Property LimitFunction structure LoadingCustomizationStruct you can programmatically define constraints (for example, see here).