用报表说明PowerBI报表

参考文章:
[ Tools:your Power BI Model – Data – Marc
在以前给客户开发完一套报表后,通常会再来用Excel文件做一个说明文档,包含模型关系,指标维度等信息,不久前突然间想到有没有一种快捷的方式用报表的形式来做这个说明文档呢?毕竟菜,有了想法不是想着怎么创造工具,而是着手搜索看有没有现成的工具,幸运的是还真有工具可以一键生成 。
方法一
这个方法主要是借用一个外部工具 Model,安装完工具打开要生成文档的报表,点击工具就好了 。
第一步
下载相关文件
https://github.com/marclelijveld/External-Tools-Model-Documentation
第二步
把压缩包中的Data-..json 放到指定位置,通常是如下位置
C:\Program Files (x86)\Common Files\microsoft shared\Power BI Desktop\External Tools
第三步
将用到的两个脚本文件放到指定位置,脚本中默认的位置

用报表说明PowerBI报表

文章插图
C:\temp
但可在脚本文件中修改为其他位置,这里因为懒,还是放到了默认位置
第四步
打开我们要生成文档信息的报表文件,点击 Model
大功告成
有些人第4步点击工具可能没有反应,这时需要做一些设置
这时候可能还是无法成功,接着再打开,输入以下命令
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
用报表说明PowerBI报表

文章插图
方法二
这个方法相对于方法一就要麻烦一些,需要手工去导出一些数据,主要用到另外两个扩展工具: 和 Dax , 这两个工具的应该不用过多介绍了,主要需要手动导出4个文件 。
使用 导出相关文件
ExportProperties(Model.AllMeasures.OfType().Concat(Model.AllColumns).Concat(Model.Tables),"Parent, Source Column, ObjectType,Name, Description, Dummy, Expression, FormatString, DisplayFolder, IsHidden, DataType, SourceType").Output();
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img--64)()]
导出另一份文件
ExportProperties(Model.Relationships.OfType(),"Active, FromCardinality,,FromColumn, Name, ToCardinality,ToColumn, CrossFilteringBehavior,,SecurityFilteringBehavior").Output();
再导出另一份文档,这里要如果,如果我们没有设置过相关规划则运行结果为空,这是正常的 。
using TabularEditor.BestPracticeAnalyzer;var bpa = new Analyzer();bpa.SetModel(Model);var sb = new System.Text.StringBuilder();string newline= Environment.NewLine;sb.Append("RuleCategory" +'\t' + "RuleName" + '\t' + "ObjectName"+'\t' + "ObjectType" +'\t' + "RuleSeverity"+'\t' + "HasFixExpression" + newline);foreach(var a in bpa.AnalyzeAll().ToList()){sb.Append(a.Rule.Category + '\t' + a.RuleName + '\t' + a.ObjectName + '\t' + a.ObjectType + '\t' + a.Rule.Severity +'\t' + a.CanFix + newline);}sb.Output();
使用Dax 导出相关文件
select * from $SYSTEM.DISCOVER_CALC_DEPENDENCY
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img--65)()]
至此就需要手动导入这些文件然后设计相关的说明文档了,虽然手动操作增加了许多,但也多了更多的可能性,大家可自由发挥想像