2022-10
11

填充单价

By xrspook @ 9:49:59 归类于: 烂日记

工作出现了些许空余的时光,于是我赶紧继续开始看我的《DAX权威指南》。筛选上下文、行上下文这种东西实在让人非常抓狂。有些时候我是完全理解那种关系到底是什么,但实际上当用起来的时候又好像各处碰钉子。

一步步的学习DAX这没有任何问题,但学着学着自然而然我就会往自己的问题上面靠,于是心就飞走了,然后虽然已经学了100多页,但是感觉我还是找不到思路。我不知道如何在Power Pivot里面把两个日期扩充为一个日期列表。于是我就折腾了一番,这个在Power Query里实现我100%肯定是轻而易举就能做到的。以前我好像做过。支持我使用的方法是修改人家的高级例子,从前只是一步一步按部就班来。以日期扩充之后的表为基础查询模型里的计算库存不是不可以,但是翻来覆去非常耗时间。从前在PQ里计算库存,在情况不那么复杂的情况下弯曲折叠各种填充已经很耗费人力物力,而这种库存的计算实际上在DAX里面是秒杀完成的。这也就是为什么当年我放弃了继续走PQ这条路计算库存以及库存费用。在PP里,计算库存其实我早就已经搞出来了,虽然实际上那个筛选条件我至今都没搞懂。现在的问题是那个阶梯费用表达把我难住了。从简单的几个时间区间生成一堆连续日期单价对PQ来说实在太简单了,但为什么这种事情用DAX去表达却那么的难呢?所以实际上我觉得这个问题跟库存的计算一样,我还没想到那个方法该如何表达,也就是说理论上要做到这个也是很容易的。

如果我的单价用PQ实现,我的库存用PP去实现,最终我只需要很笨地把两边的数复制一下,然后在另外一个地方做一个很弱智的合并,显然这样也能曲线救国,以我现在的知识储备可以这般做到,但显然这不是我想要的效果。这个问题在近期我又开始纠结之前,已经困扰了我一年有多。

虽然不知道最后的那个灵感什么时候才会到来?但我知道那一定会到的。

就在这篇东西口述出来后,那个晚上我什么都没干,没有运动,也没做其它别的,一心就扑在PP里实现单价这个问题上。接近晚上10点,这个问题好像终于有了破解的苗头。用的是LASTNONBLANK函数,网上教程用的是LASTNONBLANKVALUE,但PP里没有这个东西,为什么呢?Power BI里面有但Excel里没有???

LASTNONBLANK ( <列名>, <表达式> ):为表的每行计值表达式,返回结果不为空的最后一个列值。

LASTNONBLANKVALUE ( <列名>, <表达式> ):为表的每行计值表达式,返回结果不为空的最后一个列值所对应的表达式的值。虽然被归为迭代函数,但与 LASTNONBLANK 不同的是,LASTNONBLANKVALUE 的<表达式>参数在筛选上下文中计值,这是由于存在一个隐式的 CALCULATE 将行上下文进行了转换。

https://www.powerbigeek.com/dax-functions-lastnonblank/?f=1
https://www.powerbigeek.com/dax-functions-lastnonblankvalue/?f=1

以我现在的水平我是搞不懂他俩到底什么情况,但Excel里没有我也没办法,把LASTNONBLANKVALUE的东西转化为适用于LASTNONBLANK,这又折腾了好些时间。其实这个东西说白了就是为了向下填充,如果这个地方空白,就用这一列对上一个有数的那个东西向下填充。当然,其实这个东西一开始的意图不是填充,是为了找到最后一条记录,这种东西要准确,通常默认跟时间关联。

虽然道路是曲折的,但我总算在单价这个问题上发现了我觉得应该很简单的实现方式。

2012-05
22

攻克任意图片填充到文字

By xrspook @ 19:25:14 归类于: 烂日记

PS不是我擅长的,有很多东西我都不懂,很多东西我只能叹为观止。但昨晚开始,我有个强烈的愿望,在今天内,我要做出点什么。还记得差不多10年前,Jorge Enrique Abello的粉丝曾经组织在他生日前以他的名义向UNICEF捐款,虽然数量不大,比如说很多人都是5美金以下的,但这是一份心意。作为一个粉,我们一直以来都在索取,希望有好比赛,希望有好的mic技表演,希望场外的活动更多,希望能获得签名,希望能合影,希望能来个拥抱…… 有没有想过付出呢?你或许会说,把那么多的时间耗在粉一个人身上,这已经是很大的付出了。REALLY? REALLY? REALLY? 你真的这么认为?人家没有强迫你这么干哦!

生日这玩意,过去我一直是无动于衷的,但今年,我觉得我必须做点什么。因为我有了adelrio.diandian.com,我能不做点什么吗?

虽然我的PS真的超级烂啦。

大概是半年多前我看到了这张图片。

过目不忘,我太喜欢了!我非常希望做出这个效果。

折腾了半个上午,误打误撞终于成功了。有图有真相。

其实,这个挺简单的。首先用PS打开图片,新建一个图层,填充为黑色,然后用文字工具在黑色的图层上写满你要的文字,我用的of course是“DESTINY”了,接着呢,复制背景(也就是原图片),把这个副本置于文字图层之上,选择这个副本并右键选择“创建剪贴蒙版”,好了,已经好了!效果就是在文字上做图案填充。而这个图片可以是任意的,并不局限于PS内置的各个简单图案。

明白这个道理后一切都好办了。

下午我试了很多次,如果用这种渐变式的文字,非常难看清的说,所以,我干脆不用蒙版了,用剪裁,从文字片中剪裁出各个图案,然后配以一定的背景,再加上一些必要的文字。OK了!这就大功告成了。虽然有点单调有点丑陋,但我已经尽力了。我已经花了一整个下午去折腾这个了……

大图要等到Alberto Del Rio生日那天再出,但小图预览也是必须的。

特色,特色何在?看图,你们懂的。

我总在我觉得无计可施的时候去问人,但每当我问人过后,绝大多数情况下对方还没给出解决办法我自己就KO掉问题了。真的很奇怪,因为往往在问之前我已经花了至少1个小时,但问人后的大概15分钟内我就会开窍,邪门,有木有?

放下心头大石,我算是做了点什么了,明天可以安心去该去的地方,然后后天潇洒死一回。

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