2026-01
8

优秀的浪潮

By xrspook @ 8:29:23 归类于: 烂日记

一个公司的开发能力到底糟糕到什么程度才能做到原始数据和实践方法都给他们了,但是三个月时间过去,依然做不出该有的东西呢?一开始他们说做不到,不知道该怎么做,但是所有资源都已经给他们了以后依然做不出来,于是我就明白,为什么他们的系统做得那么糟糕,因为他们根本不知道自己在做什么。

周三下午被叫去开会,理论上是讲解如何进行报表填报。我对那个东西不抱任何幻想,但我也希望不要过于糟糕,实际情况比我想象的还要糟糕。

首先是一个进度数据的获取,他说他们已经能自动生成那些数据,但是我们也要帮他们核对一下,出现什么状况及时跟他们说。哪怕你不说这个我们也一定会核对的,但关键是在告诉我们可以通过哪些点击生成自动的报表之后顺便跟我们说在那套智能化系统里可以在哪些地方查询核对这些数据,接着我震惊了。以他们这种方式核对,首先不全面,其次,相当low。以他们这种方式核对。只能拿着他们自动生成的那个表格找数据,但万一他们那里的数据条目已经缺漏了呢?通过他们所说的那种核对方式根本无法发现。如果他们的测试人员就是用这种方式去检验他们的程序,这种检验方法本来就是错的,所以他们没有发现问题,实际上问题又的确存在是绝对有可能的,而现在他们把这个引以为傲的功能交付给我们,意思就是让我们所有人给他当测试员。测试员是要发工资的,我们是甲方,你让甲方无条件免费给你们做测试,到底他们是怎么想出这么损的招数?实际上如果这个甲方是靠谱的,你实现不了这个功能,我绝对不会给你钱。如果你无法在规定时间之内交出合格的东西,我还要扣你的钱。现在的情况是钱我们已经都给了,扣钱这一条从来没有发生过。这么窝囊的甲方,已经不是第一次,因为我们已经有5年以上的时间对接这个老赖,第一次不知道也就算了,但第二次依然是一头栽进去。

进度表的获取虽然说不如人意,但也只能说瑕疵是难以避免的,但第二个账本的自动生成简直就是悲剧。一开始我说到的那一堆东西就是针对账本自动生成的。前段时间我已经已读不回我的某个同事,因为11月的时候我已经把11月中旬之前一整年的数据都给他了,12月的时候还没到月底,他又找我要12月的数据,然后我就直接不理他。如果你写的脚本能把1-11月的数据全部都生成且核对无误,要不要12月的数据根本不重要。因为12月的数据是水到渠成的事。实际上当我亲自见识那个成品的时候,那跟我三个月前初次见面的时候,几乎没有区别,一坨屎。他们哪来的底气觉得他们的数对上了。摘要不对,业务类型不对,收入支出不对,库存不对,唯一对的就是右下角最后一个库存。那个数据不是根据前面和上面的数据生成的,我猜是不知道从哪里直接读取了,所以唯有那个数据是对的。他们的眼睛长在脑袋上?确定不是长在屁股上?即便是深度近视高度老花的人都能发现那些不一致,但即便这样,他们居然也觉得自己已经开发到位了。

这个如此优秀的公司叫浪潮。

2025-11
22

用这三货做数据查询

By xrspook @ 8:02:29 归类于: 烂日记

不知道从什么时候开始,我就迷上了数据查询。

一开始只是想实现某个功能,后来发现原来实现同样东西,我用不同方法都可以做到。哪个方法更直观简便一些?我感觉Excel VBA的SQL,Power Query以及Python相比,就数据处理的方便性来说Python是碾压的,但我没有发现Python的巨大优势。问题可能在我交给Python处理的数据太少了,跟其它两个相比体现不出Python的高效。在控制Excel单元格格式方面,Python天生不如office自家的VBA。为什么我会把PQ跟VBA跟Python相比呢?是因为从Office 2019开始,PQ就算是内置的一个功能。VBA里面的SQL天生有缺陷,因为跟真正的数据库SQL相比,那就是个阉割版,有些你觉得明明可以实现的东西,在Excel VBA里好像就真没有直接的解决方案,为什么居然会这样呢?

到现在为止,我依然没有发现Excel VBA的SQL有直接的文本拼接功能。其它数据库的SQL里,那就是一个很简单的函数。Excel VBA的SQL在合并其他数据方面没问题,但一旦遇到需要进行文本拼接。我感觉除非在查询结束以后再做一个字符串的字典,否则无解。或许你会说其实我也可以直接在Excel的函数层面做这个拼接,因为用textjoin函数实际上是能实现那个功能的,但关键是如果数据比较多,既然我都在VBA里完成前面的所有,为什么最后的功能又要回归到函数呢?二者的运算速度不是一个层次的。每当我遇到文本拼接,我知道SQL是撞墙的,所以我就直接想到PQ。

PQ可以做数据分组,做文本拼接直接在高级编辑器里修改就能实现,但关键是实际上可以不用PQ,我不想用那个玩意,使用可能会有点慢还行,如果要进入到里面编写代码,那个小窗口字体无法放大,简直要逼死我这种老花。更作死的是,很多时候提醒我错误,但错误根本不发生在提醒的那个地方,不断的嵌套括号、逗号、又或者不小心带入的中文标点符号都会导致错误,找茬的过程让人挺绝望。我觉得,我还是喜欢在VBA里用SQL,其实无非就是判断加循环。在PQ里我总觉得有些很容易就能做到的事情,但是它非得用一些看上去很复杂的函数去实现。比如要根据A字段去决定B字段的数值是正数还是负数,在SQL里,一句很简单的iif就能实现,但在PQ里,你还得新建一个条件列,把条件写进去,接着把原来那个数值列删掉,再把条件列的名称改成数值列。当然你也可以直接使用replacevalue函数,但据说那个东西的执行效率反倒不如新增一列再删除一列。PQ里的函数非常多,嵌套用起来的方法更是让你眼花缭乱,也正是因为那些杂七杂八的东西太多了,反而让我觉得不如SQL简单干脆。让我很绝望的是,Access的SQL可以直接文本拼接,但Excel里的就不行,虽然二者是同一个版本的office。

当我在一个问题上钻研得越深,我就越能理解到高中时候,我的数学老师说学习数学的几个境界:不懂不会,会而不对,对而不全,全而不好。

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