2021-09
2

月初吐槽

By xrspook @ 14:29:22 归类于: 烂日记

又扛过了一个月末的疯狂。每到月末我就会莫名地紧张。月末前的5天,我已经在纠结,虽然那些纠结一点用都没有,因为不到最后一刻,再纠结也做不了任何事。那么到底怎样我才不会纠结呢?或许这根本不会发生。因为我总想在月末的那一天就结束所有,但以现在的业务量看来,这根本不可能。

月末那一天的确可以结束那天的事情,但是跟其它日子一样,只是那一天的,其他的呢?其他的东西我越发觉得是个无底洞。越来越多的乱七八糟,越来越多的核对,实际上无论核对什么,无论需要什么数据,始终是来源于最基础的那些。只要把最基础的那些整理好,其它东西都好说。这种事解决的办法就是做一个系统。从底层开始就把基础数据处理得当。现在我们的确是有系统了,但是有系统跟没系统没什么区别,之所以要做系统是为了把基础数据规范起来,然后进一步让基础数据适应各种的汇总口径,接着我们只需要制定汇总的格式,就可以把所有东西套进去。理论上是这样的,但实际上我们用了好多时间才仅仅保证了基础数据没有一些奇奇怪怪的错误,而那些错误我们根本说不出原因。

一开始,我觉得有了基础,数据汇总就很好实现,在这个方面我们的系统几乎可以这么说,是完全没有作为的。这些基础数据也东一片西一片没有连成一个有关联的网络。这样的话就意味着即便你把数据拿过来,你还得自己去做关联。除了关联以外还有一些必要的信息上面是缺失的,于是又只能手动把数据搞回来以后人肉添加上去。或许你会说,其实这样也不太难,的确如果数据少的话没什么问题,但是我们的数据是我们兄弟单位的起码10倍甚至20倍以上。我们用的是同一套系统,他们觉得没问题,我们可能就问题很大了。反过来说,如果解决了我们这么复杂的问题,他们应该就没什么烦恼了。一开始设计的时候的确是这么期望的,但实际上软件根本无法满足我们的需求,哪怕是最基础的需求。我们经常被那些不稳定的错误搞得瑟瑟发抖。

仅仅是每个月都要人肉输入的账本而已,居然使用了一年,依然不稳定,依然会有各种奇怪的错误。所以他们这软件是怎么开发的呢?又或者说是他们故意这么干,让我们一直持续的给管理费吗?如果是其它公司,而不是一个店大欺客的浪潮,估计我们早就已经用得很爽了。现在完全是恶心。如果完全由我们自己懂行的人去研究去开发,这些问题不会存在。或许会有其他的问题,那是不可避免的,但现在我们觉得很棘手、我们觉得能解决,但是他们又不给我们解决的问题不会存在。

我的月末纠结到底什么时候才是个头呢?我感觉到某一天我们的系统已经很成熟,又或者说我已经处在那种可有可无状态的时候,我的纠结就会告一段落。但是,要等多少时候才会这样呢?我感觉这是一个无底洞。

2021-05
2

劳动着过节

By xrspook @ 18:21:43 归类于: 烂日记

又是过了晚上11点30才结束战斗,这是一个很普通的工作日,但因为发生在五一之前,发生在一个五一长假之前,也发生在一个很重要的月末,所以这对我来说变得很不简单。甚至我觉得大概我12点之前完成不了日结的工作了,但实际上我做到了。从他们发出数据,但我最终也发出数据,不过是花了10多分钟而已,之所以那么快是因为我就只剩下最后一车没处理了,其它的都已经做完,否则光是抄写和敲打二三十行数据已经需要很长时间,就更不用说还得核对。其实跟以前相比,电子数据的获取现在简单了很多,因为我不再需要人肉合并数据,我不需要人肉把某些信息补全,虽然信息还得补一些,但是跟从前比起来,已经轻松了很多。因为现在的数据只从一个系统生成的,所以也就不会有人肉输错,然后我还得核对别人人肉数据这个过程。

