问题标签 [apex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
453 浏览

visualforce - 保存时将 Visualforce 页面添加到案例编辑页面布局

我正在尝试将以下功能添加到案例编辑页面布局。

用户在案例编辑页面布局中,他从三个选项列表字段中选择了三个特定值。如果选择了这三个值,则在单击保存时和保存记录之前应该会弹出一个 Visualforce 页面。此 Visualforce 页面将有一个提交按钮以确认用户同意 Visualforce 页面中显示的信息。单击提交按钮后,Visualforce 页面应关闭并保存记录。

是否可以从案例编辑页面布局中执行此操作?

谢谢

0 投票
1 回答
946 浏览

json - APEX ENUM 从 JSON 序列化和反序列化

我有使用要序列化为 JSON 的枚举属性定义的 APEX 类。此外,我正在阅读 JSON 并将它们反序列化回我定义的类。

为了使枚举属性与 JSON 转换一起使用,我创建了另一个 Integer 属性,该属性获取枚举的序号并根据枚举的值列表设置枚举。见下文:

枚举定义:

APEX 类定义:

使用该类序列化为 JSON 并从 JSON 反序列化的 APEX 代码:

我使用 Integer 属性与每个枚举属性一起使用的原因是,在序列化为 JSON 时,枚举值会丢失。所以拥有对应的 Integer 值保留了 JSON 中的值,可以成功反序列化回来......除了上面显示的代码。由于每个枚举/整数字段对的“重复字段”错误,上述代码实际上会在反序列化部分失败。序列化时,枚举和整数字段都包含在 JSON 字符串中,即使只有整数字段保留值。

示例 JSON:

我的问题:有没有办法忽略序列化为 JSON 的字段?这将解决“重复字段”错误。否则,在转换为 JSON 或从 JSON 转换时,我将如何采用适当的方式处理枚举?谢谢!

0 投票
1 回答
1844 浏览

map - Salesforce Apex Map 使用 sObject(包含重复数据)作为 Key

所以,我知道为什么会发生上述情况,我想知道如何最好地处理它。

我想创建一个使用 sObject(我的应用程序中的自定义对象)键入的地图。问题是映射键唯一性的测试是针对对象字段的值,而不是对象在内存或其他 Id 中的位置。

我非常想避免保存记录并检索 ID 以用于唯一性。有关如何管理此问题的任何其他建议?

0 投票
1 回答
384 浏览

ios - 来自salesforce的iOS中格式错误的json

在 iOS 中,我正在调用 Salesforce 上托管的休息资源:

其中返回的 jsonString 为: { "email" : "woohoo" }

如调试日志所示。但是,当我尝试在 iOS 中接收此响应时:

我收到一个错误:WARNING error parsing json: Error Domain=NSCocoaErrorDomain Code=3840 “无法完成操作。(Cocoa 错误 3840。)”(JSON 文本没有以数组或对象开头,并且允许未设置片段的选项.) UserInfo=0xcbaf230 {NSDebugDescription=JSON 文本没有以数组或对象开头,并且允许未设置片段的选项。}

我还尝试在 salesforce 中返回一个对象,但返回了相同的错误。如何将数据作为 NSString 读回?

谢谢

0 投票
1 回答
593 浏览

salesforce - 批量化跨对象 SOQL 查询

我正在尝试从机会记录可能具有的所有“计费”联系人角色 ID 中返回字段。

我希望在我的机会触发器中得到一个地图,该地图具有机会 ID 和关联的联系人角色 ID 列表(即 Map>)

我可以从循环 trigger.new 创建映射键,但似乎找不到从我的 SOQL 查询中插入联系人角色 ID 列表的方法。

如果需要,我可以将其余代码放入其中,但由于它实际上不起作用,我认为它可能会使事情变得混乱。

0 投票
1 回答
936 浏览

image - 从销售人员中的 Apex 到销售人员 API 端点的多部分帖子以获取图像

我想做一个从 Apex 到 salesforce 本身的多部分帖子以获取图像。Salesforce 需要图像的二进制数据。但是,作为多部分约定的一部分,我们需要在标题前加上边界并附加页脚,以便接收端(在这种情况下为 salesforce)可以解析相同的内容并处理数据(在这种情况下为图像)。问题是图像是一个blob,页眉和页脚是字符串。而且我们不能在 Apex 中直接连接这 3 个部分以发送到 SF。

有类似问题的人建议的一种可能方法是使用 base64encoded 将 blob 转换为字符串并连接页眉和页脚。这很好并且有效,但只有 33% 的时间。原因是如果源 blob 数据字节不是 3 的精确倍数(这就是 base64 编码的工作方式),base64 编码会在末尾附加“=”或“==”符号来填充。因此,如果在编码时附加这些填充字符,则会产生问题。我没有办法解决这个最后的问题,我收到了 SF 的 400 个错误请求。@Nerd 在他的博客中提出了一种方法,但可以将错误从 400 解决为成功的 201 返回值。但背景问题是删除“=”字符的方式实际上破坏了blob数据,

为避免上述串联问题,我还尝试将 Content-Transfer-Encoding 设置为“base64”,并仅将图像作为 base64encoded 和页眉/页脚作为普通字符串发送,但是该请求也会产生 500 服务器错误。

有没有人遇到过任何类似的问题,或者有任何解决方法的指针,用于将页眉、页脚字符串连接到 blob 正文或解析填充的“=”字符而不破坏数据。或者有没有人成功地尝试使用 base64 作为 Content-Transfer-Encoding 方法来发送多部分帖子?非常感谢任何帮助。

卡迈勒

0 投票
2 回答
2894 浏览

class - 触发器的 Apex 测试类 - 初学者指南

我对编码相对缺乏经验,以前从未被迫编写测试类。我从概念上不理解它。我写了以下触发器:

但是后来我不知道如何正确编写测试类。我浏览了 Salesforce 网站上的所有文档和无数帖子,但我的代码覆盖率未能从 13% (2/15) 提高 [顺便说一句,这是什么意思?]。

我写的测试类基本上只是试图把所有的东西都放进去,希望代码覆盖率会上升。我不知道我实际上应该对测试类做什么:

谁能帮帮我,这让我发疯了吗?

0 投票
1 回答
562 浏览

salesforce - 将 csv 文件中的记录添加到相关列表

在案例对象中,我有一个相关列表“CIM”。当用户上传附件时,我可以将附件中的记录,并使其成为CIM相关列表的一部分吗?(基本上是想将附件中的记录添加为CIM对象的记录,它与Case有主从关系。 ) 任何帮助是极大的赞赏。谢谢你,比吉利

0 投票
2 回答
981 浏览

salesforce - 更新 PushTopic 时抛出超出主题限制的错误

PushTopics在达到限制之前,我可以毫无问题地创建和更新。达到限制后,我无法更新现有主题,将引发以下错误:

更新失败。第 0 行的第一个异常,ID 为 xxx;第一个错误:LIMIT_EXCEEDED,超过了允许的最大推送主题数:[]

我没有插入或更新插入 - 只是更新查询。

如果 org 限制为 20 个主题,那么在 19 个主题之前,一切都可以完美运行。在 20 个主题中会引发此错误。

有解决方法吗?

0 投票
1 回答
22 浏览

eclipse - 从 eclips 构建和上传的选项卡不显示

我已将在 github 上找到的一个开源项目上传到我的沙箱。此软件包包含选项卡,它们显示在“创建”->“选项卡”->“Visualforce 选项卡”下。但我不能让它们出现在网站上的任何其他菜单中。更不用说所有选项卡 (+) 按钮。我已经寻找权限或其他任何看起来合乎逻辑的东西,但我是 SA,应该能够看到所有内容。有人有想法么?我完全一无所知atm