2020年7月第三周知识分享汇总

  • DQ的项目经验分享
    • 项目过程的介绍
    • 项目中遇到的问题
    • 项目中的知识分享
    • 项目中的工具分享
  • HXD的数据仓库知识分享
    • 数据仓库
    • ETL的概念
    • kettle的案例
    • 课程质量测试
  • CPD的Kettle 案例分享
    • 什么是ETL
    • ETL的目的
    • ETL实现方式
    • Kettle案例
  • GMR的FR知识分享
    • 帆软设计器
    • 服务器(决策平台)
    • 其他JavaScript案例
    • 外置图片插件
  • GZZ的FR知识分享
    • FR设计器
    • 项目案例分享
  • WDD的技术分享--单点登陆
  • LL的FR知识分享
    • FR功能讲解
    • 项目经验分享
  • ZT的项目经验分享
    • 需求场景描述
    • 分析设计过程
      • 需求盘点和主要解决方案规划
      • 设计解决方案
    • 落地设计
    • 结束语
  • 本周培训会议总结

本周开始的知识分享会议已经进行了一轮,在这一轮知识分享会议中,各位都通过自身的实践总结了一大批的经验,在这里总结以下自己的收获。

涉及具体姓名均以代号表示,涉及具体项目不予展示。

DQ的项目经验分享

通过项目完整实施过程中遇到的真实案例讲解了如何进行项目管理。

项目过程的介绍

主要内容有
启动:项目开始
计划:项目的各个节点任务
执行:项目的执行过程
控制:对执行过程进行监督
收尾:交付成果解散项目组

项目中遇到的问题

为了使项目更好的控制,那么需要注意以下方面
1.项目启动会是为了让项目组成员了解自己在项目中的职责,如果未进行的话会导致项目进度很难推进。
2.对于之前的项目中的可以提前判断的内容可以写到工作规范里面去。对于可能会导致后期大量的重复工作的内容,例如:字体样式未统一出现的页面阅读不美观导致的重复劳动;对于可能会影响二期工程的事情,例如:文档的不规范,开发过程不规范;
3.为了增加项目组成员的责任意识,对于会产生工作量新增的事情都需要正式通过邮件告知;
4.对于核心的边界文档需要由用户进行签字确认;
5.对于需要交付的成果需要进行验证测试。

项目中的知识分享

1.服务器数据集,将通用、常用的形态或数据字典,放到服务器数据集,减少重复使用模板数据集,如需调整,修改服务器数据集即可
2.通用熟悉规范,字体样式
3.备份管理
4.多级上报案例分享

项目中的工具分享

1.资料共享使用了腾讯文档,客户提供的网盘
2.会议记录使用了windows 的OneNote

HXD的数据仓库知识分享

主要讲解了数据仓库的基本概念与ETL的概念,最后分享了一个kettle 的使用案例

数据仓库

  1. 数据仓库的基本概念
  2. 数据仓库的特点
  3. 数据仓库的分层结构
  4. 数据仓库有哪些优势

ETL的概念

  1. 什么是ETL
  2. ETL的作用
  3. 关于数据抽取
  4. 数据转换和加工
  5. 常见的数据质量问题
  6. 主流ETL工具
  7. ETL工具如何选择

kettle的案例

通过httpClient 调用外部百度地图API实现将文本地址转换未经纬度信息,从而实现数据满足地图报表展示。

课程质量测试

根据课程内容编制相关测试题目,用以检测大家的学习程度。

CPD的Kettle 案例分享

什么是ETL

Extract-Transform-Load,将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。
ETL中花费时间最长的是Transform,也就是转化、清洗的过程。

ETL的目的

使用ETL的目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。

ETL实现方式

  1. 借助ETL工具实现
  2. 使用SQL实现
  3. 工具与SQL相结合

Kettle案例

  1. 使用Kettle对数据进行抽取转换
  2. kettle实现增量更新(较为复杂)

GMR的FR知识分享


主要讲解了FR设计器的一些使用技巧,服务器(决策平台)的使用技巧。

