zoukankan      html  css  js  c++  java
  • CRM中多张关联表join的报表

    用向导生成的原始报表只能包含两张关联的table,如果要显示多张关联的表的内容(三张以上),就得修改报表的DSMain数据源:

    sample code

    Code

    说明:比如A,B,C,D四张表有关联,A.a1 = B.b1,B.b2 = C.c2,C.c3 = D.d3,则可以

    select A.field1,B.field1,C.field1,D.field1 from A

         [inner/left outer]join B

         on A.a1 = B.b1

         where A.field = "***" and B.field = "***"

         [inner/left outer]join C

         on B.b2 = C.c2

         where ...

    其中,第二个join是B和C的join而不是A和C的join(根据on B.b2 = C.c2),用join不用子查询的原因是子查询的效率比较低。

    然后在数据源中就可以直接引用ABCD的字段,然后放到报表中去了。

    如下代码实现将D、E中的数据放在一起,然后在body中显示(其中A->B->C->D,A->B->C->E):

    Code
  • 相关阅读:
    Spring、实例化Bean的三种方法
    Spring、编码剖析Spring管理Bean的原理
    Spring、Hello Spring
    Spring、控制反转与依赖注入(概念)
    Hibernate、批量操作数据
    Hibernate、3.6.7在线帮助文档
    Hibernate、乐观锁和悲观锁
    JQuery UI 精品UI推荐
    java 为pdf添加水印图片
    Hibernate 、继承关联映射
  • 原文地址:https://www.cnblogs.com/yanluckly/p/1397393.html
Copyright © 2011-2022 走看看