日报我的确在凌晨12点之前就搞定了,但是接下来的月报,我花了接近两个小时。省储的部分其实没花多少时间,但是中转的部分光是仓号,光是每个仓号的数据就已经把我折腾得筋疲力尽。中转到底有多少个仓呢?省储不到30万吨,但是都存放在大仓,很多都是1万吨一个的,虽然有些仓没有1万吨那么多,比如说油罐,但是存储占用的仓只有30多个。我们有90个以上的仓是有粮食的,也就是说余下的那些都是中转的。省储的仓变动不大,一个月下来就变那么几个而已,但是中转的仓实在高深莫测层出不断地进出,不断有损耗,不断地变换着客户,变化着品种。对结算的人来说,他们搞清单位就行了,什么品种都是一个价的,但对我来说,同一个单位不同的品种,同一个单位不同的粮食性质全部都得分开。如果所有的这些中转仓都可以看成一个数的话,大概我就只需要在中转那里分出几个品种,小麦,玉米,大麦和高粱,之前还有豌豆,但是豌豆在4月中旬就出完了,但是除了这些品种以外,还有客户这个概念,还有客户的粮食有不同性质这个概念。于是汇总的需求一下子就成倍涨上去。每天都有十几个仓在进出,预计不出具体会是哪些?而且不到结束的那一刻都说不准到底哪些仓还在变动,于是这就很被动,某个客户某种性质某个品种的粮食没结束,对应的东西也都不能结束。对外行人来说,那不过是90多个仓里面的10多个要晚一点有数据,但是对我来说,那不仅仅意味着十几个仓,还意味着它上面需要汇总的很多个节点,全盘都得挂住。有时我会觉得统计上这种东西,其实根本没有必要存在,因为如果有些报表可以支持的话,那些东西更有意义。但也正是因为有一直以来这些死规矩的强迫要求,让我不得不规范,让我意识到别人的随意会造成某些恶果。

五一节的凌晨,我2点多才睡觉,五一节的早上8点多,微信就已经在响个不停,因为单位又开工了。我9点多起来,开始继续干前一个晚上没干完的。干到中午接近12点,我实在忍不住,去吃了一点东西,然后继续填国粮局那些根本没有标准表格的表格。到下午1点30的时候,我才终于把事情都干完了。其实还有一件事没干,就是填那个浪潮的智能化系统,但是那不是我不想干,是那东西根本就没有开放,于是我们也就填不了月报这种东西。上个月的月底不开放这个月的报表,1号也不开放,具体什么时候开放,他们也没有给我们一个确切答复,所以这到底是什么玩意呢?不能提前完成任务,我甚至想按时完成任务也不允许。

我感觉只要我一工作,我就不得不吐槽浪潮。是不是某一天,我会拨打12345投诉浪潮这个鬼东西呢?

2021-04
13

新悟汇总

By xrspook @ 8:36:57 归类于: 烂日记

前段时间我看了几页POWER BI的教程,然后我就重新开始了之前我没有完成的事。因为我知道我肯定是要把那个东西搞定。虽然POWER BI的教程只看了几页,我已经对数据的理解有了一个确切的答案。如果可以的话,如果分析软件足够强大的话,又或者说个人电脑足够厉害,我们完全可以利用最基础的原始数据进行各种蹂躏,这样的话,颗粒度是最小的,也能够组合出最多的信息。但很多时候因为最原始的东西信息量实在太大了,有可能电脑吃不消。也有可能是别人问起来的时候还得各种加工处理,比较麻烦,所以就有了汇总数据这种东西。在汇总数据上面做汇总数据,的确能得到某些东西,但这样的话,显然就限制了想象力。因为一开始某些数据已经被汇总起来了,于是里面的某些细节再也不可能被打散。这样做不得不牺牲一些东西。可能那些东西暂时来说没什么必要,但说不准什么时候就会用到。所以可以的话,我还是比较喜欢对最初级的东西进行处理,而不是在汇总的基础上做汇总。在汇总的基础上做汇总,最终只能得出某些目标结果而不能天马行空,我觉得这样挺无聊的,但很多时候大家为了纯粹完成任务,不得不这么干。我觉得如果非得这么干的话,不如写个VBA脚本,全套自动运行没有烦恼。毕竟如果真这么干的话,做的纯粹是条件反射,循规蹈矩得出那些东西我觉得基本上不怎么需要动脑子。脑子应该用在制定程序上面而不是一次又一次重复某些步骤。在重复步骤这个能力上,人类远远比不上机器。我仅仅看了几页的POWER BI教程,已经给我明确了过去我一直都隐约觉得,但是却一直都没有总结出来的东西。现在我证实了我的直觉是正确的。

