课程章节介绍
好,同学们,我们来看一下这张幻灯片上演示的,怎么从头创建一个最简单的Apex触发器。
首先,我们要从 Salesforce 里自定义对象“书籍”的管理设置页面,找到“触发器”这个选项,然后点击“新建”按钮。
这时候会弹出一个触发器编辑器,里面有一些默认的模板代码,我们不用它,直接全部删掉,然后自己来写触发器的定义。
第一行就是触发器的声明,我们写:
`trigger HelloWorldTrigger on Book__c (before insert)`
这一行就给触发器起了个名字,叫 `HelloWorldTrigger`,它作用的对象是 `Book__c`,也就是我们的书籍对象;括号里的 `before insert` 表示这个触发器会在新书记录被保存进数据库“之前”触发。
接下来,我们声明一个列表变量,名字叫 `books`,并且把 `Trigger.New` 赋值给它。
`Trigger.New` 是一个系统提供的上下文变量,在 `insert` 或 `update` 的时候,它里面就装着所有即将被保存的新记录。所以这一行,我们就把所有刚准备插入的新书,都装进了 `books` 这个列表里。
最后一行,我们调用了一个已经写好的类和方法:`MyHelloWorld.applyDiscount(books);` 把刚才那个装着新书的列表当作参数传了进去。
这样一来,以后只要有人往书籍对象里插入新记录,系统在保存之前就会自动执行这个触发器,它再把书单传递给 `MyHelloWorld` 类的 `applyDiscount` 方法,让这个方法去做具体的业务处理,比如给新书打个折。
好,这张幻灯片的内容其实就是展示了一个触发器最简单的架子,我们把名字、对象、事件定义好,拿到触发上下文的记录,再交给封装好的方法来处理,这个模式很常用,大家把它记住就可以了。
关键词
Apex
Salesforce
Developer Guide