帆软设计器

  1. 跨Sheet页取数
  2. 跑马灯实现自动轮播报表展示数据
  3. 点击弹出iframe窗口展示报表
  4. 更改控件底色
  5. 内置数据集复制,通过打开报表文件复制
  6. 通过超级链接跳转访问Sheet页内报表

服务器(决策平台)

通过图片名称更改标签页logo

其他JavaScript案例

不点击查询,JS实现自动查询
给下拉框控件和日期控件等,添加编辑后事件:_g().parameterCommit();
参数面板JS:
JS清空(重置)条件:https://help.finereport.com/doc-view-1196.html
多参数不能同时为空:http://bbs.fanruan.com/wenda/question1/75269.html
填报相关JS:
使用填报页面控件查询:https://help.finereport.com/doc-view-1828
删除行按钮只有一行时不能删除: https://help.finereport.com/doc-view-2150.html
删除行前提示确认删除:https://help.finereport.com/doc-view-627
填报成功后关闭窗口:https://help.finereport.com/doc-view-618.html
参数界面JS:
单选按钮必须选一个:https://help.finereport.com/doc-view-2027

外置图片插件

外置图片插件主要解决设计过程中资源过大导致的设计器崩溃问题,衍生知识点:在进行预览前如果不进行保存的话也容易导致FR设计器崩溃。

GZZ的FR知识分享

FR设计器

介绍了FR设计器的模块功能

项目案例分享

  1. 使用多个统计图实现复杂功能

  2. 使用图片来最为折现标记点

  3. 通过颜色来实现瀑布图

  4. 通过js遍历加
    实现文字竖向排列

  5. 通过折线图对每个柱状图增加汇总数字

WDD的技术分享–单点登陆

通过FR内置接口实现单点登陆。

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ page import="java.util.Map" %>
<%@ page import="java.net.*" %>
<%@ page import="java.io.*" %>
<%@ pageimport="com.fr.data.NetworkHelper, com.fr.decision.authority.data.User,com.fr.decision.mobile.terminal.TerminalHandler,com.fr.decision.webservice.exception.user.UserNotExistException,
com.fr.decision.webservice.utils.DecisionServiceConstants,com.fr.decision.webservice.v10.login.LoginService,com.fr.decision.webservice.v10.login.TokenResource,com.fr.decision.webservice.v10.user.UserService,
com.fr.general.ComparatorUtils,com.fr.log.FineLoggerFactory,com.fr.security.JwtUtils,javax.servlet.ServletException,javax.servlet.ServletRequest,javax.servlet.ServletResponse,javax.servlet.http.HttpServletRequest,
javax.servlet.http.HttpServletResponse,java.io.IOException"%><%String login = request.getParameter("login");//登陆账号if(!"".equals(login)){//适用于FR 10.0try {String token = LoginService.getInstance().login(request, response, login);  if (token == null) {//改成自己的登录界面response.sendRedirect("http://localhost:8080/webroot/decision/url/mobile");return;}session.setAttribute(DecisionServiceConstants.FINE_AUTH_TOKEN_NAME, token);response.sendRedirect("http://localhost:8080/webroot/decision/url/mobile");return;} catch (Exception e) {e.printStackTrace();}}%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body >
</body></html>

LL的FR知识分享

FR功能讲解

  1. EXCEL导入清空
  2. 批量删除
  3. 删除的时候弹窗提示
  4. 邮箱配置定时调度
  5. 定时刷新网页框架
  6. 单元格横向滚动

项目经验分享

  1. 填报完成刷新页面或者刷新数据不刷新参数面板
  2. sql书写规范
  3. 不要直接使用隐藏单元格功能,尽量用条件属性进行隐藏单元格

ZT的项目经验分享


讲述了从需求分析到设计完成组织结构树状报表的过程

需求场景描述

在实际项目过程中,有一个项目需求场景如下:
客户有一系列大屏展示需求,但是数据是通过填报形式录入,需要使用excel批量导入功能,但是线下收集的excel数据,是由不同业务部门填写,其中,组织信息的填写各不相同,且信息处多次强调后,下次提交的数据依然存在命名规则不一致情况,所以希望通过系统来控制标准,来统一数据录入时,关键的组织数据的规范性;而且组织数据在年度末时,可能会有架构调整,希望历史数据汇总显示可以根据新架构显示,还需要一个可以所见即所得的组织编辑维护界面;
异常数据如下,不同部门对同一公司的数据命名各不相同,如不能统一维度,会给后续分析带来很大困扰

