TFORMer SDK - NET  8
Public Member Functions | Properties
DataSource Class Reference

Abstract class for a DataSource. More...

List of all members.

Public Member Functions

ComputedField AddComputedField (string name)
 Creates and adds a ComputedField to the DataSource.
DSFieldMapping AddFieldMapping (string name)
 Creates and adds a DSFieldMapping to the DataSource.
DataSourceParameter AddParameter (string name)
 Creates and adds a DataSourceParameter to the DataSource.
void Dispose ()
 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
ComputedField GetComputedField (string name)
 Gets a ComputedField defined in the DataSource.
DSFieldMapping GetFieldMapping (string name)
 Gets a DSFieldMapping defined in the DataSource.
DataSourceParameter GetParameter (string name)
 Gets a DataSourceParameter defined in the DataSource.
void RemoveComputedField (string name)
 Removes the ComputedField from the DataSource.
void RemoveComputedField (ComputedField computedField)
 Removes the ComputedField from the DataSource.
void RemoveFieldMapping (string name)
 Removes the DSFieldMapping from the DataSource.
void RemoveFieldMapping (DSFieldMapping fieldMapping)
 Removes the DSFieldMapping from the DataSource.
void RemoveParameter (string name)
 Removes the DataSourceParameter from the DataSource.
void RemoveParameter (DataSourceParameter datasourceParameter)
 Removes the DataSourceParameter from the DataSource.
override string ToString ()
 Returns a string representation of the instance.

Properties

string Comment [get, set]
 Gets/Sets the comment for the DataSource.
string CopyColumnName [get, set]
 Gets/Sets the CopyColumnName of the DataSource.
string Description [get, set]
 Gets/Sets the description of the DataSource.
ComputedField FirstComputedField [get]
 Gets the first ComputedField defined in the DataSource.
DSFieldMapping FirstFieldMapping [get]
 Gets the first DSFieldMapping defined in the DataSource.
DataSourceParameter FirstParameter [get]
 Gets the first DataSourceParameter defined in the DataSource.
bool HandleEscapeSequences [get, set]
 Gets/Sets if escape sequences should be translated on data retrieval or not.
bool IsDefault [get]
 Gets a value indicating whether this object stores the default DataSource.
string Name [get, set]
 Gets/Sets the name of the DataSource.
DataSource Next [get]
 Gets the next DataSource instance defined in the Project.
int NumberOfComputedFields [get]
 Gets the number of ComputedFields defined in the DataSource.
int NumberOfFieldMappings [get]
 Gets the number of DSFieldMappings defined in the DataSource.
int NumberOfParameters [get]
 Gets the number of DataSourceParameters defined in the DataSource.
DataSourceType Type [get]
 Gets the type of the DataSource.

Detailed Description

Abstract class for a DataSource.

Overview

TFORMer Designer allows to define a DataSource as part of a FormLayout. Such an user-defined DataSource can be used for printing directly from within TFORmer Designer or may be re-used by TFORmer SDK for providing JobData (see JobDataDataSource).

A DataSource defines how data is retrieved (e.g. from an ODBC database), the field-mappings (see DSFieldMapping), computed fields (see ComputedField) and optional data source parameters (see DataSourceParameter). Each DataSource is identified by its unique name. Optional DataSourceParameters can be defined to control certain aspects (like filenames, SQL statement or an ODBC-DSN) during runtime.

By default TFORMer Designer creates a DataSource named _Default_. This DataSource is used for printing as long as neither a DataSource is specified for JobData nor the FormLayout has an active DataSource set in design. This DataSource retrieves the data from the file that is stored along with the FormLayout file (extension .xml) and contains the DataField values entered during the last TFORMer Designer session.

The available DataSource-classes are DataSourceCsv, DataSourceOdbc and DataSourceXml.

Escape Sequences

It depends on HandleEscapeSequences whether possible escape sequences in the values are translated into their corresponding binary representation. See Escape Sequences for details.

Record Copies

Each Record of a DataSource is usually considered exactly once for generating output. Use DataSource.CopyColumnName to instruct TFORMer SDK to use a specific field of the DataSource which contains the copy counter. This feature is helpful whenever a single Record of a DataSource should be printed multiple times (e.g. if a certain number of identical labels should be printed).

Computed Fields

Computations can be centralized in the DataSource instead of performing the computations in the FormLayout. The result of a ComputedField is available in the DataSource like any other source-field.

Examples

Sample code that iterates all DataSource of a given Repository:

