在 Salesforce 中使用 Apex 从 Excel 文件读取数据

问题描述 投票:0回答:1

我有一个要求,我们需要解析 Excel 文件并使用 apex 将数据插入到其中一个对象中。该 Excel 文件包含多个工作表。我们需要从多张表中读取数据(目前一张表也可以)并上传数据。

请帮我解决。

javascript salesforce apex-code apex sfdc
1个回答
0
投票

我建议提供有关问题开始和结束位置的更多详细信息,因为这意味着您已经在 apex 类中拥有可用的数据,但也不包含有关您加载的类型/格式等的任何信息。

如果您想弄清楚从哪里开始,您可以执行以下操作(使用 Visualforce 页面和 apex 控制器):

1) 使用 apex:inputFile 将文件加载到您的 apex 控制器中 (https://developer.salesforce.com/docs/atlas.en-us.pages.meta/pages/pages_compref_inputFile.htm)

注意:您只能上传文件<= 10Mb this way

2) 然后我会将上传的对象从我的 apex 控制器发送回 Visualforce

实现此目的的一种方法是在 apex 中拥有一个公共属性(例如 MyExcelFile),并让您的表单触发 apex:actionFunction 来重新渲染内容为 {!MyExcelFile} 的隐藏组件 + 运行您的解析逻辑 (https://developer.salesforce.com/docs/atlas.en-us.pages.meta/pages/pages_quick_start_display_field_values.htm) (https://developer.salesforce.com/docs/atlas.en-us.pages.meta/pages/pages_compref_actionFunction.htm

3)然后我可以使用我在 Visualforce 页面中喜欢的任何 javascript 库来解析它(如何在 Javascript/HTML5 中解析 Excel 文件

4)从那里,只需调用 apex 控制器中的函数即可执行插入/更新/任何操作并传递参数 (https://eltoro.secure.force.com/PassingParametersFromVisualforcePageToApexControllerViaApexParam

© www.soinside.com 2019 - 2024. All rights reserved.