如何使用 powerapps 附件控制保存多个文件?

How to save multiple files using powerapps attachment control?

提问人:Mike Espinosa 提问时间:9/13/2023 更新时间:9/13/2023 访问量:264

问:

我想找到使用 powerapps 附件控件保存多个文件的解决方法

我已经使用了 Last() 函数并将其转换为 base64 文件,然后将其上传到 google drive。现在,我想将其应用于多个文件。

附件 PowerApps

评论


答:

1赞 Mike Espinosa 9/13/2023 #1

若要使用 PowerApps 附件控件保存多个文件,需要执行以下常规步骤:

设置数据源:

请确保已将数据源连接到要保存附件的 PowerApp。这可以是 SharePoint 列表、OneDrive 文件夹或任何其他受支持的数据源。 添加附件控件:

将附件控件拖放到 PowerApp 屏幕上。此控件允许用户上传和查看附件。

配置附件控件:

选择附件控件,然后转到属性面板。 将 DataField 属性设置为数据源中要存储附件的字段的名称。 添加按钮或触发器:

添加一个按钮或触发器,用于启动保存附件的过程。 配置按钮/触发器:

将按钮或触发器的 OnSelect 属性设置为一个公式,该公式从附件控件中提取附件并将其保存到数据源中。

处理错误并提供反馈:

添加错误处理逻辑,以防保存过程遇到问题。您可以使用 Patch、Collect 等函数或特定数据源函数来保存附件。 测试和调试:

测试 PowerApp,确保正确保存附件。调试出现的任何问题。

示例代码: ForAll(AttachmentControl.Attachments, 收集( 'YourDataSource', { Title: TextInputTitle.Text, // 要与附件关联的其他数据 附件:附件 } ) )

0赞 Finch 9/13/2023 #2

插入富文本输入控件:

将“RTF 输入”控件拖放到 PowerApps 屏幕上。 插入图像控件:

在屏幕上插入“图像”控件(“插入>媒体>图像”)。这将用于显示图像。 创建集合以存储图像:

在将图像保存到数据源之前,需要创建一个集合来临时存储图像。 示例代码: 清除收集( 图像集合, { ID: Guid(), // 为每个图像分配一个唯一的 ID 进行识别 ImageData: “” // 图像数据的占位符 } )

设置富文本输入的默认值:

将 RTF 输入控件的 Default 属性设置为以下公式: Concat( 图像集合, “”, // 使用唯一 ID 渲染图像 "
" )

此公式将根据图像在 RTF 输入控件中的 ID 呈现图像。

处理粘贴图像:

使用 RTF 输入控件的 OnChange 属性可在内容更改时触发操作。 示例代码: ForAll( 过滤器( 拆分( RichTextInput1.HtmlText, "*") ), 收集( 图像集合, { ID:左( 结果 索引( 结果 "'>" ) ), ImageData: “” } ) )

此代码提取粘贴图像的 ID,并将其添加到 ImageCollection。

处理图像上传:

实现上传机制(例如,使用“添加图片”控件)以允许用户上传实际图像。 按钮单击事件的示例代码: ForAll( 图像集合, UpdateIf( YourDataSource, // 替换为实际数据源 ID = ThisItem.ID, { ImageData: YourImageUploadControl.Image // 替换为实际的图片上传控件 } ) )

此代码使用上传的图像更新数据源中的 ImageData 字段。

显示图像:

使用之前添加的 Image 控件来显示图像。 将控件的 Image 属性设置为: 查找( 图像集合, ID = YourDataSource.ID // 将图像与数据源匹配 ).图像数据