写文章
Hohenheim
2020-02-24 22:28

利用Tableau做工厂数据可视化

本篇优秀文章被收录在“市场调研与开发”专题

关键词:

工作流、数据库、用友U8、ERP、Tableau(可视化)、协同、网站、解决方案...

工具:Navicat、WPDatatable、Tableau、NAS、用友U8、Excel


概述

如何寻找有效的解决方案,优化工作流,将庞大的生产销售数据准确地可视化出来,为决策提供参考呢?

如何把多终端的数据整合到一起并高效作出可视化报表?(推荐使用 Tableau)

实现文中的一些操作需要读者具备一些对数据库的基本理解

最好能把自己的需求在脑海中具象出来,就算很抽象的画出来,也可以帮助理清思路,寻找到木桶短板。整个过程好似在玩儿一个“运营公司模拟游戏”,需要串通不同的部门和数据库,根据需求学习对应的技能,最终实现目标,非常好玩儿!这个过程当然可以外包找人来做,但是不断迭代、否定、更新的过程中的乐趣就无法体验了,那是非常遗憾的。

整个过程中的不断的拆解、重组过程也会在脑中形成新的连接,或许可以为未来解决更复杂的问题做铺垫。

IMG_20200215_145823.jpg

 下方是一些做好数据库前期工作后,几分钟就能根据需求拖拽出来的Tableau页面

不仅可以按照人员、时间、各项参数进行大数据的分析,也可以通过拖拽进行不同维度的细分展示,同时根据同事的需求,组合出符合他们需求的功能页面。

mmexport1582022559561.jpg
mmexport1582022542377.jpg
mmexport1582022519524.jpg
mmexport1582022454172.png
mmexport1581778200136.png
mmexport1581778195874.png
abd9622f639deb825e5649822be4fded.png
697ca28ae50cfc99b1f8669e4646ca4f.jpg
6f557f7e69a95737a1b82a369cd5c5f3.jpg

spacer.gif



正文

背景


  • 公司总人数不到400人,使用用友U8作为ERP系统,使用独立的HR系统,都配有本地服务器。相关人员不懂数据库... 出问题只能找ERP顾问....

  • 通过路由器、网线、交换机的换代,内网数据交换速度从10mb/s 提升到了 100mb/s,加上NAS(详见上篇文章)的配备,相当于本地部署了一个上下载速度高达100mb/s的百度网盘,出差在外访问也有超过10mb/s的速度。同时这也为服务器数据的自动备份提供了硬件基础,同时提高了访问服务器的速度。

  • ERP不是按需定制,很多 input data 过程耗时耗力,同事都不愿意做这种耗时耗力的事情,并且都觉得没有太大效果。输入时有错误,更正不及时,信息不对称,很多数据不准确,ERP沦为鸡肋

  • ERP很多额外的功能需要额外支付高额的费用,但总体上像高射炮打蚊子

  • 产品编码由于受限于ERP系统,编码无法绑定型号,导致业务财务不好对账

  • ERP权限设置繁杂,业务员很多界面无权限进入,出货明细每次要和发货人员对 久而久之大家愈发讨厌ERP “我额外增加了工作时间,不仅没加工资,还没得到我想要的数据”

  • 发货单每次写的客户名字都不同,一个客户最后出来有五六种名字....

  • 外出出差的时候无法查询条码明细

  • 很多数据在不同的地方有不同的版本,每次对账出了错误就要一直翻文件查记录...

  • 老板想看时间跨度较大的数据,每一种视图都需要根据财务那边花很多时间做出来,很多同事excel也不太会用(数据透视图也不会用),很难高效率做出页面精美信息完整的表单

  • 销售和营销人员无从即时得到宏观数据,无法把控大方向的动作



我们的问题其实是


  • ERP是很好的系统,但是我们没有能力高效的运用它得到我们想要的决策参考

  • 我们无法高效的核验数据库准确性,所以在本地多处存放excel表格来“备份”,造成了一个数据多种版本

  • 我们的关键数据没有上云,没有高效的管理、维护机制

  • 我们很多需求的功能需要给ERP公司缴纳巨额的智商税来得到,但其实基础数据都已经在那里,只是受限于“不敢动”和“不会弄”


 

我们要做的


  • 保证erp服务器的数据即时更新,保持准确,定期校验

  • 寻找流程的“木桶短板”,提升短板的高度,以维持高水位

  • 熟悉erp数据库类型和后台字段

  • 根据现有数据与人员需求搭建所需页面

  • 观察、熟悉各部门操作的流程,砍掉不必要环节提高效率

  • 关键数据上云,方便查询


 

那有了目标,我们就依照现有的技能点一步一步探索并实现它。

 

SQL数据库学习

我一开始对数据库的理解仅限于米课学的一点,远不够实现这个目标,所以我在各IT论坛和知乎等平台搜索数据相关的书,准备先把发货的关键数据上云以方便查询。

用友U8的本地服务器用的数据库式 SQL Server,阿里云空间的网站数据库用的是 MySQL,两者的语言非常相似,逻辑相似。

