SkipOnNull: Boolean;
SkipOnNull: boolean;
The SkipOnNull property determines whether filtering can be disabled if parameter value is empty.
Available values:
False. Filtering is disabled. If parameter value is empty, all dictionary elements are hidden.
True. Filtering is enabled. If parameter value is empty, all dictionary elements are displayed.
Executing the example requires that repository contains table parametrical MDM dictionary with the RDSSON identifier where custom attribute is specified and attribute value is set to dictionary elements. Custom attribute is used as binding for the parameter with the PARAM identifier.
Add links to the Metabase, Rds system assemblies.
Sub UserProc;
Var
mb: IMetabase;
Dict: IRdsDictionary;
Attributes: IRdsAttributes;
Attribute: IRdsAttribute;
Prms: IRdsParams;
Prm: IRdsParam;
Begin
// Get current repository
mb := MetabaseClass.Active;
// Get MDM dictionary
Dict := mb.ItemById("RDSSON").Edit As IRdsDictionary;
// Get dictionary parameters
Prms := Dict.Params;
// Get dictionary parameter linked to the parameter
Prm := Prms.FindById("PARAM");
// Determine that filtering is disabled by parameter, if parameter value is empty
Prm.SkipOnNull := False;
// Save changes in the MDM dictionary
(Dict As IMetabaseObject).Save;
End Sub UserProc;
After executing the example, if parameter value is empty, all elements are hidden in the dictionary.
The requirements and result of the Fore.NET Example execution match with those in the Fore Example.
Imports Prognoz.Platform.Interop.Rds;
…
Public Shared Sub Main(Params: StartParams);
Var
mb: IMetabase;
Dict: IRdsDictionary;
Attributes: IRdsAttributes;
Attribute: IRdsAttribute;
Prms: IRdsParams;
Prm: IRdsParam;
Begin
// Get current repository
mb := Params.Metabase;
// Get MDM dictionary
Dict := mb.ItemById["RDSSON"].Edit() As IRdsDictionary;
// Get dictionary parameters
Prms := Dict.Params;
// Get dictionary parameter linked to the parameter
Prm := Prms.FindById("PARAM");
// Determine that filtering is disabled by parameter, if parameter value is empty
Prm.SkipOnNull := False;
// Save changes in the MDM dictionary
(Dict As IMetabaseObject).Save();
End Sub;
See also: