1、可通过输入XML数据源或使用控件的API接口编程的方式填报数据。

  • ReportAll中的数据以“一主表对应多从表”的结构进行组织。
  • 支持常用的XML数据格式。
  • 以编程的方式填报数据等同于对虚拟数据集操作的过程。
  • 对虚拟数据集操作如同简单地增删和赋值操作。

    示例:

    通过XML数据源填报数据:
    [javascript]
    function LoadData()
    {
      document.getElementById("ReportAll").DataAccess.Load("http://127.0.0.1/myproj/data.xml","");
    }

    [HTML]

    IE内核浏览器

    <Object classid="clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" id="ReportAll">
      <Param name="DocSrc" value="http://127.0.0.1/myproj/Template.rad" >
      <Param name="DataSrc" value="http://127.0.0.1/myproj/Data.xml" >
    </Object>

    非IE内核浏览器

    <Object clsid="{568DC60B-F884-4147-8610-8C348AAFA2F8}" id="ReportAll" TYPE="application/x-itst-activex" width="100%" height="100%"
    param_docsrc ="http://127.0.0.1/myproj/Template.rad"
    param_datasrc="http://127.0.0.1/myproj/Data.xml" >
    </Object>

     

     

    编程填报数据:
    [javascript]

    function FillData()
    {
      //首先新增一条主记录
      document.getElementById("ReportAll").DataAccess.MasterDataset().Append();
      //增加明细记录
      //获取虚拟的明细数据集访问接口
      var ds = document.getElementById("ReportAll").DataAccess.DetailDataset("TestDetail");
      //增加记录
      ds.Append();
      ds.SetFieldValue("Name", "张三") ;
      ds.SetFieldValue("City", "北京") ;
    }

     

    2、通过“绑定”将报表对象与虚拟数据集建立关联。

  • 虚拟数据集及其各字段无需预先定义,虚拟字段在赋值时自动创建。
  • 只要虚拟字段的名称与报表设计时报表对象绑定的字段名称一致,该报表对象就能正确的显示数据。
      填报流程
  • 报表对象可以自动感知其绑定字段数据的变化。

     

    3、异步(多线程)的数据加载方式。

  • 用户可以边加载数据边浏览报表,这样有利于增强软件使用时的用户体验,提高客户满意度。
  • 在大数量加载的情况下,由于有缓冲机制,程序不至于死锁,并且随时可以终止加载过程。

     

    参见: