我正在尝试在Salesforce平台上编写一个应用程序,该应用程序可以从报告中提取联系人列表并将其发送到Web服务(例如,向他们发送电子邮件或SMS)

我似乎找到的唯一方法是将报告结果添加到新创建的广告系列,然后访问该活动。这似乎是很长的路要走。

我在线阅读的每篇文章都说您无法通过APEX访问报告,但是大多数或全部这些帖子都是在上个月发布的API版本第20版之前编写的,该版本引入了新的报告对象。现在,我可以通过编程方式访问有关报告的信息(例如上次运行的日期等),但是我似乎仍然找不到一种访问该报告中包含的结果数据的方法。

有人知道是否有办法做到这一点?

有帮助吗?

解决方案

经过大量研究,我发现目前唯一的方法是刮擦CSV文档。我想康加等正好使用这种方法。

我们已经这样做了一段时间了,并且可以正常工作。唯一的警告是:

  • Salesforce用户名 /密码 /安全令牌必须与应用程序连接共享。如果密码更改(默认情况下,则每30天左右更改一次),令牌也会更改,并且必须重新输入。

  • 您必须知道帐户的主机,这可能很难正确。例如,尽管大多数欧洲帐户都会使用EMEA.Salesforce.com访问CSV,但我们的帐户使用NA7(北美7),即使我们位于爱尔兰。我目前正在将页面主机发送到该应用程序并进行解析以计算正确的子域,但是我认为必须有更好的方法来完成此操作。

Salesforce确实需要通过提供API调用来解决此问题,该呼叫允许自定义报告结果即时导出,并允许我们使用OAuth连接到它。但是,当然,这不太可能发生。

其他提示

在SalesforcesPring 11更新中,您似乎可以获得有关报告的更多信息:如API中所述 报告报告类型, ,您可以通过APEX访问报告中查询中使用的字段,阅读字段““以及用来表示称为过滤器的字段”筛选".

通过此对象进行迭代,应允许您构建代表报告相同查询的字符串。构建该字符串后,您可以使用数据库进行动态查询。Query(..)调用。

这似乎有点混乱,但应该起作用..(尚未测试!)

如标题所述,这仅适用于自定义报告!

只是为了澄清新秀的澄清,当提出问题时,您可以通过编程访问报告数据,但是您必须使用一些容易发生的错误方法。

这一切都是固定的,您现在可以通过API访问2014年冬季的API。

文档在这里 - http://www.salesforce.com/us/developer/docs/api_analytics/index.htm

在那些自定义仪表板等的城镇等。从Salesforce Stack Exchange发布的交叉 - https://salesforce.stackexchange.com/questions/337/can-report-data-be-be-cessed-programately/

但是conga(AppExtremes)在其QuickMerge产品中执行此操作,用户指定报告ID,并且页面上的Apex脚本运行报告以提取邮件合并操作的结果。

v20.0 API添加了有关报告的元数据,但无法实际运行报告并获得结果。如果这是标准报告或您已定义的报告,则可以为您的报告处理等效的SOQL查询并运行该查询,但是如果它是最终用户定义的报告,则无法执行此操作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top