POWER BI之所以是POWER BI,因为它们可以处理Excel不能处理的东西,百万级的东西可以轻松搞定。从前那些不得不分几个Excel才能得出来的结果只要从那里导入,根本没有底线这个说法。我还记得新冠疫情某段时间英国说他们的统计数据出现的问题,有些数据被漏报了,原因是信息量超过了Excel最大的行数。这也实在太扯淡了吧!他们怎么会不用数据库呢?数据库的底线好像我还没听说过。如果Excel有底线的话,完全可以把数据分在几个Excel文件里,然后通过POWER BI把数据联合起来。所以他们给出那种完全不能让人接受的答案的时候,我在那里呵呵。那种数据级别居然还在用Excel,而没有没有专业的数据库去处理,这实在太让人震惊了,是因为他们只习惯于用Excel吗?大概是因为改数据的时候比较方便吧。毕竟进入数据库进入服务器的东西是会留痕的,但Excel可以随心所欲颠倒黑白,想怎么写就怎么写。

我不知道现在的世界到底有多么的水深火热,反正今年的股市就一直都很不咋地,我的基金被套住了,一开始只套一点,现在越套越多了,于是我也懒得去看到底是怎样。与其把人生耗费在钱生钱上面,不如干一些实实在在的东西。

2020-11
4

自强不息

By xrspook @ 10:23:24 归类于: 烂日记

到底我自己有多强大?即便我自己也不知道。

在对账这个问题上,貌似我的手上已经有不少的武器。那种东西是我不知道该如何积累回来的,已经成为了我的条件反射。该用什么方式才可以快捷方便而且全面,最好是扩展性也很强的。什么时候应该用搜索或者索引,什么时候应该用数据透视表,什么时候必须得上数据清洗……数据的高级应用,我很多还不知道,但现在,我已经不像从前那样只是蛮力复制粘贴了。

回想起来,10多年前当我第1次接触统计数据的时候,我用的是老员工留下的人工透视法。显然在手抄账的年代,那个东西非常直观。当时,李大姐的那个东西用了好几页纸打印出来,然后粘贴成一大张,我简直震惊了。上面的所有数据都是手填,万一我手贱了呢?每年的日期就那么多了,我们的仓会不断增加,我怎么能保证每个都不错?当时我没有想过可以用什么其他方法可以实现同样的事,我也没想到可以不用那样。怎么才能不人工?

那个时候我还不认识数据透视表。现在我觉得,数据透视表大概是Excel里面性价比最高的东西,那个东西是用来快速得出汇总数据的,但如果原始数据不规范,数据透视表就无从谈起。近些日子我又认识了Power Query。那个东西最擅长的是数据清洗,当然也可以把汇总数据一步到位,但是汇总数据这个活儿,我觉得PQ在处理不规范数据上用处更大,至于汇总数据这种事情,交给数据透视表就挺好,毕竟数据透视表可以随心所欲各种变换,而PQ一定程度上是在做脚本编写。如果只需要某个固定的最终结果,PQ一步到位,但是如果不确定需要的汇总结果,数据透视表更省事。因为数据透视表建立了,低手也能得出结果,但PQ这东西,高手写出来的嵌套公式,低手绝大多数时候都无法参透,即便你耗费很多时间奢望理解。没有一定的基础,PQ就是天书。现在,我仍然需要10年前那种用手工透视的效果,但我用的方法肯定不是人工透视。一年365或366天是固定下来的,但是随着仓数的增多,那将是一个无底洞。万一平房仓需要分堆垛了呢?那更加复杂,别说一张A4纸,即便是10张A4纸拼接起来也未必能表达得了。换句话说,如果10张A4纸拼接起来,我看完前面,再看后面,确定我在填写某一行的时候会不出错吗?