分析设计过程

需求盘点和主要解决方案规划

通过分析客户需求痛点,主要总结以下几点待解决问题:
1、填报导入时,如果通过系统手段,规范不同业务部门填报数据?
2、组织更新时,历史数据如何实现动态切换?
3、组织更新时,需要所见即所得的编辑页面?

系统中创建标准的组织数据,以此为基准,在填报导入时,判定导入组织数据是否符合规范,对不符合规范的部门,限制导入提交,并提醒异常数据位置!

业务部门excel导入数据,维护的组织信息肯定是中文名称,所以在维护组织信息时,需要考虑增加主键信息,填报时,将每条组织数据对应的组织主外键录入数据库,数据汇总过滤时,按组织表外键分类汇总;

参考常规业务系统的组织维护界面,设计树形组织报表,展示组织数据,并开发新建组织表和维护组织表,与树形表关联,实现组织数据的维护操作。

设计解决方案

作为组织数据的验证的基准和填报时需要转换的外键,第一步需要考虑设计的就是组织数据的设计;

创建数据库表(可以跟客户确认或者包含核心需要内容即可)
包含主键、外键、部门名称、组织类型、上级部门、主要负责人、组织级别、排序号等信息即可;
设计树形展示报表和组织新增表、组织编辑
树形表主要展示组织信息,添加超链,链接新增表和编辑表;
填报导入添加状态判定和提交校验
判断状态用来判定导入数据是否符合标准,且将符合标准的组织数据,转换出组织外键,提交校验用来限制数据存在异常的用户提交;

落地设计

树形报表设计

1、增加树节点按钮;
2、增加单元格数据过滤并去除父格自动过滤;
3、手动设置左父格;
4、确认集团层级显示位置;
5、添加超链按钮

组织新增表
报表为常规填报报表开发,注意交互和用户体验即可:
不过添加了三个功能点;
当前填报层级说明
自定义字母+自动递增组织序号+自动递增层级
父窗口刷新

组织编辑表
组织编辑表主要实现数据更新操作,需要与新增表做
以下区分
编辑组织为树形表中的,当前组织,参数为组织编号
编号和id支持更新;
更新上级部门会导致组织架构的变化,为防止失误操作

批量导入控制
根据导入数据组织名称,查询组织表code,名称符合
规范,返回code,否则为空;
添加判定条件,实现定点提示功能

结束语

客户需求中,提取关键问题,并思考解决方案
树形报表开发流程和配置项;
常规填报报表开发流程及悬浮提示功能配置;
灵活使用SQL函数,实现自定义编号功能
数据校验定点提示方法;
常用的子填报父刷新功能使用;

本周培训会议总结

本周知识分享会议需要重点学习的内容:项目管理过程中的细节,多级上报的实现,Kettle增量更新的实现,树形报表的实现。

