Google sheets 缓慢批量上传到Google Sheets,通过Power应用程序批量上传记录

Google sheets 缓慢批量上传到Google Sheets,通过Power应用程序批量上传记录,google-sheets,powerapps,Google Sheets,Powerapps,我对Power应用程序相当陌生,正在尝试制作一个批处理数据输入表单 我现在正在制作这个原型,虽然我认为理论上它应该可以工作,但我一直遇到技术错误 我使用的数据源是google sheets。出于原型设计的目的,共有三列,分别为item_id、item和recorded_value 对于这个应用程序,它将把一个标准值列表拉到一个图库中,在那里可以选择输入值 我采用的方法是创建一个图库,使用以下代码将其添加到收藏中: ClearCollect( collection, ForA

我对Power应用程序相当陌生,正在尝试制作一个批处理数据输入表单

我现在正在制作这个原型,虽然我认为理论上它应该可以工作,但我一直遇到技术错误

我使用的数据源是google sheets。出于原型设计的目的,共有三列,分别为item_id、item和recorded_value

对于这个应用程序,它将把一个标准值列表拉到一个图库中,在那里可以选择输入值

我采用的方法是创建一个图库,使用以下代码将其添加到收藏中:

ClearCollect(
     collection, 
     ForAll(
          Filter(Gallery1.AllItems,true),
          { item:t_item.Text,item_id:t_item_id.Text,
           recorded_value:t_recorded_value.Text
          }
     )
)
然后将其上传到google sheets,我使用以下两种方法找到了“成功”:

ForAll(collection,Patch(records, Defaults(records),{item:item,item_id:item_id,recorded_value:recorded_value}))

总的来说,我认为测试中存在两个主要问题:

  • 最初的“收集”似乎有时无法捕获物品。我不知道它是否与缓存相关,但似乎除非我一直向下滚动,否则它会将一些字段留空(在实际使用中可能不是问题,但似乎很奇怪)
  • 在某些情况下,上传记录似乎需要花费非常长的时间。虽然最初由于第1期中的问题,它只是直接崩溃了,但我发现它有时会先说第85项,然后再坐上一分钟左右,然后浏览列表的其余部分。只需99个项目,上传需要几分钟

  • 最终,我想知道是否有更好的方法来完成我的工作。我基本上只是想把最多99行粘贴到表上,但由于函数的循环性质,现在感觉效率很低。我不确定这是否更像是powerapps或google sheets的问题,但如果您能提供任何建议,我将不胜感激。

    从我所能研究的一切来看,像这样批量上传记录,无论您采取何种方式,似乎都将耗费大量时间

    我能够想出一个解决办法,但或多或少地消除了这个问题

    我没有上传每个记录,而是通过一个变量将集合中的所有记录连接到单个单元格中,使用分隔符区分行/列。(使用concat函数设置变量,然后将变量修补到数据源。)

    这种方法允许几乎同时存储所有数据

    之后,我将通过Python执行一些基本的etl,以将数据转换为更标准的格式,并将其加载到SQL server中,这是非常简单的事情

    我建议其他希望采用“批量插入”方法的用户尝试类似的方法,因为现在用户加载记录基本上只需要一秒钟,而不是几分钟

    Collect(records, collection)