apex中给字段添加前缀的问题
题目:写一个trigger 作用在Position__c 这个object上, 每当有输入insert or update的时候, 检查Position Title这个字段的值是否以“ITB-”开头, 如果不是, 给值加上“ITB-”前缀。
用java所学的知识可以这样来解决:
1 trigger PositionTrigger on Position__c (before insert,before update) { 2 if(Trigger.isInsert||Trigger.isUpdate){ 3 for(Position__c p : Trigger.new){ 4 if(substr(p.name,1,4)<>'ITB'){ 5 p.name='ITB-'+p.name; 6 } 7 } 8 } 9 }
但是在apex trigger中,通过上面的方法是解决不了我想要的问题的,所以,我们要寻找另外一种方法来解决,通过查阅相关文档,可以得到如下语句:
trigger PositionTrigger on Position__c (before insert,before update) { if(Trigger.isInsert||Trigger.isUpdate){ for(Position__c p : Trigger.new){ if(!p.name.startsWith('ITB-')){ p.name='ITB-'+p.name; } } } }
原來可以通过startsWith方法来得到想要的结果,困惑几天的问题,通过该方法,就这么轻松的解决了

浙公网安备 33010602011771号