《SQL必知必会》映入眼帘,简洁精悍,在云端建立一个测试用的数据库,然后就着书和B站的内容不断的探索、尝试,基本掌握了这种程序语言。世面也有很多很好的书,但是解决问题其实只需要掌握最核心的几种语言逻辑,所以并不是越多越好... 因为你时间有限...

IMG_20200224_104118.jpg

 准备一台大一些的显示器是很有必要的...  别问我为什么... 

2ae38cc1d4e66740d37c370c6b3f196a.jpg

spacer.gif

网站使用的 MySQL,一般web端使用phpmyadmin来管理,但是相对还是很不方便,所以这时就需要寻找靠谱的数据库管理软件,几番搜索之后 Navicat 映入了我眼帘。

Navicat 可以很方便的连接多种类型的数据库,非常用户友好型的界面,方便的导入导出备份功能和直观的视图建立功能立即让我沦陷,里面大量的内置功能让你省去手写代码的时间,让批量处理数据非常高效。就决定是他了。通过一番摸索,渐渐熟悉了它的常用功能。

image.png
image2.png
image3.png

于是开始折腾相关的数据库

我们之前买过一个防伪系统,web端方便消费者进行防伪查询,也方便我们根据条码进行追溯。

image1.png

 通过Navicat连接到它的后台数据库,你会发现所有的条码、产品、时间等信息都在里面,稍加梳理就可以筛选出有用的数据表,随后整理有效的数据字段。

 

image2.png

需要注意的一点,使用Navicat对数据库进行修改很多时候不能撤销,所以除了谨慎外还需要用一些技巧避免数据丢失。

Navicat 提供数据传输和同步的功能,将有用的数据表定期整体拷贝到新建的数据库中就可以解决上述问题。

image3.png

 

发货同事每天会把日期、条码、经销商、备注、发货单号等信息汇总到excel里放到 NAS 盘中,我只要每天早上通过 Navicat 上传发货信息,云端数据库的发货信息就是实时保持更新的状态。


数据上Web端

为了满足出差能够随时随地查询发货条码和经销商、日期等信息,我需要把上面的数据丢到网页端去。

之前通过建站折腾了官网(kepmaguitar.com)所以对 wordpress 比较熟悉,那么就从它开始。

我开始在百度谷歌寻找可以挂载直连 MySQL 的插件,最后找到了—— WPDataTables

image4.png

在它的官网了解了一下它的功能后,果断入手。当时打折只要100多美金。

 

image5.png

 

它不仅可以直连 MySQL 数据库,还能很方便的创建计算字段、排序、导出、修改等。

只要输入一串 MySQL 代码就可以获得预览。熟悉一下它的功能后,就把防伪数据库的条码字段、产品型号、产品参数字段和发货数据库的日期字段、经销商字段、发货编码字段、条码字段通过条码这个唯一值关联在一起,形成一个复合表。

当然这个页面记得加密码。它支持模糊查询,可以通过多字段属性的筛选,快速定位到想要的数据上,还可以方便的打印和导出,简直不要太好用。


image6.png

 

随后又遇到一个问题,一条线的产品编码需要更新以直观识别产品的各项属性,于是重新设定编码规则,然后丢到页面上面,方便同事查询。

 

image7.png

 

至此,产品条码、经销商、发货日期等信息上云方便查询的功能就实现了。

这个是一个实例页面(没有密码),主要是为了快速熟悉中国省市区... 我地理没学好..

有兴趣的小伙伴可以点击去测试:

https://sales.kepmaguitar.com/%e4%b8%9a%e5%8a%a1%e7%9c%81%e5%b8%82%e5%8c%ba%e5%9f%9f%e6%9f%a5%e8%af%a2/

 


ERP 用友U8

之前一直没接触过这套系统,在服务器上一阵探索,发现它使用 SQL Server,随后摸清了它的ip地址和开放端口,然后我就在里面建立了“超级管理员账号”(在用友的操作界面上是没有这样的账号的...),开放一切权限方便我日后的数据调用。

随后我就需要整理这个庞大erp系统的字段,这里我确实花了很多时间... 从一开始的摸索就放弃了(几千万字段,想摸索出有效的表太难)... 随后我到网上找到了用友U8的数据字典,上面详细的介绍了每个表的每个字段是干嘛用的,然后我就打印出来... 大概200页....

我从同事那里要来了一些数据样本,一边对照打印出来的数据字典,一边测试,最终把有用的表全部筛选了出来。涉及到采购、生产、销售、出库等数据。

这里的数据处理一定要千万小心,因为有些操作不可逆,删了就没了,一定要做好备份工作。可以在 SQL Server 设置定期备份,通过高速的本地网络定期备份到 NAS 中。

image1.png

 

2.jpg

 


Tableau 可视化


image3.png
image4.png

