问题标签 [apex-code]

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 投票
1 回答
44044 浏览

salesforce - 带有子查询的 SOQL 查询

我无法从 Salesforce/Apex/SOQL 查询中获取我想要的结果。

我想要:一个联系人对象列表,其中仅包含作为一组活动的 CampaignMembers 的联系人;他们应该可以轻松访问来自该 Campaign 成员的数据。(我的最终目标是一个 VF 页面,其中列出了与这些活动中的任何一个相关联的所有联系人的列表,并以网格指示每个活动的状态。)

这些工作:

这是我的问题:


  1. 为什么没有从子查询返回任何 CampaignMember 对象?
  2. 为什么没有过滤联系人列表?(好吧,显然 b/c 里面没有 WHERE 子句,但是 WHERE 子句提供了我想要的东西?)

我知道我可以通过自己执行 CampaignMember 查询并循环通过它来准备联系人查询来做到这一点,但是当子查询应该工作时,这似乎需要很多额外的处理。

谢谢!


更新

CampaignMember 对象现在出现了 - 奇怪的是 - 我必须在没有注意到的情况下修复了一些小错字(是的,它们返回了多个列,这似乎很好)。

不过,我仍然不知道如何过滤联系人查询......

0 投票
1 回答
2589 浏览

apex-code - 如何通过 VF 页面传递对象列表

我是salesforce和apex的新手。

在我的第一个 VF 页面中,它显示了一些书名(来自 DB),当我想添加更多书籍时,我在第一页放了一个按钮,并在第二页显示了来自 DB 的所有书籍。

如果我从第 2 页中选择了一些书籍,我必须将其与之前的结果(书籍)一起添加到第一页。

如何在 APEX Visualforce 中执行此操作?

0 投票
1 回答
2965 浏览

xml - Salesforce 使用 XML 并在 Visualforce 报告中显示数据

首先,这个问题需要一些介绍,所以请多多包涵。

高层次是我正在连接到一个外部 Web 服务,它将一些 XML 返回到我的顶点控制器。这个想法是我想在 VisualForce 页面中显示返回为漂亮表格格式的 XML。返回的 XML 格式如下所示:

...

现在我正在使用 XMLdom 实用程序类(由 SF 为 XML 函数开发)将此数据映射到自定义对象“reportTable”,其中包含“行”自定义对象的列表。我以这种方式构建它的原因是因为我不知道每行中有多少元素,也不知道行数。

Visualforce 页面如下所示:

问题是:

1)这似乎是解决问题的好方法吗?

2)除了编写我自己的自定义对象以将 VF 映射到之外,是否有更简单/更好的方式来使用 XML?

接受任何和所有建议。我真的希望有比自己构建 HTML 表更好的方法,因为那时我还必须处理样式和对齐等。谢谢。

0 投票
3 回答
1907 浏览

plugins - apex 调试日志输出未显示在 Eclipse 上

我在 Eclipse 3.6 上安装了 visualforce 插件并且工作正常,除了 system.debug 不输出任何东西。

代码

在eclipse中,右键选择Force.com

弹出窗口,选择run test

测试通过,但我期待调试输出出现。(即 foobar 和日期字符串)但什么也没有出现。

有什么我可能需要打开或丢失的吗?

我的 Eclipse 是 Java 版本。我也尝试过使用 Visualforce IDE 版本 20 的 PHP 开发版,但没有运气。

还尝试了visual force IDE独立版本,这也没有显示日志。

0 投票
1 回答
5764 浏览

salesforce - 字段表达式的首词必须是一个具体的SObject:Object

我只有 2 个对象和简单的查询来检索数据。

ccList根据调试输出存储在数组中的查询结果为:

如您所见,system.debug(ccList[0])回报:

但是当我尝试Id从数组中获取(或其他字段)时,就会发生错误。谁能指出我做错了什么?

代码

0 投票
1 回答
1006 浏览

salesforce - Salesforce Apex 并发建议

我有一个正在工作的入站电子邮件处理程序。但是,现在我担心并发问题,当用户同时为同一个对象发送 2 封电子邮件时。(我有一个业务文档表格和一个发送给salesforce的技术文档表格。)它们包含不同的东西,除了公司名称(它们是从其他人直接发送给salesforce的)。

