Report Metadata — What You Can Do

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

📄 第 329 页 🎬 视频课程

课程章节介绍

同学们好,今天我们来聊一聊 Salesforce 报表背后的“说明书”——报表元数据。 报表元数据,说白了,就是库存信息,它详细记录了一个报表里有哪些字段可以用,哪些字段做了筛选,哪些被用来分组,以及汇总、明细数据是怎么构成的。有了这些信息,就像拿到了一份地图,我们可以搞明白:在这个报表类型下,到底能过滤什么字段、能选哪些值。 那这个东西有什么用呢?应用场景很多。比如,你想自己画一个漂亮的图表,不用从头乱猜,可以直接根据元数据里关于字段和分组的描述,构造出自定义的图表可视化。再比如,在程序里运行报表的时候,我们随时可以读出这份元数据,然后动态修改里头的过滤条件,让报表适应不同的需求,非常灵活。 那么在 Apex 里怎么拿到这份元数据呢?Salesforce 提供了一个专门的方法,叫做 `Reports.ReportManager.describeReport`,它会返回一个报表的描述对象 `ReportDescribe`。接着,调用这个对象的 `getReportMetadata()` 方法,就能得到真正的元数据对象——`ReportMetadata` 实例。这也就是咱们幻灯片里提到的那个“ReportMetals”,你可能看到的拼写会稍有不同,但它指的其实就是这个 `ReportMetadata`。 拿到 `ReportMetadata` 之后,我们可以用它的各种 `get` 方法来读取具体的元数据值,比如用 `getGroupingsDown()` 看看纵向分组有哪些,用 `getDetailColumns()` 看看明细字段,这样就能轻松获取筛选器、分组以及摘要信息了。 总结一下就是:先描述报表,再取元数据,最后用 get 方法拿到需要的细节。这就像打开一个精心打包的盒子,一层一层拆开,就能看到报表的全部“底细”。 好,今天关于报表元数据的基础就讲到这里,大家可以在练习时亲自动手试试,把一个报表的元数据打印出来,看看里面都藏着什么宝贝。下节课我们继续深入。

关键词

Apex Salesforce Developer Guide