销售需求丨活动月环比(修订)

2024-02-04 02:58

本文主要是介绍销售需求丨活动月环比(修订),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在实际的生活中,我们使用最频繁的一个概念就是环比,日环比、周环比、月环比等等。但是在实际需求中,还有一些特殊的环比需求:

BOSS:那个谁,对,就是你,给我做一个任意月份的环比。

白茶:啥??什么叫任意月份?

BOSS:就你这智商,可别放弃治疗!我要看六月份和九月份的环比,同时能随意切换对比月份的!能不能做!

白茶:…(#¥%&%#@!?)能!



先来看本期的示例文件:

一份产品表。

一份分店表(虽然这期没用上)。

一份销售表。这些就是本期采用的示例源文件。

将其导入到PowerBI中,输入如下代码,生成日期表:

日期表 =
GENERATE (CALENDAR ( MIN ( '销售明细'[销售日期] ), //注意:这里需要替换成你自己的数据MAX ( '销售明细'[销售日期] ) ),//注意:这里需要替换成你自己的数据VAR DA = [Date]VAR YEAR =YEAR ( DA )VAR QUARTER ="季度" & FORMAT ( DA, "Q" )VAR MONTE =FORMAT ( DA, "MM" ) & "月"VAR DAY =DAY ( DA )VAR WEEKID =WEEKDAY ( DA, 2 )RETURNROW ("年度", YEAR,"季度", QUARTER,"月份", MONTE,"日", DAY,"年度季度", YEAR & QUARTER,"年度月份", YEAR & MONTE,"星期", WEEKID)
)

结果如下:

编写基本的代码,求出每日的销售金额:

销售金额 =
SUMX ( '销售明细', '销售明细'[销售数量] * RELATED ( '产品表'[销售价] ) )

结果如下:

到这里,我们的准备工作告一段落。

思考一下代码的编写:

首先呢,需要有一个可以任意切换的维度,可以随意切换月份。

其次,要保证呈现的结果随着维度范围的切换,结果也跟着变化。

添加一个观测的日期维度:

维度表 =
GENERATE (CALENDAR ( MIN ( '销售明细'[销售日期] ), //注意:这里需要替换成你自己的数据MAX ( '销售明细'[销售日期] ) ),//注意:这里需要替换成你自己的数据VAR DA = [Date]VAR YEAR =YEAR ( DA )VAR MONTE =FORMAT ( DA, "MM" ) & "月"RETURNROW ( "年度", YEAR, "月份", MONTE, "年度月份", YEAR & MONTE )
)

这个表不要与其他表建立模型关系,结果如下:

编写如下代码:

本期 =
VAR SQ =MAX ( '维度表'[年度月份] )
VAR DQ =CALCULATE ( MAX ( '维度表'[年度月份] ), '维度表'[年度月份] = SQ, ALLSELECTED ( '维度表' ) )
RETURNCALCULATE ( [销售金额], '日期表'[年度月份] = DQ )

放在矩阵中查看:

可以看得出来,大体上结果是没啥问题的,但是这里不太需要这个小计和总计,因为没有啥意义啊。优化代码如下:

本期 =
VAR SQ =MAX ( '维度表'[年度月份] )
VAR DQ =CALCULATE ( MAX ( '维度表'[年度月份] ), '维度表'[年度月份] = SQ, ALLSELECTED ( '维度表' ) )
RETURNIF (AND ( HASONEFILTER ( '维度表'[年度] ), HASONEFILTER ( '维度表'[月份] ) ),CALCULATE ( [销售金额], '日期表'[年度月份] = DQ ),BLANK ())

结果:

这次去掉总计的显示了,完美!解释一下代码含义:

SQ是利用VAR将最大的[年度月份]定义为一个可以被比较的常量。

DQ外围的CALCULATE是将行上下文转换为筛选上下文;利用MAX匹配上下文计算环境,同时受限于ALLSELECTED函数,计算范围始终都处于切片器的筛选环境下。

IF+AND进行判断去掉总计,CALCULATE计算符合当前筛选上下文的[销售金额]。

那么本期写完了,编写上期代码:

上期 =
VAR SQ =MAX ( '维度表'[年度月份] )
VAR DQ =CALCULATE (MAX ( '维度表'[年度月份] ),FILTER ( ALLSELECTED ( '维度表' ), '维度表'[年度月份] < SQ ))
RETURNIF (AND ( HASONEFILTER ( '维度表'[年度] ), HASONEFILTER ( '维度表'[月份] ) ),CALCULATE ( [销售金额], '日期表'[年度月份] = DQ ),BLANK ())

将结果放在矩阵中对比:

结果显示的没有任何问题,第二个DQ利用CALCULATE限定范围为小于当前筛选[年度月份]的上一期,同时上一期也属于筛选范围。

最后,编写环比代码:

环比 =
DIVIDE ( [本期] - [上期], [上期] )

最终结果如下:

小伙伴们❤GET了么?

白茶会不定期的分享一些函数卡片

(文件在知识星球[PowerBI丨需求圈])

这里是白茶,一个PowerBI的初学者。

下面这个知识星球是针对有实际需求的小伙伴,有需要的请加入下面的知识星球。

这篇关于销售需求丨活动月环比(修订)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/676187

相关文章

十四、我们应当怎样做需求分析:子用例与扩展用例

用例模型作为UML中4+1视图中非常重要的一员,非常集中地体现了面向对象的分析与设计思想。用例模型将现实世界中连续的一个一个业务流程,按照场景划分到了一个一个的用例中。由于场景的出现,使得用例中的业务流程存在着高度的内聚性,从而成为了日后各种对象的雏形。同时,在用例分析中,又将那些存在于各个用例中的,相同或相近的业务操作提取出来,形成一个一个的子用例或扩展用例,又体现了面向对象设计中的复用性。现在

十三、我们应当怎样做需求分析:查询报表分析

在我以往的用例分析中,使用这样格式的用例模式,对于大多数业务操作流程来说是得心应手的,但对于有些功能来说总感觉不对劲。感觉不对劲的,就是那些查询、汇总与报表功能。对于这部分功能,需要我们描述的不是什么操作流程,而更重要的是那些数据项、数据来源、报表格式、数据链接,以及使用者、使用频率的说明。而这些,在以往的用例说明格式中统统都没有,怎么办呢?俗话说“东西是死的人是活的”,把我们的用例格式改改吧。

九、我们应当怎样做需求分析:功能角色分析与用例图

在我们进行一系列需求调研工作的同时,我们的需求分析工作也开始启动了。需求调研与需求分析工作应当是相辅相伴共同进行的。每次参加完需求调研回到公司,我们就应当对需求调研的成果进行一次需求分析。当下一次开始进行需求调研时,我们应当首先将上次需求分析的结果与客户进行确认,同时对需求分析中提出的疑问交给客户予以解答。这就是一个需求捕获->需求整理->需求验证->再需求捕获的过程。  但是,当我们经

八、我们应当怎样做需求调研:需求捕获(下)

前面我们讨论了,需求分析工作是一个迭代的过程:需求捕获->需求整理->需求验证->再需求捕获······需求捕获是这个迭代过程的开始,也是整个需求分析工作中最重要的部分。没有捕获哪来后面的整理与验证工作?但是,非常遗憾,按照我以往的经验,需求捕获是我们最薄弱的环节。前面我提到的许许多多项目开发的问题都可以归结为需求分析的问题,而许许多多需求分析的问题又都可以归结为需求捕获不完整的问题。需求捕获是整

七、我们应当怎样做需求调研:需求捕获(上)

前面我们讨论了,需求分析工作是一个迭代的过程:需求捕获->需求整理->需求验证->再需求捕获······需求捕获是这个迭代过程的开始,也是整个需求分析工作中最重要的部分。没有捕获哪来后面的整理与验证工作?但是,非常遗憾,按照我以往的经验,需求捕获是我们最薄弱的环节。前面我提到的许许多多项目开发的问题都可以归结为需求分析的问题,而许许多多需求分析的问题又都可以归结为需求捕获不完整的问题。需求捕获是整

六、我们应当怎样做需求调研:迭代

前面我一直在反复强调这样一个观点,需求分析不是一蹴而就的,是一个反复迭代的过程。它将从第一次需求分析开始,一直持续到整个项目生命周期。为什么这样说呢?让我们一起来分析分析。  在第一次的需求分析阶段,我们在一段时期内需要与客户进行反复地讨论,这个过程往往是这样一个反复循环的过程:需求捕获->需求整理->需求验证->再需求捕获••••••  需求捕获,就是我们与客户在一起开研讨会

五、我们应当怎样做需求调研:需求研讨

前面我们探讨了业务研讨会应当怎样组织,下面我们再具体讨论一下我们应当怎样与客户讨论业务需求。如果说组织业务研讨会是项目经理的功底,那么讨论业务需求就是需求分析人员的功底。  以往我们常常认为,需求分析是一件最简单的事情。客户说他们需要做一个什么软件,有些什么功能,我们照着做就可以了,所谓的需求分析员就是需求的记录员。我要说,这是一个极大的错误,许多失败的软件项目,或者说软件项目中的需求问

知名AIGC人工智能专家培训讲师唐兴通谈AI大模型数字化转型数字新媒体营销与数字化销售

在过去的二十年里,中国企业在数字营销领域经历了一场惊心动魄的变革。从最初的懵懂无知到如今的游刃有余,这一路走来,既有模仿学习的艰辛,也有创新突破的喜悦。然而,站在人工智能时代的门槛上,我们不禁要问:下一个十年,中国企业将如何在数字营销的浪潮中乘风破浪? 一、从跟风到精通:中国数字营销的进化史 回顾过去,中国企业在数字营销领域的发展可谓是一部"跟风学习"的编年史。从最初的搜索引擎营销(SEM),

真实案例分享:零售企业如何避免销售数据的无效分析?

在零售业务的数据分析中,无效分析不仅浪费时间和资源,还可能导致错误的决策。为了避免这种情况,企业必须采取策略来确保他们的数据分析工作能够产生实际的商业价值。本文将通过行业内真实的案例,探讨零售企业如何通过精心设计的数据策略和分析方法,借助商业智能BI工具,避免销售数据的无效分析,确保每一次分析都能为业务增长提供有力的支持。 文章中提到的BI数据分析工具分享给大家—— https://s.fan

【最新华为OD机试E卷-支持在线评测】机器人活动区域(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-E/D卷的三语言AC题解 💻 ACM金牌🏅️团队| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试D卷目录,全、新、准,题目覆盖率达 95% 以上,支持题目在线评测,专栏文章质量平均 94 分 最新华为OD机试目录: https://blog.