由于我在最后插入了我的自定义对象,所以我担心并发问题。这会发生吗?我的入站电子邮件处理程序为同一家公司创建了 2 个自定义对象,并且都只填写了一半的信息。

如果是这样,我怎样才能防止并发问题的发生?当前想法: - 立即使用关联帐户而不是最后查询 custom_object。如果 custom_object 不存在,则创建一个。

干杯,

0 投票
2 回答
2028 浏览

unicode - apex code 发送的日文邮件出现断线,如何编码?

我写了你可以发送电子邮件的visualforce页面。它在英语中运行良好。但是当我在电子邮件正文部分输入日语并发送时,我的电子邮件收件箱有问号而不是日语。

gmail中的正文全部显示?

我想我需要对字符串进行编码?但是如何在 Apex 代码中做到这一点?EncodeUtil 类的方法很少,但它不使用 String 进行编码。

代码

0 投票
2 回答
3229 浏览

salesforce - SOQL 连接查询返回 sObject 但不返回字段。如何使用获得的ID?

我在下面有 SOQL,我得到的结果包含 sObject 的 ID。我的假设是查询也将返回 SObject 的字段。例如,我的查询尝试获取startDay__c类似于 ShigotoShousai 对象的字段的“”(日期)。但是查询的结果只是 sObject 实例的 ID。

父母ShigotoShousai 孩子:)ShigotoAssign_

system.debug(结果)输出

shigotoAssign_c :{Id=a06500000067aNjAAI, ShigotoShousai_c =a055000000DlHnOAAV}, shigotoAssign_c :{Id=a06500000067aNoAAI, ShigotoShousai_c =a055000000DlHnTAAV})

我得到了 ShigotoShousai__c sObject 的 ID 而不是它的属性“ startDay__c”。我认为输出会是这样的:

但是查询结果只是返回了我 ShigotoShousai__c sobject 的 ID :(

现在我知道 S 的 ID 值higotoShousai__c并想访问它的字段,所以我做了以下操作。

这给了我错误:

然后我发现ID不能用来指代SObject(即ShigotoShousai__c)。

但我有它的 id.. 我怎么能访问,比如说startDay__c?有没有办法使用这个ID?

0 投票
2 回答
3254 浏览

email - 如何在 Apex 中实现调度程序?

我在 salesforce 中看到了类似调度程序的功能,但它与 salesforce 提供的现有功能有些相关,并且就我的研究而言,没有提供示例源代码。

我想要做的是创建我自己的调度程序,根据日期发送简单的电子邮件。

目标:

自定义对象Player有字段

如果今天的日期比 startDate 早一天,我想向播放器发送电子邮件。例如,玩家的名字是John,如果今天是2010-12-10,并且一个玩家的startDate 设置为2010-12-11,则发送电子邮件说"hello John"

不幸的是,我找不到很好的示例或在线教程或销售人员文档如何使用 Apex 执行此操作。谁能指出从哪里开始?

更新

我想从eyescream.

设置调度程序后,您可以设置要采取的后续操作,例如使用模板发送电子邮件或将自定义对象字段设置为某些值。

下面我发现对于使用 Visualforce 格式的电子邮件模板的人很有用。

我有自定义对象'alertTester',它引用了其他对象'custom',甚至这个对象'custom'也引用了另一个对象'custom1GrandChild',并且所有关系(我认为最多3或5层)都可以像下面这样访问.

我已经在下面进行了测试并且工作正常。现在我收到带有我的条件集的电子邮件:)

0 投票
1 回答
11156 浏览

concatenation - 是否可以在 SOQL 中连接字符串?

我从 2005 年开始阅读线程,人们说 SOQL 不支持字符串连接。

虽然想知道它是否受支持并且有人这样做了。

我正在尝试连接但没有运气:(

下面是尝试使用指定电子邮件查找记录的 APEX 代码。

即使记录确实在数据库中,它也不会查询任何内容。调试显示“row(0)”,表示返回空。

我在做 concat 错误的方式吗?

更新

我刚刚找到了一种不必添加单引号的方法。即使对于具有查询的字符串,也只需要应用相同的冒号变量。

如果 WHERE 子句包含 DateTime,这也是必要的,因为 DateTime 不能用单引号引起来。