人!
我尝试在Power Query中创建我的自定义函数,并且遇到了非常意外且完全不清楚的错误。
功能很简单 - 它从学生词典中检索学生姓名(从学生词典表中调用),然后检索发票表并计算向这个特定学生发出了多少次邀请。
该函数的代码如下:
(FirstName as text) =>
let
Source = XeroInvoices,
#"Filtered Rows" = Table.SelectRows(Source, each Text.Contains([XeroContacts.Name], FirstName) ),
#"Removed Other Columns" = Table.SelectColumns(#"Filtered Rows",{"XeroContacts.Name"}),
#"Grouped Rows" = Table.Group(#"Removed Other Columns", {"XeroContacts.Name"}, {{"Result", each Table.RowCount(_), type number}}),
Result = Record.Field(#"Grouped Rows", {0}, "Result")
in
Result
然而,当我用一个参数调用函数时,它表示传递了 三个 参数,并且该函数需要 两个 :
http://shot.qip.ru/00Qqzx-4Vmk2GJfF/
请问你可以建议这个问题可能出现什么问题?
提前致谢。
答案 0 :(得分:3)
导致错误消息的函数可能是上述函数的最后一步:
结果= Record.Field(#" Grouped Rows",{0},"结果")
它只需要2个参数:记录和要捕获的字段的名称。所以尝试将其更改为:
结果= Record.Field(#" Grouped Rows" {0}," Result")
查找有关如何轻松调试M-functions here的提示。
答案 1 :(得分:0)
你可以采用更简单的方式:
(FirstName as text) =>
let
Source = XeroInvoices,
FilteredTable = Table.SelectRows(Source, each Text.Contains([XeroContacts.Name], FirstName) ),
Result = List.Count(FilteredTable[XeroContacts.Name])
in
Result