zoukankan      html  css  js  c++  java
  • 如何开发直接SQL报表

    转载:https://club.kingdee.com/forum.php?mod=viewthread&tid=1092293

    直接SQL报表开发起来,非常的简单快捷,不需要编写代码,只要有一点点SQL语言基础即可,深受欢迎。

    本帖按步骤演示如何新开发一个直接SQL报表。

    步骤一: 在BOS设计器,点击新建菜单,创建直接SQL报表
    <ignore_js_op>20160706 00新建直接SQL报表01.png

    步骤二:点击数据源属性,打开数据源配置向导界面
    <ignore_js_op>20160706 00新建直接SQL报表02.png

    步骤三输入SQL语句(关键步骤)
    <ignore_js_op>20160706 00新建直接SQL报表03.png

    步骤四:设置报表列属性:标题、可见、宽度
    <ignore_js_op>20160706 00新建直接SQL报表04.png

    步骤五:设置需要合计的字段
    <ignore_js_op>20160706 00新建直接SQL报表05.png

    步骤六:完成数据源设计
    <ignore_js_op>20160706 00新建直接SQL报表06.png

    步骤七:把新开发的报表,发布到主控台,供用户使用
    <ignore_js_op>20160706 00新建直接SQL报表07.png

    步骤八:重新登陆K/3 Cloud,在主控台看到新开发的直接SQL报表
    <ignore_js_op>20160706 00新建直接SQL报表08.png

    步骤九:SQL语句中嵌入的关键字,需要由用户输入实际值替代:
    相当于由用户输入过滤条件
    <ignore_js_op>20160706 00新建直接SQL报表09.png

    步骤十:报表运行效果
    <ignore_js_op>20160706 00新建直接SQL报表10.png

    小技巧:
    1. 关键字:可以把SQL语句中,需要由最终用户输入的条件,定位为关键字;
    2. 排序:不能使用ORDER BY子句指定排序字段,请改用,row_number() over (order by t0.FBillNo desc) as FIDENTITYID1实现;

    3.使用order by语句,必须在select 后输入 top 100 percent 语句


    示例SQL语句:


    select t0.FID, t1.FENTRYID
           ,t0.FBILLNO
           ,t0.FDate
           ,t0.FDOCUMENTSTATUS
           ,t2.FLOCALCURRID
           ,ISNULL(t20.FPRICEDIGITS,4) AS FPRICEDIGITS
           ,ISNULL(t20.FAMOUNTDIGITS,2) AS FAMOUNTDIGITS
           ,t1.FMATERIALID
           ,t1M_L.FNAME as FMaterialName
           ,t1.FQTY
           ,t1u.FPRECISION as FUnitPrecision
           ,t1U_L.FNAME as FUnitName
           ,t1f.FTAXPRICE
           ,t1f.FALLAMOUNT
           ,row_number() over (order by t0.FBillNo desc) as FIDENTITYID1
      from T_PUR_POORDER t0
    inner join T_PUR_POORDERFIN t2 on (t0.FID = t2.FID)
      left join T_BD_CURRENCY t20 on (t2.FLOCALCURRID = t20.FCURRENCYID)
    inner join T_PUR_POORDERENTRY t1 on (t0.FID = t1.FID)
      left join T_BD_MATERIAL_L t1M_L on (t1.FMATERIALID = t1m_l.FMATERIALID and t1M_L.FLOCALEID = 2052)
    inner join T_PUR_POORDERENTRY_F t1F on (t1.FENTRYID = t1f.FENTRYID)
      left join T_BD_UNIT t1U on (t1f.FPRICEUNITID = t1u.FUNITID)
      left join T_BD_UNIT_L t1U_L on (t1U.FUNITID = t1U_L.FUNITID and t1U_L.FLOCALEID = 2052)
    where t0.FBILLNO like '%#FBillNO#%'
          and t0.FCREATORID = _CurrentUserId_

  • 相关阅读:
    Math类的用法
    c#中和java中可变参数对比
    c#中泛型集合directory和java中map集合对比
    C#调用短信接口(通过简单的工厂模式整合多个短信平台)
    C#用网易邮箱发送邮件(同步异步)
    新浪云-PHP实现上传原图,缩略图
    PHP 继承,组合,单模式,GUID,等混合实例
    ASP.Net MVC @Html类
    ASP.net MVC 无法初始化 ASP.NET Simple Membership 数据库
    PHP 单列模式实例讲解以及参考网址
  • 原文地址:https://www.cnblogs.com/zouhuaxin/p/12195112.html
Copyright © 2011-2022 走看看