This sample demonstrates functions to access or modify the information stored in a Repository.
using System.Collections.Generic;
class RepositorySamples
{
{
Repository repository =
new Repository(
@"C:/Documents and Settings/All Users/Application Data/TEC-IT/TFORMer/7.5/Examples/Command Line/ODBCReportPDF/ODBCReportPDF.tff",
false,
true);
return repository;
}
{
Repository repository =
new Repository(
@"C:/Documents and Settings/All Users/Application Data/TEC-IT/TFORMer/7.5/Examples/Demo Repository/Demos.tfr",
false,
true);
return repository;
}
void DataFieldUsageStandAloneForm ()
{
Repository repository = ConnectToStandAloneForm ();
Project project = repository.GlobalProject;
FormLayout formlayout = project.FirstFormLayout;
DataField datafield = project.FirstDataField;
while (datafield != null)
{
Console.Write(datafield.ToString());
switch (formlayout.GetDataFieldUsage (datafield.Name))
{
case DataFieldUsage.Calculated: Console.Write (
"--> The value of this DataField is computed within the FormLayout");
break;
case DataFieldUsage.Invalid : Console.Write (
"--> Invalid usage - contact TEC-IT");
break;
case DataFieldUsage.Normal : Console.Write (
"--> The DataField is used within the FormLayout; its value can be set");
break;
case DataFieldUsage.NotUsed : Console.Write (
"--> This DataField is not used in this FormLayout");
break;
case DataFieldUsage.Parameter : Console.Write (
"--> This is a system DataField (like the page number) used within the FormLayout");
break;
}
Console.WriteLine();
datafield = datafield.Next;
}
}
void FetchFormLayoutStandAloneForm ()
{
Repository repository = ConnectToStandAloneForm ();
Project project = repository.GlobalProject;
if (project != null)
{
Console.Write(project.ToString());
FormLayout formlayout = project.FirstFormLayout;
if (formlayout != null)
{
Console.Write(formlayout.ToString());
}
}
}
void IterateProjects ()
{
Project project = repository.FirstProject;
while (project != null)
{
Console.Write(project.ToString());
project = project.Next;
}
}
void IterateFormLayoutsRepository ()
{
Project project = repository.FirstProject;
while (project != null)
{
Console.Write(project.ToString());
FormLayout formlayout = project.FirstFormLayout;
while (formlayout != null)
{
Console.Write(formlayout.ToString());
formlayout = formlayout.Next;
}
project = project.Next;
}
}
void IterateDataFieldsStandAloneForm ()
{
Repository repository = ConnectToStandAloneForm ();
Project project = repository.GlobalProject;
DataField datafield = project.FirstDataField;
while (datafield != null)
{
Console.WriteLine (datafield.Name);
datafield = datafield.Next;
}
}
void DataSourceOdbcModify ()
{
Repository repository = ConnectToStandAloneForm ();
Project project = repository.GlobalProject;
DataSourceOdbc dataSource = (DataSourceOdbc) (project.GetDataSource("ODBC"));
dataSource.User = "";
dataSource.Password = "";
}
void DataSourceCsvModify ()
{
Repository repository = ConnectToStandAloneForm ();
Project project = repository.GlobalProject;
DataSourceCsv dataSource = (DataSourceCsv)project.GetDataSource("CSV");
dataSource.Qualifier = "'";
dataSource.Separator = ",";
}
void DataSourceXmlModify ()
{
Repository repository = ConnectToStandAloneForm ();
Project project = repository.GlobalProject;
DataSourceXml dataSource = (DataSourceXml)project.GetDataSource("XML");
dataSource.XsltFilename = "";
}
void IterateDataSourcesProject (Project project)
{
for (DataSource ds = project.FirstDataSource; ds != null; ds = ds.Next)
{
Console.WriteLine (ds.ToString ());
for (DataSourceParameter dsParam = ds.FirstParameter; dsParam != null; dsParam = dsParam.Next)
Console.WriteLine (dsParam.ToString ());
for (ComputedField dsComp = ds.FirstComputedField; dsComp != null; dsComp = dsComp.Next)
Console.WriteLine (dsComp.ToString ());
for (DSFieldMapping dsFieldmap = ds.FirstFieldMapping; dsFieldmap != null; dsFieldmap = dsFieldmap.Next)
Console.WriteLine (dsFieldmap.ToString ());
}
}
void IterateDataSources ()
{
Console.WriteLine ("Global project");
IterateDataSourcesProject (repository.GlobalProject);
for (Project project = repository.FirstProject; project != null; project = project.Next)
{
Console.WriteLine (project.ToString ());
IterateDataSourcesProject (project);
}
}
void IterateDataSourcesStandAloneForm ()
{
Repository repository = ConnectToStandAloneForm ();
Console.WriteLine ("Global project");
IterateDataSourcesProject (repository.GlobalProject);
}
static void Main(string[] args)
{
RepositorySamples sample = new RepositorySamples();
sample.DataFieldUsageStandAloneForm ();
sample.FetchFormLayoutStandAloneForm ();
sample.IterateProjects ();
sample.IterateFormLayoutsRepository ();
sample.IterateDataFieldsStandAloneForm();
sample.IterateDataSources ();
sample.IterateDataSourcesStandAloneForm();
}
}