我已经阅读了Power Query的"M"语言规范,其中提到了开放式记录类型。我的理解是开放类型允许添加其他字段,但我对此还没有具体的了解。
声明普通(闭合)记录的方式很简单。
所以,这个概念似乎只涉及自定义记录类型,而不是一般的记录,但我不知道该怎么做。我尝试了这个:
希望函数只接受具有“名称”和“年龄”字段以及可选其他字段的记录,但实际并非如此。尝试使用“as”关键字可能不起作用,但即使这样也不行。
声明普通(闭合)记录的方式很简单。
myRecord = [name = "MyName", Age = 30]
从语言规范(5.4:记录类型)中:
myRecordType1 = type [Name = text, Age = number] // Closed Record _type_
myRecordType2 = type [Name = text, Age = number, ...] // Open Record _type_
然而,
myRecord = [Name = "MyName", Age = 30, ...] // Not valid code
所以,这个概念似乎只涉及自定义记录类型,而不是一般的记录,但我不知道该怎么做。我尝试了这个:
testFunc = (inputArg as myRecordType2) => 1 // Not valid code
希望函数只接受具有“名称”和“年龄”字段以及可选其他字段的记录,但实际并非如此。尝试使用“as”关键字可能不起作用,但即使这样也不行。
testTable = Table.AddColumn(Table.FromRecords({[A=1]}), "newcol", each [Name="MyName", Age=30], type myRecordType1) // Not valid code
有人能举例说明这个用例吗?我在语言规范中漏掉了什么吗?