前期的铺垫差不多做好了,接下来就是最重头的Tableau了。大家可以去官网了解一下这个软件是做什么的,然后在做好铺垫后试用一段时间,好用再付费。国内的 BI 类似帆软我也使用过,但是用户体验、稳定性、流畅度都被Tableau秒杀,Tableau是我用过最好用的可视化神器。

这个软件需要一定的学习时间,用以熟悉功能、结构和逻辑。推荐在官网观看教学视频,然后去B站观看相关的视频,这个部分不再赘述。

 

Tableau的强在于它可以方便的连接多数据库并进行聚合与计算,很多连接都是系统自动添加的,非常方便

image5.png

有了SQL的学习基础,脑海中确定结构后,通过连接不同的表来抓取出所需的数据,通过不同种类的连接来关联不同表之间的关键字段。

它与数据库是同步的,每次看之前只要按一下刷新按钮,所有数据立即刷新成最新的,这就满足了协同与即时的需求。

 

image6.png

 

有了数据源头,通过Tableau提供的工具可以快速的根据同事需求搭建不同的页面,以下举几个例子:

 


销售:我要方便的查看发货明细,哪个单号分几批发的,每一批发了多少,何时发

安排

image7.png

有各种参数的筛选,有根据发货单号自动高亮同步选择的功能。 Tableau 无法对数据源进行修改只能查看,这也杜绝了误操作带来数据丢失的风险。

 

销售:我要方便的查询上述功能中的产品条码

安排

image8.png

可以随时查看源数据,而且可以很方便的以图片、excel的形式导出

 


老板:我想看一下各省份的表现

安排

用友里面一开始没有省份这个选项,但是提供了很多自定义字段,于是我通过经销商名称地址,用一个算法把他们自动分类,随后通篇检查了一遍。有时候想实现需求需要进行一些改进,但脑中要非常清楚每个步骤会造成什么结果以及如何实现,最后就可以有这个结果:

image9.png

 


销售:我想看一下某个客户一段时间的进货情况,看一下活跃度

安排

image10.png

甚至可以创建一个计算字段来量化客户的活跃度(暂时还没做,但是脑中有思路,有兴趣的小伙伴可以试试)

 

还有很多,比如依照型号、颜色、人员来查看宏观数据,在文章的前面就有图... 可以返回去瞅一瞅...

当然还有很多没实现的需求,但已经有解决的思路而且正在往前走

 

比如在线库存不准,盘库存的人懒的每天一个个扫,那我就引入 RFID 技术,设立两个门,自动出入库并将数据传到数据库中,然后我通过字段连接将它展现到同事面前,这样既节省了人工盘点的时间又达到了协同、即时的目标。当然 RFID 的引入也可以在生产中使用来实现追溯,每个部门有多少产品流动,积累一些数据也可以对生产工艺进行优化(这个就更有意思了,光是想象一下都已然控制不住自己).... 想象一下一个超级大的“作战中控台”,上面是即时的数据,那种上帝视角掌控全局的感觉..

 

image11.png

 

比如工位算工资,组长打印一个表手写,然后录入员再录入到系统,效率低而且容易错... 可以用表单的形式收集数据,然后一次性上传到数据库中....

 再比如库存盘点... 再比如采购对账...再比如财务对账.....还有产品在生产线的流动...

可以改进优化的地方太多太多...

 


未完待续

这些工具肯定可以达到更高的水准,但受我目前的能力所限,无法全部展示。这个过程非常有趣,但仅仅看游戏攻略是无法体会到亲自通关的快感的,你们要自己玩儿一下!

整个过程描述的跳跃性很强... 但是关键的节点都已列出。在沟通需求的时候,我也注意到,有些不可避免的工作,工作量一定,大家争来争去只是谁要多花时间的问题,“人都是懒惰的”,所以抓住矛盾中心有助于快速解决问题...

希望这整个过程可以对各位有所启发。这个复盘的过程让我感觉自己有点像《忏悔录》中的卢梭... 

我会把后续的内容继续更新在这篇文章中.......


关注作者,看更多TA的好文章 个人展示
Hohenheim 谁在评论里提醒下这位作者,懒得连名片都没填写。
举报
收藏
转发
0/500
添加表情
评论
评论 (29)
最近
最早
3天2夜学会建站

Hohenheim

喜欢吉他 篮球🏀游泳🏊撸铁 拳击🥊宇宙 思考 交流 物理 数学 哲学 Stephen Wolfram 维特根斯坦,最近也喜欢看卡内蒂的《人的疆域》。是一个向死而生内心黑暗期待宿命论被证实的人。

向TA提问
置顶时间 :

设置帖子类型

普通
新闻
活动
修改

圈内转发

0/104

分享至微信

复制链接

举报

请选择举报理由

留联系方式
垃圾广告
人身攻击
侵权抄袭
违法信息
举报

确认要删除自己的评论吗?

取消 确定

确认要删除自己的文章吗?

取消 确定
提问
设置提问积分
当前可用积分:
-
+
20
50
100
200
偷看

积分偷看

10积分
我的积分(可用积分)
确认偷看

问题已关注

答主回复后,系统将通知你

不再提示