欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-04-07 20:57:37
...

下载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 Reports Flex教程】报表中的用户数据

下载示例

转载于:https://my.oschina.net/u/3905944/blog/2998647