找回密码
 立即注册

QQ登录

只需一步,快速开始

Eric.Liang 讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2018-6-6 16:19  /   查看:8169  /  回复:2
本帖最后由 Tracy.Liu 于 2018-9-14 11:35 编辑

上一节我们讲了什么是视图,使用视图的优点在哪里,这一节我们来了解一下活字格中都有哪些视图以及这些视图的使用方式。

活字格的视图有哪几类,应用场景又是什么呢?

活字格4.0新版本发布后,活字格不仅支持创建基本视图连接多表,还支持创建用户信息视图,创建工作流历史视图。
这三种视图会运用到哪些场景呢?请大家向下看。


1.视图(只可查询数据,不可修改数据)
业务场景一
场景描述:某一个采购订单系统,存在订单表和收款明细表,订单表中有订单编号和订单总金额字段,收款明细表作为订单表的子表记录每一个订单的多笔收款费用,如果我想实时的统计某一个订单已收款多钱,未收款多钱应该怎么做呢?


无视图时的操作:我们需要在订单表中添加已收款金额字段,在收款明细表中SUM计算所有收款明细的金额,然后每次更改收款明细表数据时将该订单的收款金额总和更新到订单表的已收款金额字段中。操作比较复杂繁琐。


使用视图时的操作:通过手写SQL将订单表和收款明细表连接,创建"收款金额视图",在视图中添加统计字段"已收款金额",计算收款金额字段的和,页面表格中绑定"收款金额视图",绑定统计字段。这样已收款金额永远是基于收款明细表中的金额实时去计算,不需要进行多余的数据表操作。


操作步骤:
a)手写SQL创建视图连接订单表和收款明细表,SQL语句的书写规范详见SQLLite Select语句介绍网站。
对SQLLite有兴趣的格友也可以看看这里:http://www.runoob.com/sqlite/sqlite-tutorial.html

image.png947823181.png
image.png98673399.png

b)创建视图后会自动给连接的每一个表创建FGC_CreateDate,FGC_LastModifier,FGC_LastModifyDate,FGC_Creator,FGC_Rowversion,FGC_UpdateHelp字段,这些字段为活字格的内置字段,不需要进行其他操作,页面上不绑定这些字段即可。
blob308800658.png

c)在视图中添加统计字段,统计的是收款金额字段的和。与数据表设置统计字段方法相同。
blob111241759.png

d)将创建的视图绑定在页面中
blob472370604.png

e)前端页面效果如下,已收款金额实时变化,未收款金额也随之变化。
视图统计字段Demo.gif

业务场景二
场景描述:某一个客户沟通系统,存在客户表和客户沟通明细表,客户表中包含客户基本信息以及第一次接触日期,客户沟通明细表作为客户表的子表,客户沟通明细中存在一次沟通,多次沟通和未沟通三种场景,一次和多次沟通有相应的沟通明细和沟通日期,未沟通的话客户沟通明细表中无数据,如果我想在页面中统计每一个客户的最近沟通日期,未沟通过用户显示第一次接触日期应该怎么做?


无视图时的操作:我们需要利用多个辅助表,对多个客户沟通明细表进行数据查询,然后在页面中使用Vlookup公式匹配对应用户的最近沟通日期。当页面表格的数据较多时,会导致页面加载过慢的问题。


使用视图时的操作:通过利用公用表表达式查询到“客户沟通明细表”中每个客户沟通日期的最大值,将其命名为最近沟通日期。查询最近沟通日期和“客户表”的所有信息。这样我们就可以在视图中直接显示所有用户的最近沟通日期。页面中绑定视图,利用公式判断最近沟通日期是否为空,为空,显示第一次接触日期,不为空,显示最近沟通日期。


操作步骤:a)通过手写SQL创建相应的视图。

blob551980285.png

b)客户表列表页面中绑定客户沟通视图。用来显示各客户的最近沟通日期。
blob432973632.png

c)实际效果如下,在修改对应客户的沟通明细表信息时,会将最近沟通日期动态显示在客户表列表页面中。
视图业务场景2Demo.gif

上述讲解用到的工程文件见附件。

视图业务场景1.fgcc

527.8 KB, 下载次数: 936

视图业务场景2.fgcc

534.01 KB, 下载次数: 932

2 个回复

倒序浏览
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2018-6-29 09:23:32
推荐
风从北来 发表于 2018-6-29 08:20
如果取某公司名加上日期如何做,分年月往来对账怎么做,有些还有预付款,如何计算剩余的预付款呢?

你可以在求助中心发帖提问,谢谢!
回复 使用道具 举报
风从北来
中级会员   /  发表于:2018-6-29 08:20:22
沙发
如果取某公司名加上日期如何做,分年月往来对账怎么做,有些还有预付款,如何计算剩余的预付款呢?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部