Apex Triggers

Salesforce菜鸟刚刚接触Salesforce,发现salesforce一大准则就是:能用配置配置出来的东西,千万不要自己写代码。对于Trigger也是一样,对于你的需求第一想法应该是Validation Rule,Process Builder,Work Flow能不能实现,如果这几种方式都不能做,那么开始写代码。

Trigger有一下几种对数据的操作:

before insert

before update

before delete

after insert

after update

after delete

after undelete

有两种类型的Trigger:

Before Trigger are used to update or validate record values before they're save to the database.(即在存入数据库之前进行字段的更新与校验)。

After Trigger are used to access field values that are set by the system(such as a record's Id or LastModifiedDate field), and to affect changes in other records. The records that fire the after trigger are read-only.(即after trigger就是为了获取record的field值,用于更新其他record的值,触发after trigger的记录是只读的。)

使用全局变量:

Trigger.new contains all the records that were inserted in insert or update triggers.(包含即将插入数据库或者更新数据库的所有记录)

Trigger.old provide the old version of sObject before they were updated in update triggers,or a list of deleted sObject in delete trigger.(即包含所有更新或者删除之前的所有记录)

我们还有其他的一些全局变量,可以在我们执行不同的事件时提供帮助:

isInsert,isUpdate, isDelete, isAfter, oldMap. newMap

Trigger Exception

在trigger中,如果你想加一些限制条件比如满足某些限制条件的记录不能把保存在数据库中,我们使用addError()方法来做限制。

Example 1:

Example 2:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • MYSQL 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 MySQL基本操...
    Kingtester阅读 12,375评论 5 116
  • ORACLE自学教程 --create tabletestone ( id number, --序号usernam...
    落叶寂聊阅读 4,831评论 0 0
  • PLEASE READ THE FOLLOWING APPLE DEVELOPER PROGRAM LICENSE...
    念念不忘的阅读 14,599评论 5 6
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 12,172评论 0 10
  • 和室友来南京玩,在青旅随便画了一张彩色气球 其实本来想画的是这样的 太困了,就偷懒了(捂脸) 大家晚安~
    Hanabule阅读 2,615评论 7 4

友情链接更多精彩内容