Tabular Editor一行代码批量替换度量值名称或表达式中的变量

Tabular Editor一行代码批量替换度量值名称或表达式中的变量

 

工作中经常遇到一种情况,两个或多个PBIX文件,创建的DAX表达式基本相同,只是其中的变量不同。当然这种情况可以使用Tabular Editor批量复制度量值,然后手动修改表达式中的变量名,最后再手动修改度量值名称来解决。如何使用Tabular Editor批量复制度量值,链接如下:?

如果度量值数量较少的情况下,这个也还可以,不费时间,但如果度量值很多,就显得操作重复,效率低下了。

Tabular Editor可以简单快速的解决上述两个问题,分两部分,步骤如下:

第1部分,快速批量替换度量值表达式中的变量:

以将大搜订单和大搜业绩的副本(大搜订单 1,大搜业绩 1)修改为信息流订单和信息流业绩为例,

第一步:

从外部工具选项卡打开Tabular Editor,选中要修改的度量值,如图第一步:

 

第二步:

点击Advance Scripting选项卡,进入编辑栏中,如图第二步:

 

第三步:

将Selected.Measures.ReplaceExpression("大搜","信息流"); 这段代码粘贴到编辑栏中,然后点击绿色倒三角或按F5运行代码,如图第三步:

 

第四步:

代码之后后,会在右下角出现代码执行成功,有2个模型被改变(因为我只选择了两个度量值),且度量值旁边出现一个问号。如图第四步:

 

 

第二部分,更改度量值名称:

第五步:
 

Selected.Measures.Rename("大搜订单 1","信息流订单");

Selected.Measures.Rename("大搜业绩 1","信息流业绩");

这两段代码粘贴到编辑框中,然后点击绿色倒三角或按F5,执行代码,如图第五步:

 

第六步:

查看效果,可以看到度量值名称被修改,且度量值表达式中的变量也已经修改,且页面右下角显示代码执行成功,有2个模型被改变。如图第六步:

 

对于第二部分,也可以使用替换框来替换,选中要替换名称的度量值,右键->Batch Rename或点击F2,第一个空格写查找的文本,第二个空格写要替换的文本,如图替换法二:

 

注意事项:

1.一定要选中要修改的度量值,执行代码时选中要运行的代码。2.对于第一部分,如果需要将模型中所有的度量值表达式中的变量替换,只需要将代码替换为 foreach (var m in Model.AllMeasures)     {        m.Expression =m.Expression.Replace("大搜","信息流");     } 其他步骤不变。

3.代码一定不能忽略大小写,否则会提示错误 4.运行代码后一定要保存到模型中

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瓶子xf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值