csv - 带有自定义 sObject 的 Test.loadData 引发异常

标签 csv salesforce apex-code apex

我正在通过静态资源加载 CSV 文件来测试我的 APEX 代码。我在测试中使用以下代码:

List<Territory_Zip_Code__c> territoryData = Test.loadData(Territory_Zip_Code__c.sObjectType, TERRITORY_ZIP_CODES_STATIC_RESOURCE_NAME);

CSV 文件的前几行如下所示:
Territory__c,Zip_Code__c
ABC,123
DEF,456

我收到以下错误:

System.StringException: Unknown field: Territory__c


Territory__c 是我的自定义 sObject 的有效 API 字段名称

我还尝试在字段名称前添加 sObject 名称,例如 My_Territory__c.Territory__c 但这也不起作用。

此外,我尝试使用字段名称而不是 API 名称(例如 Territory ),但这也不起作用。

有很多将 Test.loadData 与内置 sObjects 一起使用的示例,例如 Account 和 Contacts,但没有显示自定义 sObjects 的示例。我开始认为这对于自定义对象是不可能的。

最佳答案

使用 test.loadData 肯定适用于自定义对象。测试数据 CSV header 只需要字段名称,就像您在示例中一样。

你的代码看起来也不错。我能发现的唯一区别是您的变量是一个强类型列表。在我的代码中,我使用了一个似乎有效的 List:

List<sObject> testdata = Test.loadData(MyCustomObject__c.sObjectType, 'mytestdatafile');

关于csv - 带有自定义 sObject 的 Test.loadData 引发异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27511866/

相关文章:

python - 返回制表符分隔表的 API 请求存在问题

python - 使用 Tkinter 将用户输入导出到 .csv 文件

salesforce - 用于发送电子邮件警报的 Apex 代码

salesforce - 寻找force.com与其他云服务的比较及其定价模型

javascript - D3 CSV 导入 "%"

database - Perl 数据库数据传输、csv、tsv

java - common.apex.runtime.impl.ExecutionException : Unexpected end of file from server apex

triggers - SalesForce.com - 报告审批流程变通办法

salesforce - POST 请求无法在 Salesforce 中接收 JSON 响应

csv - 使用 Apex Data Loader 将记录加载到具有主详细信息关系的对象中