本周知识分享会议总结相关推荐

  1. 关于软件公司如何进行知识分享的一些讨论

    问题搜集 你认为知识分享对你的工作是否带来了帮助?如果是,麻烦列举一些具体的点.如果觉得没有帮助,麻烦列举一些原因,比如是内容太浅,还是讲的东西和自己工作关联不大,等等. 你希望将来继续按照现在这个形 ...

  2. 重磅!AI与区块链技术知识分享交流会!特邀贾志刚老师、双一流211高校研究生!

    重磅 AI与区块链技术第一次知识交流分享会即将拉开帷幕! ​本交流会旨在分享交流人工智能.区块链相关内容(包括基础知识分享.前沿论文分享.具体项目实战),提供一个相同领域学者.工作人员在线交流机会. ...

  3. 基于JAVA法律知识分享平台计算机毕业设计源码+系统+数据库+lw文档+部署

    基于JAVA法律知识分享平台计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA法律知识分享平台计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...

  4. 创立创造创建的区别_【干货|知识分享】Solidworks与Rhino有什么区别呢?

    ## [干货|知识分享]Solidworks与Rhino有什么区别呢? 三维建模软件有很多,其中常用.功能相似的就是Solidworks和Rhino,这两个对于大学生们最为熟悉的.最开始接触的三维建 ...

  5. 关于域用户的离线缓存登录知识分享

    关于域用户的离线缓存登录知识分享 微软设计缓存登录的目的? 缓存登录主要是为了解决当公司域控制器发生故障联系不上DC或用户拿笔记本电脑回家不拔×××的情况下,依然能够登录到系统,进行办公.如果用户登录 ...

  6. Osmocom-BB 相关资源、知识分享

    Osmocom-BB 相关资源.知识分享 1.在layer1层添加了解析sniffer的代码 参考http://git.osmocom.org/osmocom-bb/log/?h=luca/gsmma ...

  7. vba 跳到下一个循环_VBA野知识分享:从一个数组中取部分值生成新数组,不使用循环的思路...

    从一个数组中取部分值生成新数组,要实现此需求通常都是采用循环的方法来完成,那有没有更简易的思路呢? 借用jscript可以实现,直接取值,不用循环.例如从100000万中元素是取8000个值出来生成新 ...

  8. ddns 被解析为127.0.0.1_我为北京冬奥加油,2020.2.1-2.10冬奥知识分享

    2020.02.01 中国冬梦,世界飞跃,我是果雪儿小小志愿者仇懿琛,我为北京冬奥加油,今天冬奥知识分享--冬奥会历史上那些非凡而又卓越的运动员(十一)明星运动员:米特迈尔 第十二届冬季奥运会 时间: ...

  9. 大数据包围你我,技术人如何走知识分享之路

    本期推荐:[云享人物·大咖面对面]华为云首席产品官方国伟独家专访:当下云发展有待突破的并不是技术问题:现在为什么是#华为云# 的最佳时机:以不变应万变,什么是云产品规划的三个关键出发点:生态对于云的意 ...

最新文章

  1. 学习sql注入:猜测数据库_对于SQL的热爱:为什么要学习它以及它将如何帮助您...
  2. c是编译语言吗,将语言编译为C是一个好主意吗?
  3. dubbo-go 白话文 | 从零搭建 dubbogo 和 dubbo 的简单用例
  4. 6.2、Android Studio内存
  5. 最详细的java泛型详解
  6. JavaSE——面向对象基础(思想、类与对象、构造方法、重载、匿名对象)
  7. 【HTML5】HTML5事件属性总结
  8. c语言技术课第一次作业
  9. 功能表单之智能选择字段类型的使用——JEPLUS软件快速开发平台
  10. oracle索引实现方式,Oracle中的索引原理(1)
  11. 【跨境电商学习指南】
  12. 服务器带宽打开网页很慢,移动宽带打开网页慢?两招治本移动宽带打开网页速度慢的解决方法...
  13. Java Socket 网络编程
  14. 详解:分治算法【Java实现】——汉诺塔问题
  15. 计算机科学家与科学之路----2000年图灵奖得主美籍华人姚期智院士特邀报告
  16. matlab表示颜色的词语三个字,三个字的形容颜色的词语
  17. 计算机显示在手机桌面上怎么解除,桌面布局已锁定怎么解除 桌面布局已锁定解除办法...
  18. spring boot 采坑
  19. 网络游戏外挂编写原理
  20. 原生 js 实现无缝滚动轮播

热门文章

  1. 推荐五种最给力的外汇工具
  2. 谈一谈|创新创业训练营结业思考分享
  3. PTE岗位实习期第二次考核
  4. item_get - 获得1688商品详情
  5. arcgis里面如何删除标记_ArcGIS制图技巧(中篇)——标注
  6. OutOfMemoryError:PermGen space
  7. 《荒野求生》告诉我们的
  8. linux启动logo修改 bootlogo
  9. iPhone设置视图背景图片的方法
  10. 节能燃气蒸汽发生器点火失败,异常熄火故障原因