Power Apps合并两个集合时添加拼接键字段遇嵌套表问题
解决Power Apps合并集合时SubKey字段生成嵌套表的问题
问题出在你引用字段的方式:colSource[@SPID]和colDest[@DPID]会返回整个集合对应的整列数据(是一个表类型),而非当前循环中对应单条记录的字段值,所以拼接后得到的是嵌套表,不是预期的字符串。
你可以通过以下两种方式修改代码,确保获取当前循环对应的单条记录字段:
方法一:用With缓存当前记录(更清晰易读)
ClearCollect( colCombined, ForAll( Sequence(CountRows(colSource)), With( { currentSourceRec: Index(colSource, ThisRecord.Value), currentDestRec: Index(colDest, ThisRecord.Value) }, Patch( currentSourceRec, currentDestRec, { 'Exact Cross': Blank(), SubBy: Gallery1.Selected.UserName, SubKey: Concatenate(currentSourceRec.SPID, "*", currentDestRec.DPID) } ) ) ) );
方法二:直接在Concatenate中指定当前索引的记录字段
ClearCollect( colCombined, ForAll( Sequence(CountRows(colSource)), Patch( Index(colSource, ThisRecord.Value), Index(colDest, ThisRecord.Value), { 'Exact Cross': Blank(), SubBy: Gallery1.Selected.UserName, SubKey: Concatenate(Index(colSource, ThisRecord.Value).SPID, "*", Index(colDest, ThisRecord.Value).DPID) } ) ) );
两种写法都能准确获取当前循环对应的单条记录的SPID和DPID值,拼接后生成的SubKey就是普通字符串字段,不会出现嵌套表的问题。
内容的提问来源于stack exchange,提问作者T. Hughes
相关产品推荐
相关产品推荐

