【Stimulsoft Reports Flex教程】报表中的用户数据

发布时间 : 2019-01-08 11:10:05.000|阅读 222 次

概述:此示例显示如何在报表中使用用户数据并从代码中注册它。

相关链接:

下载Stimulsoft Reports Flex最新版本

此示例显示如何在报表中使用用户数据并从代码中注册它。

要使用XML数据,首先应加载XML文件并将其转换为XML对象。为此,您可以使用StiTypeConverter.stringToXml()静态方法。执行此操作后,您可以使用报表对象的regData()方法将XML数据注册到报表中。作为参数,您应该传递数据源名称和别名,以及此XML对象:

private var reportString: String;
private var xmlData: XMLNode;
 
private function onInitialize(): void
{
    ...
 
    // Load XML data file
    var request2: URLRequest = new URLRequest("reports/data/Demo.xml");
    var loader2: URLLoader = new URLLoader();
    loader2.addEventListener(Event.COMPLETE, onXmlLoadComplete);
    loader2.load(request2);
}
 
private function onXmlLoadComplete(event: Event): void
{
    var loader: URLLoader = event.target as URLLoader;
    var data: String = loader.data as String;
 
    xmlData = StiTypeConverter.stringToXml(data);
}
 
private function onRegDataXmlClick(): void
{
    // Create new report object
    var report: StiReport = new StiReport();
    // Load report from XML string
    report.loadReportFromString(reportString);
    // Registration of XML data with same name "Demo"
    report.regData("Demo", "Demo", xmlData);
    // Show report in Viewer dialog window
    report.showDialog();
}

您还可以使用DataSet,DataTable,DataColumn类来创建用户数据集。例如,使用一个CustomerName数据列和三个数据行创建一个Customers数据表。创建后,您可以使用报表对象的regData()方法:

private function onRegDataSetClick(): void
{
    // Create new Data Table
    var table: DataTable = new DataTable("Customers");
    // Create new Data Column
    var column: DataColumn = new DataColumn("CustomerName", StorageType.StringType);
    // Add Data Column to Data Table
    table.columns.add(column);
 
    // Create new Data Rows
    table.addNewRow().setValue("CustomerName", "John Smith");
    table.addNewRow().setValue("CustomerName", "Antonio Moreno");
    table.addNewRow().setValue("CustomerName", "Elizabeth Brown");
 
    // Create new Data Set
    var dataSet: DataSet = new DataSet("DataSetName");
    // Add Data Table to Data Set
    dataSet.tables.add(table);
 
    // Create new report object
    var report: StiReport = new StiReport();
    // Registration of user Data Set
    report.regData("DataSetName", "DataSetName", dataSet);
    // Synchronize report dictionary
    report.dictionary.synchronize();
    // Design report in Designer dialog window
    report.designDialog();
}

下面的屏幕截图中,您可以看到示例代码的结果。

Stimulsoft

下载示例

购买Stimulsoft正版授权,请点击“咨询在线客服”哟!

Codemix活动

在线
客服
微信
QQ 电话
023-68661681
返回
顶部