有些人只会延续前人的方法,埋头继续做。一开始的时候,我也是用前人的方法,但做着做着,在不知不觉之中我就改进了,最后得出了一套我自己的方法,我不知道这是不是最优,但我的方法可以让我得心应手,在提升质量的前提下,大大简化之前的操作。当我想让某个固定程序更方便的时候,我会直接写个脚本。现在我用的是VBA,或许以后我会用python。VBA是所有office软件都具备的功能,但python这种东西必须得电脑装软件支持。如果只是一个人使用,完全没问题,但如果数据需要多人协作,显然这样就有点不方便了,因为不同软件的版本可能会有一些意想不到的小插曲。

我在五行之中过日子,但我也必须跳出五行提高境界。

2020-09
19

我喜欢Excel

By xrspook @ 20:53:41 归类于: 烂日记

Excel的一般公式,我比较熟练,一些高级公式的叠加,我需要找教程套用,但起码我知道那是可以做到的。一般的数据透视表,是我一直以来用得相对来说最顺溜的东西,至于高级的数据透视表,也就是超级数据透视表我几乎不了解它的高级用法。在数据的筛选查询方面,之前我用的是公式,而近期,我知道了有Power Query这种神器。在这之前,我已经知道可以SQL语言查询。去年我开始系统学习了Excel VBA。这让我大大提升了某些工作的效率。当然这是非常有针对性的。对我来说,要开发一个VBA脚本需要好些时间,并不是一写就能用的那种类型,期间要经过不少修改。所以其实总的来说,对Excel的了解我还是比较全面的。

也正是因为有这样的经历,所以当我遇到某些综合性的问题的时候,当别人把目光主要集中在某个他们很熟悉的版块的时候,我会凭借我的直觉找问题,而不局限于他们觉得出问题的那个地方。比如在把SQL查询跟VBA结合的时候,别人会把精力放在SQL查询有没有写错上面。SQL有没有写错,其实我根本没看,对我来说那些东西太长了,看不懂,而且那个人写的VBA脚本缩进很有问题,看得我很郁闷,所以我就更加没有心情在那里琢磨。那既然能计算出一个正确答案,说明那个查询语句应该没什么问题。也正是因为写脚本的人的那堆东西格式比较混乱,所以我有理由怀疑那是拼凑起来的脚本,因为居然在脚本的开头连变量的定义都没有。为什么VBA里没有进行规范的变量定义,后面也居然可以照样使用呢?这让我有点惊讶,毕竟这是个VBA,不是python。C语言里,如果不先进性变量定义,后面根本用不了。在我记忆之中,VBA的变量在使用之前是需要先定义的。最终我发现是那个人的脚本之所以出错,是因为某些语句的套用搞错了,为什么他会把那个东西放在里?我觉得大概是因为他没有明白他一开始做的那个with是什么意思。但如果你问我为什么他把那堆东西套在里面会出错,而且是某些地方出错,不是全部出错,我回答不出来。理论上这种错误能在恰当的调试中体现出来,但实际上,VBA的调试句子我还用得不算很熟练。或者你会说,这是因为我的VBA学习还不够系统化,但我觉得我已经用了学习VBA最靠谱的那本书了。可以肯定的是,一些很基础的调试方式我还没掌握,如果我学会了那些东西,我可以大大提升我的调试效率,把错误定位得更精准。VBA脚本这种东西,我觉得最根本的是必须得理解。如果纯粹是各种套用,基础功能的确可以快速实现,但是当遇到的问题比较综合的时候,就会出现一些他们完全料想不到的状况。那种状况有可能与脚本本身的内容无关,与脚本的结构有关。

相对来说,Excel里我用得最弱的是高级公式的套用。如何用一个非常复杂的公式解决一些高端的问题是我一直以来都不大上心,或者说记得不够好的部分。非常复杂的公式,尤其是数组公式,虽然能解决一些神一般的问题,但问题是,其实那些公式需要耗费大量资源,所以在处理大数据的时候,非常有可能出状况。我是一个实用主义者,能做到某个功能,但是做起来的效率不高不好,我为什么要选择那种只是看上去很炫酷的方式呢?情况就像用VBA解决同一问题的时候,如果只是在工作表层面处理和先用内存数组处理再在工作表层面表达,效率千差万别。

Excel对我来说,除了要最终结果,过程也得追求高效和方便。

© 2004 - 2021 我的天 | Theme by xrspook | Power by WordPress