Search Results for

    Show / Hide Table of Contents

    Interface IFilterDescriptor

    The system entity for filter descriptors, which is used in IDataset filters, and other system filters

    See https://help.lemonedge.com/help/enterprise-data-tools/reporting/datasets/where-filters-view.html for more information

    Inherited Members
    IBaseEntity.GetLabel(string)
    IBaseEntity.SetLabel(string, string)
    IBaseEntity.SetSilentLabel(string, string)
    IBaseEntity.AccountID
    IBaseEntity.ID
    IBaseEntity.LastUpdated
    IBaseEntity.ModifiedByUserID
    IBaseEntity.CanvasID
    IBaseEntity.AlgorithmStepID
    IBaseEntity.SafeID
    IEquatable<IBaseEntity>.Equals(IBaseEntity)
    INotifyPropertyChanged.PropertyChanged
    INotifyPropertyChanging.PropertyChanging
    ICloneableAsync.Clone(object)
    ICloneableAsync.CopyFromSource(object)
    ICanTrackProperties.HasTrackedPropertyChanged(string)
    ICanTrackProperties.OriginalTrackedPropertyValue(string)
    ICanTrackProperties.OriginalTrackedPropertyValue<T>(string)
    ICanTrackProperties.ClearTrackedOriginalValues()
    ICanTrackProperties.GetAllOriginalTrackedPropertyValues()
    Namespace: LemonEdge.API.Entities.Reporting
    Assembly: LemonEdge.API.dll
    Syntax
    [EntityDefinition(EntityID.FilterDescriptor, "dbo.LT_FilterDescriptors", "FilterDescriptor", LabelColumn = "Label")]
    [DefaultEntityIcon(ImageType.Filter)]
    [EntityLinkToAnyParentRelationshipModifier(EntityID.SQLWrapper, "OwnerEntityID", "ID", ExcludeFromRelationship = true)]
    [EntityLinkToAnyParentRelationshipModifier(EntityID.DataSourceIDs, "EntityID", "ID", ExcludeFromRelationship = true)]
    [EntityIndex(Name = "DataSet", ColumnNames = new string[] { "DatasetID" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = false)]
    [EntityIndex(Name = "Parent", ColumnNames = new string[] { "ParentID" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = false)]
    [EntityIndex(Name = "QueryableItem", ColumnNames = new string[] { "DataSetQueryableItemID" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IncludeColumns = new string[] { "ModifiedByUserID", "DatasetID", "Label", "Sequence", "ParentID", "CompositeLogicalOperator", "PropertyName", "Operator", "BindedValue", "HardcodedValue", "WrapBindingValueInIsNull", "FilterFromJoin", "VennSetQueryableItemID", "VennSetID", "HardcodedValue_Label", "SafeID", "PropertyAggregate", "BindedAggregate", "AlgorithmStepID" }, IsClustered = false, IsUnique = false)]
    public interface IFilterDescriptor : IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties

    Properties

    BindedAggregate

    Declaration
    [EntityProperty(SQLType.SmallInt, false, "0")]
    AggregateFunction BindedAggregate { get; set; }
    Property Value
    Type Description
    AggregateFunction

    BindedValue

    The parameter/property to bind the propertyname to using the operator.

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, true)]
    [EntityDescription("The parameter/property to bind the propertyname to using the operator.")]
    string BindedValue { get; set; }
    Property Value
    Type Description
    string

    CompositeLogicalOperator

    Indicates if this is an actual comparison filter, or a logical composite operator that has children filters. Can be:

    • None: Indicates this is an actual where filter.It is logically applied to other filters according to its direct parent composite operator. If it does not have one then all top level filters use And to compare to each other.
    • And: Indicates all child where filters should have And as a logical operator applied to them.

      No other properties need be set for this where filter if it has a composite operator value.

    • Or: Indicates all child where filters should have Or as a logical operator applied to them.

      No other properties need be set for this where filter if it has a composite operator value.

    Declaration
    [EntityProperty(SQLType.SmallInt, false)]
    [EntityDescription("The logical operator if this is a composite filter.")]
    FilterLogicalCompositeOperator CompositeLogicalOperator { get; set; }
    Property Value
    Type Description
    FilterLogicalCompositeOperator

    DataSetQueryableItemID

    [Key] Links to IDataSetQueryableItem. The parent dataset queryable item this filter belongs to.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityKeyProperty]
    [EntityRelationship(EntityID.DatasetQueryableItem, "ID", SingleJoinType.ZeroToOne, "Data Set Queryable Item", "Where Filters", DeleteWithRelationship = true, PartOfParentSet = true, LinkToItemInSet = false, InheritPermissions = true)]
    Guid? DataSetQueryableItemID { get; set; }
    Property Value
    Type Description
    Guid?

    DatasetID

    [Key] Links to IDataset. The parent dataset this filter belongs to.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityKeyProperty]
    [EntityRelationship(EntityID.Dataset, "ID", SingleJoinType.ZeroToOne, "Dataset", "Where Filters", DeleteWithRelationship = true, PartOfParentSet = true, LinkToItemInSet = false, InheritPermissions = true)]
    Guid? DatasetID { get; set; }
    Property Value
    Type Description
    Guid?

    FilterFromJoin

    Indicates this where filter should be applied in the actual Join of the Queryable Item instead of on the where clause for performance

    Declaration
    [EntityProperty(SQLType.Bit, false)]
    [EntityDescription("Indicates this filter and it's children should be applied to the filter as part of a join, and not in the where clause.")]
    bool FilterFromJoin { get; set; }
    Property Value
    Type Description
    bool

    HardcodedValue

    A hardcoded value to compare the Queryable Item Property to using the comparison Operator.

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, true)]
    [EntityDescription("The value to bind the propertyname to using the operator.")]
    string HardcodedValue { get; set; }
    Property Value
    Type Description
    string

    HardcodedValue_Label

    A hardcoded value label for user evaluation of this filter.

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, true)]
    [EntityDescription("A user friendly label for this hard coded value.")]
    string HardcodedValue_Label { get; set; }
    Property Value
    Type Description
    string

    Label

    The system generated label of this filter

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, false)]
    [EntityDescription("The label of this filter descriptor.")]
    [Required]
    string Label { get; set; }
    Property Value
    Type Description
    string

    Operator

    The operator of this filter action.

    Declaration
    [EntityProperty(SQLType.SmallInt, false)]
    [EntityDescription("The operator of this filter action.")]
    [HardCodedDefaultValueOnNew("2")]
    SQLOperator Operator { get; set; }
    Property Value
    Type Description
    SQLOperator

    ParentID

    Lins to IFilterDescriptor. Holds the parent filter this is a child of if part of a heirarchical filter

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntitySelfRelationship("ID", SingleJoinType.ZeroToOne, "IFilterDescriptor", "Filters", DeleteWithRelationship = true, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false, PreventAutoConstraint = true)]
    Guid? ParentID { get; set; }
    Property Value
    Type Description
    Guid?

    PropertyAggregate

    Declaration
    [EntityProperty(SQLType.SmallInt, false, "0")]
    AggregateFunction PropertyAggregate { get; set; }
    Property Value
    Type Description
    AggregateFunction

    PropertyName

    The property name being filtered.

    Declaration
    [EntityProperty(SQLType.NVarChar, 500, true)]
    [EntityDescription("The property name being filtered.")]
    string PropertyName { get; set; }
    Property Value
    Type Description
    string

    Sequence

    Holds the order of this descriptor item in the set

    Declaration
    [EntityProperty(SQLType.SmallInt, false, "0")]
    [EntityDescription("Holds the order of this descriptor item in the set.")]
    [EntitySequence]
    [EntityKeyProperty]
    short Sequence { get; set; }
    Property Value
    Type Description
    short

    VennSetID

    [Key] Links to IVennSet. The parent dataset this filter belongs to.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityKeyProperty]
    [EntityRelationship(EntityID.VennSet, "ID", SingleJoinType.ZeroToOne, "Venn Set", "Where Filters", DeleteWithRelationship = true, PartOfParentSet = true, LinkToItemInSet = false, InheritPermissions = true)]
    Guid? VennSetID { get; set; }
    Property Value
    Type Description
    Guid?

    VennSetQueryableItemID

    [Key] Links to IVennSetQueryableItem. The parent vennset queryable item this filter belongs to.

    Declaration
    [EntityProperty(SQLType.UniqueIdentifier, true)]
    [EntityKeyProperty]
    [EntityRelationship(EntityID.VennSetQueryableItem, "ID", SingleJoinType.ZeroToOne, "Venn Set Queryable Item", "Where Filters", DeleteWithRelationship = true, PartOfParentSet = true, LinkToItemInSet = false, InheritPermissions = true)]
    Guid? VennSetQueryableItemID { get; set; }
    Property Value
    Type Description
    Guid?

    WrapBindingValueInIsNull

    Indicates the Source Property of this filter should be wrapped in an IsNull clause to match the specified value if null.

    Declaration
    [EntityProperty(SQLType.Bit, false)]
    [EntityDescription("Indicates the value bound to for this comparrison should be wrapped in an isnull guard permitting all matches if null.")]
    bool WrapBindingValueInIsNull { get; set; }
    Property Value
    Type Description
    bool

    Extension Methods

    LinqExtensions.AsArray<T>(T)
    LinqExtensions.ToArrayOfOne<T>(T)
    LinqExtensions.ToListOfOne<T>(T)
    MiscExtensions.SetIfNotEqual<T, TP>(T, Expression<Func<T, TP>>, TP)
    WeakReferenceExtensions.WeakReference(object)
    SQLExtensions.ToSQLValue(object, bool)
    ReflectionExtensions.ClearEventInvocations(object, string)
    StringExtensions.ToCSVFormatString(object, Type)

    See Also

    IDataset
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.