void IterateDataSourcesProject (Project project)
{
  // Iterate all DataSources of the Project
  for (DataSource ds = project.FirstDataSource; ds != null; ds = ds.Next)
  {
    Console.WriteLine (ds.ToString ());

    // Print information for the DataSourceParameters of the DataSource
    for (DataSourceParameter dsParam = ds.FirstParameter; dsParam != null; dsParam = dsParam.Next)
      Console.WriteLine (dsParam.ToString ());

    // Print information for the ComputedFields of the DataSource
    for (ComputedField dsComp = ds.FirstComputedField; dsComp != null; dsComp = dsComp.Next)
      Console.WriteLine (dsComp.ToString ());

    // Print the mapping between source fields and DataFields
    for (DSFieldMapping dsFieldmap = ds.FirstFieldMapping; dsFieldmap != null; dsFieldmap = dsFieldmap.Next)
      Console.WriteLine (dsFieldmap.ToString ());
  }
}
  // Create a new Repository instance using a Repository (extension *.tfr)
  // Examples are usually installed in
  // - Windows Vista: C:/Program Data/TEC-IT/TFORMer/8/Examples
  // - Older Microsoft Windows versions: C:/Documents and Settings/All Users/Application Data/TEC-IT/TFORMer/8/Examples
  Repository repository = new Repository(@"C:/Documents and Settings/All Users/Application Data/TEC-IT/TFORMer/8/Examples/Demo Repository/Demos.tfr", false, true);  
  // Iterate the DataSources of the global Project
  // If a Repository is used, the global Project and additional user-defined Projects may exist
  Console.WriteLine ("Global project");  
  IterateDataSourcesProject (repository.GlobalProject);

  // Iterate additional Projects
  // Additional Projects are only possible when using a Repository
  for (Project project = repository.FirstProject; project != null; project = project.Next) 
  {
    Console.WriteLine (project.ToString ());

    // Iterate the DataSources of the Project
    IterateDataSourcesProject (project);    
  } 

Sample code that iterates all DataSource-objects of a given stand-alone FormLayout:

void IterateDataSourcesProject (Project project)
{
  // Iterate all DataSources of the Project
  for (DataSource ds = project.FirstDataSource; ds != null; ds = ds.Next)
  {
    Console.WriteLine (ds.ToString ());

    // Print information for the DataSourceParameters of the DataSource
    for (DataSourceParameter dsParam = ds.FirstParameter; dsParam != null; dsParam = dsParam.Next)
      Console.WriteLine (dsParam.ToString ());

    // Print information for the ComputedFields of the DataSource
    for (ComputedField dsComp = ds.FirstComputedField; dsComp != null; dsComp = dsComp.Next)
      Console.WriteLine (dsComp.ToString ());

    // Print the mapping between source fields and DataFields
    for (DSFieldMapping dsFieldmap = ds.FirstFieldMapping; dsFieldmap != null; dsFieldmap = dsFieldmap.Next)
      Console.WriteLine (dsFieldmap.ToString ());
  }
}
  // Create a new Repository instance using a stand-alone FormLayout (extension *.tff)
  // Examples are usually installed in
  // - Windows Vista or later: C:/Program Data/TEC-IT/TFORMer/8/Examples
  // - Older Microsoft Windows versions: C:/Documents and Settings/All Users/Application Data/TEC-IT/TFORMer/8/Examples
  Repository repository = new Repository(@"C:/Documents and Settings/All Users/Application Data/TEC-IT/TFORMer/8/Examples/Command Line/ODBCReportPDF/ODBCReportPDF.tff", false, true);
  // Iterate the DataSources of the global Project
  // If a stand-alone FormLayout is used, the global Project is the only Project
  Console.WriteLine ("Global project");  
  IterateDataSourcesProject (repository.GlobalProject);  

More Information

See also:
ComputedField

Related documentation:

Note:
Thread-safety: A single instance of this class must not be used by different threads.
See also:
DataSourceCsv, DataSourceOdbc, DataSourceXml

Member Function Documentation

ComputedField AddComputedField ( string  name)

Creates and adds a ComputedField to the DataSource.

Parameters:
nameThe name of the ComputedField
Returns:
A new ComputedField
See also:
ComputedField
DSFieldMapping AddFieldMapping ( string  name)

Creates and adds a DSFieldMapping to the DataSource.

Parameters:
nameThe name of the DataField for which a DSFieldMapping should be created.
Returns:
A new DSFieldMapping

Creates and adds a DataSourceParameter to the DataSource.

