【发布时间】:2020-12-05 02:38:26
【问题描述】:
所以,我继承了 PowerApp 的这种野兽,它做一些相对简单的事情,收集对应用程序中创建的动态测验的响应。操作员创建问题(将项目添加到 SPO 列表),然后将测验发送给人们,然后他们在 PowerApp 中回答。
因为问题的创建或多或少是一时兴起,并且因为 PowerApps 无法动态创建新数据源或操纵它使用的数据源,而不是为每个问题/答案对设置一列,这些 QnA 对被连接成一个巨大的纯文本块,并被塞入一个单独的 SPO 列表中的一列,其中包含以下格式的响应:
问题:问题 1 文本?答案:答案 1 文本 |问题:问题2 文本?答案:Answer2 文字等等等等。
我已经找到了我需要将块拆分为 QnA 对(在条形字符上拆分)然后每个 QnA 对本质上是一个二维数组(在 JavaScript 中,无论如何,我会在正则表达式 /((\?|\.)( Answer: ))/ 因为当然问题可以以句点或问号结尾)。
由于 PowerApps 的函数引擎非常奇怪和拜占庭式,我不太明白如何使用该正则表达式将该 blob 转换为我可以输出到应用程序中的表格,以便我的操作员可以将数据提取到更多内容中有用。
编辑 1:
越来越近了。使用以下函数,我可以获得 2D 集合:
ClearCollect(
QnAPairs,
ForAll(
'ResponsesList',
Split(
'ResponsesList'[@Answers],
"|"
)
)
);
仍然不知道如何处理 QnA 集合中的每个结果,就像我可以添加到新表中的键/值对一样。
TL;DR?
如何转弯
姓名 | 日期 | 答案 人麦克森 |月/日/年 |问题:问题1 文本?答案:答案 1 文本 |问题:问题2 文本?答案:Answer2 文字等,等等。进入
姓名 | 日期 | 问题1文本 | 问题2文本 | ...问题文本 人麦克森 |月/日/年 |答案 1 文本 |答案 2 文本 | ...答案 2 文本【问题讨论】:
标签: powerapps powerapps-formula powerapps-canvas powerapps-collection