Search Results for

    Show / Hide Table of Contents

    Class Dictionary

    This class stores all report data items such as datasources, connections, relations, parameters, system variables.

    Inheritance
    System.Object
    Base
    Dictionary
    Implements
    IFRSerializable
    IParent
    Inherited Members
    Base.Name
    Base.Restrictions
    Base.Flags
    Base.Parent
    Base.BaseName
    Base.ClassName
    Base.Report
    Base.Page
    Base.ChildObjects
    Base.ZOrder
    Base.IsAncestor
    Base.IsDesigning
    Base.IsPrinting
    Base.IsRunning
    Base.OriginalComponent
    Base.Disposed
    Base.SetProp(Base, Base)
    Base.FloatDiff(Single, Single)
    Base.DeserializeSubItems(FRReader)
    Base.ExtractDefaultMacros(String)
    Base.Dispose(Boolean)
    Base.Dispose()
    Base.SetFlags(Flags, Boolean)
    Base.SetReport(Report)
    Base.SetName(String)
    Base.SetParent(Base)
    Base.SetParentCore(Base)
    Base.FindObject(String)
    Base.CreateUniqueName()
    Base.Clear()
    Base.BaseAssign(Base)
    Base.AssignAll(Base)
    Base.HasParent(Base)
    Base.HasFlag(Flags)
    Base.HasRestriction(Restrictions)
    Base.InvokeEvent(String, Object)
    Base.OnAfterLoad()
    Base.GetExpressions()
    Base.GetCustomScript()
    Base.ExtractMacros()
    Base.IsHaveToConvert(Object)
    Base.GetConvertedObjects()
    Base.ForEachAllConvectedObjects(Object)
    Namespace: FastReport.Data
    Assembly: FastReport.Base.dll
    Syntax
    public class Dictionary : Base, IDisposable, IFRSerializable, IParent
    Remarks

    You can access the report dictionary via Report.Dictionary property.

    Constructors

    Dictionary()

    Initializes a new instance of the Dictionary class with default settings.

    Declaration
    public Dictionary()

    Properties

    AllObjects

    Declaration
    public ObjectCollection AllObjects { get; }
    Property Value
    Type Description
    ObjectCollection

    Connections

    Gets a collection of connection objects available in a report.

    Declaration
    public ConnectionCollection Connections { get; }
    Property Value
    Type Description
    ConnectionCollection

    CubeSources

    Gets a collection of cubesources available in a report.

    Declaration
    public CubeSourceCollection CubeSources { get; }
    Property Value
    Type Description
    CubeSourceCollection
    Remarks

    Usually you don't need to use this property. It contains only cubesources registered using the RegisterData method.

    DataSources

    Gets a collection of datasources available in a report.

    Declaration
    public DataSourceCollection DataSources { get; }
    Property Value
    Type Description
    DataSourceCollection
    Remarks

    Usually you don't need to use this property. It contains only datasources registered using the RegisterData method. All other datasources are contained in connection objects and may be accessed via Connections property.

    Parameters

    Gets a collection of parameters.

    Declaration
    public ParameterCollection Parameters { get; }
    Property Value
    Type Description
    ParameterCollection
    Remarks

    Another way to access parameters is to use the Report.Parameters property which is actually a shortcut to this property. You also may use the Report.GetParameter and Report.GetParameterValue methods.

    RegisteredItems

    Gets a list of registered items.

    Declaration
    public List<Dictionary.RegDataItem> RegisteredItems { get; }
    Property Value
    Type Description
    System.Collections.Generic.List<Dictionary.RegDataItem>
    Remarks

    This property is for internal use only.

    Relations

    Gets a collection of relations.

    Declaration
    public RelationCollection Relations { get; }
    Property Value
    Type Description
    RelationCollection

    SystemVariables

    Gets a collection of system variables like Date, PageNofM etc.

    Declaration
    public SystemVariables SystemVariables { get; }
    Property Value
    Type Description
    SystemVariables
    Remarks

    Another way to access a system variable is to use the Report.GetVariableValue method.

    Totals

    Gets a collection of totals.

    Declaration
    public TotalCollection Totals { get; }
    Property Value
    Type Description
    TotalCollection
    Remarks

    Another way to get a total value is to use the Report.GetTotalValue method.

    Methods

    AddChild(Base)

    Declaration
    public void AddChild(Base child)
    Parameters
    Type Name Description
    Base child

    Assign(Base)

    Declaration
    public override void Assign(Base source)
    Parameters
    Type Name Description
    Base source
    Overrides
    Base.Assign(Base)

    CanContain(Base)

    Declaration
    public bool CanContain(Base child)
    Parameters
    Type Name Description
    Base child
    Returns
    Type Description
    System.Boolean

    ClearRegisteredData()

    Clears all registered data.

    Declaration
    public void ClearRegisteredData()

    CreateUniqueAlias(String)

    Creates unique alias for data item such as connection, datasource or relation.

    Declaration
    public string CreateUniqueAlias(string alias)
    Parameters
    Type Name Description
    System.String alias

    The base alias.

    Returns
    Type Description
    System.String

    The new unique alias.

    Remarks

    Use this method to create unique alias of the data item. It is necessary when you create new items in code to avoid conflicts with existing report items. This example show how to add a new table:

    Report report1;
    DataConnectionBase conn = report1.Dictionary.Connections.FindByName("Connection1");
    TableDataSource table = new TableDataSource();
    table.TableName = "Employees";
    table.Name = report1.Dictionary.CreateUniqueName("EmployeesTable");
    table.Alias = report1.Dictionary.CreateUniqueAlias("Employees");
    conn.Tables.Add(table);

    CreateUniqueName(String)

    Creates unique name for data item such as connection, datasource, relation, parameter or total.

    Declaration
    public string CreateUniqueName(string name)
    Parameters
    Type Name Description
    System.String name

    The base name.

    Returns
    Type Description
    System.String

    The new unique name.

    Remarks

    Use this method to create unique name of the data item. It is necessary when you create new items in code to avoid conflicts with existing report items. This example show how to add a new parameter:

    Report report1;
    Parameter par = new Parameter();
    par.Name = report1.Dictionary.CreateUniqueName("Parameter");
    report1.Parameters.Add(par);

    Deserialize(FRReader)

    Declaration
    public override void Deserialize(FRReader reader)
    Parameters
    Type Name Description
    FRReader reader
    Overrides
    Base.Deserialize(FRReader)

    FindByAlias(String)

    Finds a data item such as connection, datasource or relation by its alias.

    Declaration
    public DataComponentBase FindByAlias(string alias)
    Parameters
    Type Name Description
    System.String alias

    The item's alias.

    Returns
    Type Description
    DataComponentBase

    The data item if found; otherwise, null.

    FindByName(String)

    Finds a data item such as connection, datasource, relation, parameter or total by its name.

    Declaration
    public Base FindByName(string name)
    Parameters
    Type Name Description
    System.String name

    The item's name.

    Returns
    Type Description
    Base

    The data item if found; otherwise, null.

    FindDataComponent(String)

    Finds a data component that matches the specified reference name.

    Declaration
    public DataComponentBase FindDataComponent(string referenceName)
    Parameters
    Type Name Description
    System.String referenceName

    The name to check.

    Returns
    Type Description
    DataComponentBase

    The DataComponentBase object if found.

    Remarks

    This method is for internal use only.

    FindDataTableSource(DataTable)

    Finds a datasource that matches the specified DataTable.

    Declaration
    public DataSourceBase FindDataTableSource(DataTable table)
    Parameters
    Type Name Description
    DataTable table

    The DataTable object to check.

    Returns
    Type Description
    DataSourceBase

    The DataSourceBase object if found.

    Remarks

    This method is for internal use only.

    GetChildObjects(ObjectCollection)

    Declaration
    public void GetChildObjects(ObjectCollection list)
    Parameters
    Type Name Description
    ObjectCollection list

    GetChildOrder(Base)

    Declaration
    public int GetChildOrder(Base child)
    Parameters
    Type Name Description
    Base child
    Returns
    Type Description
    System.Int32

    Load(Stream)

    Loads the dictionary from a stream.

    Declaration
    public void Load(Stream stream)
    Parameters
    Type Name Description
    System.IO.Stream stream

    The stream to load from.

    Load(String)

    Loads the dictionary from a file.

    Declaration
    public void Load(string fileName)
    Parameters
    Type Name Description
    System.String fileName

    The name of a file to load from.

    Merge(Dictionary)

    Merges this dictionary with another Dictionary.

    Declaration
    public void Merge(Dictionary source)
    Parameters
    Type Name Description
    Dictionary source

    Another dictionary to merge the data from.

    Merge(Dictionary, Boolean)

    Merges this dictionary with another Dictionary.

    Declaration
    public void Merge(Dictionary source, bool mergeOnlyDataSource)
    Parameters
    Type Name Description
    Dictionary source

    Another dictionary to merge the data from.

    System.Boolean mergeOnlyDataSource

    Determines whether to disable the merge of the totals and parameters.

    RegisterBusinessObject(IEnumerable, String, Int32, Boolean)

    Registers a business object.

    Declaration
    public void RegisterBusinessObject(IEnumerable data, string referenceName, int maxNestingLevel, bool enabled)
    Parameters
    Type Name Description
    System.Collections.IEnumerable data

    The business object.

    System.String referenceName

    The name of the object.

    System.Int32 maxNestingLevel

    Maximum level of data nesting.

    System.Boolean enabled

    Determines wheter to enable the object or not.

    Remarks

    This method is for internal use only.

    RegisterCubeLink(IBaseCubeLink, String, Boolean)

    Registers a CubeLink.

    Declaration
    public void RegisterCubeLink(IBaseCubeLink cubeLink, string referenceName, bool enabled)
    Parameters
    Type Name Description
    IBaseCubeLink cubeLink

    The CubeLink to register.

    System.String referenceName

    The name of the data object.

    System.Boolean enabled

    Determines wheter to enable the object or not.

    Remarks

    This method is for internal use only.

    RegisterData(Object, String, Boolean)

    Registers a data object.

    Declaration
    public void RegisterData(object data, string name, bool enabled)
    Parameters
    Type Name Description
    System.Object data

    The object to register.

    System.String name

    The name of the object.

    System.Boolean enabled

    Determines whether to enable the object or not.

    Remarks

    This method is for internal use only.

    RegisterDataView(DataView, String, Boolean)

    Registers a DataView.

    Declaration
    public void RegisterDataView(DataView view, string referenceName, bool enabled)
    Parameters
    Type Name Description
    DataView view

    The DataView to register.

    System.String referenceName

    The name of the data object.

    System.Boolean enabled

    Determines whether to enable the object or not.

    Remarks

    This method is for internal use only.

    RemoveChild(Base)

    Declaration
    public void RemoveChild(Base child)
    Parameters
    Type Name Description
    Base child

    ReRegisterData()

    Re-registers the data registered before.

    Declaration
    public void ReRegisterData()
    Remarks

    This method is for internal use only.

    ReRegisterData(Dictionary)

    Re-registers the data registered before.

    Declaration
    public void ReRegisterData(Dictionary dictionary)
    Parameters
    Type Name Description
    Dictionary dictionary

    Save(Stream)

    Saves the dictionary to a stream.

    Declaration
    public void Save(Stream stream)
    Parameters
    Type Name Description
    System.IO.Stream stream

    Stream to save to.

    Save(String)

    Saves the dictionary to a file.

    Declaration
    public void Save(string fileName)
    Parameters
    Type Name Description
    System.String fileName

    The name of a file to save to.

    Serialize(FRWriter)

    Declaration
    public override void Serialize(FRWriter writer)
    Parameters
    Type Name Description
    FRWriter writer
    Overrides
    Base.Serialize(FRWriter)

    SetChildOrder(Base, Int32)

    Declaration
    public void SetChildOrder(Base child, int order)
    Parameters
    Type Name Description
    Base child
    System.Int32 order

    UnregisterData(Object)

    Unregisters the previously registered data.

    Declaration
    public void UnregisterData(object data)
    Parameters
    Type Name Description
    System.Object data

    The application data.

    UnregisterData(Object, String)

    Unregisters the previously registered data.

    Declaration
    public void UnregisterData(object data, string name)
    Parameters
    Type Name Description
    System.Object data

    The application data.

    System.String name

    The name of the data.

    Remarks

    You must specify the same data and name as when you call RegisterData.

    UpdateLayout(Single, Single)

    Declaration
    public void UpdateLayout(float dx, float dy)
    Parameters
    Type Name Description
    System.Single dx
    System.Single dy

    UpdateRelations()

    Enables or disables relations between data tables.

    Declaration
    public void UpdateRelations()
    Remarks

    Call this method if you create master-detail report from code. This method enables relation between two data tables which Enabled flag is set to true. Relations whose parent and child tables are disabled, gets disabled too.

    Implements

    IFRSerializable
    IParent
    Back to top © 1998-2025 Copyright Fast Reports Inc.