Excel Power Query 将文本字段截断为 1024 个字符

问题描述 投票:0回答:2

我正在 Excel 中通过 Power Query 访问 SSAS DMV:

let
    Source = AnalysisServices.Database(TabularServerName, TabularDBName, 
             [Query="select * from $SYSTEM.TMSCHEMA_EXPRESSIONS"])
in
    Source

这在 Power BI 中效果很好,但在 Excel 中,“表达式”列的最大长度限制为 1024 个字符。如何在 Excel 中使用 Power Query 来提供完整的值?我的最大值约为 15000 个字符,因此仍在我可以找到的 Power Query 规定的限制内。

如果我建立一个表,后面有连接和查询,Excel可以拉入整个表达式列,但缺点是服务器和数据库无法参数化,必须在连接中手动更改。另外,我不记得如何手动执行此操作,因此我总是必须从 DAX Studio 访问 DMV 并导出到 Excel 来进行设置!

更新

我对这个专栏做了一些重大的改造。我解析出一个值,用它来将文件与其自身合并,并添加一个列,然后对其进行一系列转换,然后用它来替换原始问题列中的文本。其中的某些东西拉动了整个价值。我尝试只做其中的一小部分,例如添加引用问题列的列,或者在问题列中进行替换,但这些都不起作用。

所以,不,不容易复制或找出哪个步骤修复了它,但就我的目的而言,我现在有了我需要的东西。

excel powerquery ssas-tabular dmv
2个回答
2
投票

我认为这与您在 Excel 中加载的列的类型有关。我遇到了同样的问题并阅读了您的答案(带有

Table.ReplaceValue()
)。 您的解决方案隐藏了初始点:您为
Table.ReplaceValue()
共享的表达式中使用的函数是
Replacer.ReplaceText()
,它具有转换
Any
类型字段的额外特异性 输入
Text
。 我尝试将在 Excel 中加载时被截断的字段类型从类型
Any
更改为类型
Text
。结果:完整的值随后加载到我的工作表中。


-1
投票

我遇到了类似的问题:

我在 power query 中加载了一个包含大文本(每个单元格大约 2500 个字符)的 Excel 表格,进行了一些转换,并希望将结果加载到另一张工作表中。

我的所有文本单元格都被截断为 1024 个字符。 我进行了一些调试,发现如果我在导入日期弹出窗口中取消勾选“将此数据添加到数据模型”,问题就会消失。

取消勾选后,我的单元格不再被截断,并包含由电源查询生成的完整文本。

希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.