Tabular editor Script

PowerBI
Tabular editor
Tabular editor Script 汇总
作者

不止BI

发布于

2024年3月4日

/* 为当前选中的度量值添加前缀 */
foreach (var m in Selected.Measures)
    {
        m.Name = "前缀名称写这里" + m.Name;
    }
FormatDax(Model.AllMeasures);
var ReplacementPair  = new string[,] { {"原始文本1","目标文本1"},
                                           {"原始文本2","目标文本2"},
                                           {"原始文本3","目标文本3"} };
foreach (var m in Selected.Measures)
    {
        for (int i=0; i < ReplacementPair.GetLength(0);)
        {
            m.Name = m.Name.Replace(ReplacementPair[i,0],ReplacementPair[i,1]);
            i++;
        }
    }
var ReplacementPair  = new string[,] { {"原始文本1","目标文本1"},
                                           {"原始文本2","目标文本2"},
                                           {"原始文本3","目标文本3"} };
foreach (var m in Selected.Measures)
    {
        for (int i=0; i < ReplacementPair.GetLength(0);)
        {
            m.Expression = m.Expression.Replace(ReplacementPair[i,0],ReplacementPair[i,1]);
            i++;
        }
    }
// 将时间从秒修改为HH:MM:SS格式
foreach(var c in Selected.Measures)
{
var newMeasure = c.Table.AddMeasure(

  "HMS_" + c.Name,

  "VAR __second =" + c.DaxObjectFullName  + 
  "VAR __hour = FLOOR ( DIVIDE ( __second, 3600 ), 1 )VAR __second =FLOOR ( DIVIDE ( MOD ( __second, 3600 ), 60 ), 1 )VAR __minute =    FLOOR ( MOD ( __second, 60 ), 1 )VAR __result =    FORMAT ( __hour, \"00\" ) & \":\"        & FORMAT ( __second, \"00\" ) & \":\"        & FORMAT ( __minute, \"00\" )RETURN    IF ( ISBLANK ( __second ), BLANK (), __result )"
  );
  newMeasure.DisplayFolder = "_HMS";  
}
回到顶部