Interface IDatasetQueryableItem
The system entity for a DataSet Queryable Item, which belongs to a IDataset
See https://help.lemonedge.com/help/enterprise-data-tools/reporting/datasets/queryable-items-view.html for more information
Inherited Members
Namespace: LemonEdge.API.Entities.Reporting
Assembly: LemonEdge.API.dll
Syntax
[EntityDefinition(EntityID.DatasetQueryableItem, "dbo.LT_DatasetQueryableItems", "DatasetQueryableItem", LabelColumn = "Name")]
[DefaultEntityIcon(ImageType.Dataset)]
[EntityLinkToAnyParentRelationshipModifier(EntityID.SQLWrapper, "OwnerEntityID", "ID", ExcludeFromRelationship = true)]
[EntityLinkToAnyParentRelationshipModifier(EntityID.DataSourceIDs, "EntityID", "ID", ExcludeFromRelationship = true)]
[EntityIndex(Name = "DataSetItems", ColumnNames = new string[] { "DatasetID" }, IndexOrder = new IndexOrder[] { IndexOrder.Ascending }, IsClustered = false, IsUnique = false)]
public interface IDatasetQueryableItem : IBaseEntity, IEquatable<IBaseEntity>, INotifyPropertyChanged, INotifyPropertyChanging, ICloneableAsync, ICanTrackProperties
Properties
DatasetID
Links to IDataset. The parent dataset this queryable item belongs to
Declaration
[EntityProperty(SQLType.UniqueIdentifier, false)]
[EntityRelationship(EntityID.Dataset, "ID", SingleJoinType.One, "Dataset", "Queryable Items", DeleteWithRelationship = true, PartOfParentSet = true, InheritPermissions = true)]
[RequiredNoDefaultIDValidation]
Guid DatasetID { get; set; }
Property Value
Type | Description |
---|---|
Guid |
Distinct
Indicates all rows returned must be distinct removing any duplicate values
Declaration
[EntityProperty(SQLType.Bit, false, "0")]
[EntityDescription("Indicates if only distinct row results should be returned in this queryable item.")]
bool Distinct { get; set; }
Property Value
Type | Description |
---|---|
bool |
IsWith
Not used yet: Indicates this queryable item should generate a with statement that can be used by the next queryable item set
Declaration
[EntityProperty(SQLType.Bit, false, "0")]
[EntityDescription("Indicates this queryable item should generate a with statement that can be used by the next queryable item set.")]
bool IsWith { get; set; }
Property Value
Type | Description |
---|---|
bool |
JoinType
If this Queryable Item is a child of any other Queryable Item, then this specifies the type of join this queryable item will have to the overall dataset:
- Exclusive: Equivalent to Inner Join in SQL.
- Inclusive: Equivalent to Outer Join in SQL
- CrossJoin: Equivalent to Cross Join in SQL
Declaration
[EntityProperty(SQLType.SmallInt, true)]
[EntityDescription("The type of join to use when joining this queryable item to its parent.")]
DatasetRelationshipJoinType? JoinType { get; set; }
Property Value
Type | Description |
---|---|
DatasetRelationshipJoinType? |
Name
[Key] This is the user friendly name of the queryable item as it will appear in the treeview.
This makes looking at the data structure very easy at a glance.It is also the name the user will see if they are able to open a row of data from this item type
Declaration
[EntityProperty(SQLType.NVarChar, 500, false)]
[EntityKeyProperty]
[EntityDescription("The name of this queryable item.")]
[Required]
string Name { get; set; }
Property Value
Type | Description |
---|---|
string |
ParentID
The Queryable Item this entity is a child of (if it is not the root queryable item)
Declaration
[EntityProperty(SQLType.UniqueIdentifier, true)]
[EntitySelfRelationship("ID", SingleJoinType.ZeroToOne, "IDatasetQueryableItem", "Queryable Items", DeleteWithRelationship = true, PartOfParentSet = false, LinkToItemInSet = false, InheritPermissions = false, PreventAutoConstraint = true)]
Guid? ParentID { get; set; }
Property Value
Type | Description |
---|---|
Guid? |
QueryableItemID
The item of the specified type that you want to query
A queryable item inherits IQueryableItem
Declaration
[EntityProperty(SQLType.NVarChar, 500, false)]
[EntityDescription("The id of this queryable item.")]
string QueryableItemID { get; set; }
Property Value
Type | Description |
---|---|
string |
QueryableItemSubID
The sub id of this queryable item.
Declaration
[EntityProperty(SQLType.NVarChar, 500, true)]
[EntityDescription("The sub id of this queryable item.")]
string QueryableItemSubID { get; set; }
Property Value
Type | Description |
---|---|
string |
QueryableItemTypeName
The type of item you want to query. This can be an Entity, History, or Query.
Declaration
[EntityProperty(SQLType.NVarChar, 50, false)]
[EntityDescription("The type of queryable item.")]
[Required]
string QueryableItemTypeName { get; set; }
Property Value
Type | Description |
---|---|
string |
ReplicateForAll
If the queryable item type is a type that has sub Queryable Item Options, such as permissions, then this indicates you want to replicate your query for every option and union the results together.
Declaration
[EntityProperty(SQLType.Bit, false, "0")]
[EntityDescription("Indicates this queryable item should be replicated for each possible type in the function.")]
bool ReplicateForAll { get; set; }
Property Value
Type | Description |
---|---|
bool |
Sequence
Holds the order of this queryable item in the set.
Declaration
[EntityProperty(SQLType.SmallInt, false, "0")]
[EntityDescription("Holds the order of this queryable item in the set.")]
[EntitySequence]
short Sequence { get; set; }
Property Value
Type | Description |
---|---|
short |
SetType
Specifies the operator to apply when combining the data from this set with the data from the prior set
Declaration
[EntityProperty(SQLType.SmallInt, true)]
[EntityDescription("The type of set operator to use when combining this queryable item to the one prior to it.")]
SetOperator? SetType { get; set; }
Property Value
Type | Description |
---|---|
SetOperator? |
Skip
Indicates the queryable item should skip the specified number of rows (requires an order in the Columns) before returning the remaining amount
Declaration
[EntityProperty(SQLType.Int, true)]
[EntityDescription("Indicates if the specified number of rows should be skipped (requires an order in the Columns) before returning the rows in this queryable item.")]
int? Skip { get; set; }
Property Value
Type | Description |
---|---|
int? |
Top
Indicates the queryable item should always only return the following number of rows
Declaration
[EntityProperty(SQLType.Int, true)]
[EntityDescription("Indicates if just the top (requires an order in the Columns) specified number of rows should be returned in this queryable item.")]
int? Top { get; set; }
Property Value
Type | Description |
---|---|
int? |