Parameters:
nameThe name of the DataSourceParameter
Returns:
A new DataSourceParameter
See also:
DataSourceParameter
void Dispose ( )

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

ComputedField GetComputedField ( string  name)

Gets a ComputedField defined in the DataSource.

Parameters:
nameThe name of the ComputedField
Returns:
A valid object instance or null
See also:
ComputedField
DSFieldMapping GetFieldMapping ( string  name)

Gets a DSFieldMapping defined in the DataSource.

Retrieves the DSFieldMapping for a given DataField name from the DataSource

Parameters:
nameThe name of a DataField
Returns:
A valid object instance or null

Gets a DataSourceParameter defined in the DataSource.

Parameters:
nameThe name of the DataSourceParameter
Returns:
A valid object instance or null
See also:
DataSourceParameter
void RemoveComputedField ( string  name)

Removes the ComputedField from the DataSource.

Parameters:
nameThe name of the ComputedField
See also:
ComputedField
void RemoveComputedField ( ComputedField  computedField)

Removes the ComputedField from the DataSource.

Parameters:
computedFieldThe ComputedField
See also:
ComputedField
void RemoveFieldMapping ( string  name)

Removes the DSFieldMapping from the DataSource.

Parameters:
nameThe name of the DataField for which the mapping should be deleted
void RemoveFieldMapping ( DSFieldMapping  fieldMapping)

Removes the DSFieldMapping from the DataSource.

Parameters:
fieldMappingThe DSFieldMapping
void RemoveParameter ( string  name)

Removes the DataSourceParameter from the DataSource.

Parameters:
nameThe name of the DataSourceParameter
See also:
DataSourceParameter
void RemoveParameter ( DataSourceParameter  datasourceParameter)

Removes the DataSourceParameter from the DataSource.

Parameters:
datasourceParameterThe DataSourceParameter
See also:
DataSourceParameter
override string ToString ( )

Returns a string representation of the instance.

Returns:
A string representation of the instance

Reimplemented in DataSourceOdbc, DataSourceCsv, and DataSourceXml.


Property Documentation

string Comment [get, set]

Gets/Sets the comment for the DataSource.

Returns:
The comment for the DataSource
string CopyColumnName [get, set]

Gets/Sets the CopyColumnName of the DataSource.

Returns:
The CopyColumnName of the DataSource
See also:
DataSource
string Description [get, set]

Gets/Sets the description of the DataSource.

Returns:
The description of the DataSource

Gets the first ComputedField defined in the DataSource.

Returns:
The first ComputedField object in the list or null
See also:
ComputedField

Gets the first DSFieldMapping defined in the DataSource.

Returns:
The first DSFieldMapping in the list or null

Gets the first DataSourceParameter defined in the DataSource.

Returns:
The first DataSourceParameter defined in the DataSource or null
See also:
DataSourceParameter
bool HandleEscapeSequences [get, set]

Gets/Sets if escape sequences should be translated on data retrieval or not.

Returns:
true if escape sequences should be translated.
See also:
Escape Sequences, DataSource
bool IsDefault [get]

Gets a value indicating whether this object stores the default DataSource.

Returns:
true if this DataSource is the default DataSource.
See also:
DataSource
string Name [get, set]

Gets/Sets the name of the DataSource.

Returns:
The name of the DataSource

Gets the next DataSource instance defined in the Project.

A Project stores a list of DataSource objects. To retrieve the first DataSource in the Project see Project.FirstDataSource.

Returns:
null if there aren't other instances in the Project, otherwise a valid instance of this class (DataSourceCsv, DataSourceOdbc or DataSourceXml)
See also:
Project

Gets the number of ComputedFields defined in the DataSource.

Returns:
The number of ComputedFields defined in the DataSource
See also:
ComputedField

Gets the number of DSFieldMappings defined in the DataSource.

Returns:
The number of DSFieldMappings defined in the DataSource
int NumberOfParameters [get]

Gets the number of DataSourceParameters defined in the DataSource.

Returns:
The number of DataSourceParameters defined in the DataSource
See also:
DataSourceParameter

Gets the type of the DataSource.

The DataSourceType is read-only, and is set on creation. It specifies the type of a DataSource (e.g. DataSourceOdbc, DataSourceCsv, DataSourceXml).

Returns:
The DataSourceType of the DataSource

© 2006-2024 - all rights reserved by TEC-IT Datenverarbeitung GmbH
Generated on Wed Aug 7 2024 17:29:42 for TFORMer SDK - NET with doxygen 1.7.6.1