Run Reports

DEX455 - Reports API、Sites、Support Classes 与 Territory Management

📄 第 323 页 🎬 视频课程

课程章节介绍

同学们,我们来看一下,在Apex中怎么去运行Salesforce的报告。 其实很简单,你可以想象成,我们平时在界面上点开一个报告,看到一堆数据。那在代码里呢,也有办法做同样的事情,这就是通过Salesforce的报告和仪表板API。这个API支持两种运行方式,一种是同步运行,另一种是异步运行。同步就是,我发出请求,然后等着结果回来;异步呢,就是我先请求,可以先去干别的事,回头再来拿结果,比较适合大批量的报告。 运行报告的时候,你可以选择要不要把每一行的详细信息都拉出来。有时候你只关心汇总数字,比如总和、平均值,那把详细信息关掉,速度会更快,数据量也小。反过来,如果你需要看到每一条记录,那就带上详细信息。 另外,我们经常需要动态地过滤数据,而不是每次都跑固定的报告。这时候你就可以在代码里,对报告原有的元数据进行设置,改一下过滤条件。比如,原本报告是看所有商机,你可以设置成只看上个月的商机。 关键是,不管你怎么调用,通过API跑出来的数据,跟你直接登录Salesforce,手动运行那个报告看到的记录条数,是完全一样的。它背后遵守的是同样的权限和数据可见性规则,不会多也不会少。 所以总结一下,在Apex里运行报告,就是通过API以同步或异步方式执行,可以选择是否显示详细行,还可以动态修改过滤条件,并且返回的结果和界面上手动跑的数据保持一致。这样你就可以把报告数据融入到你的自动化流程里了。 好,这部分就到这里,有什么问题吗?

关键词

Apex Salesforce Developer Guide