簡體   English   中英

使用Apex觸發器(Salesforce)自動將字段復制到查找字段

[英]Automatically Copy A Field To A Lookup Field With Apex Trigger (Salesforce)

我正在嘗試找到一種在所有可能的情況下自動從Salesforce聯系人中的一個字段復制到另一個字段的方法。 (即,我有一個名為“ Contact: Mailing Zip/Postal Code ”的字段,試圖將其自動復制到另一個名為“ Postcode_Lookup_c ”的字段。)

其背后的目的是自動將包含聯系人郵政編碼/郵政編碼的字段復制到公式查找字段,該字段引用我創建的自定義對象Postcode_Lookup__c 這基本上將某些領域關系聯系在一起,我已經將該州的地方理事會和地區列表鏈接到了那里。

這樣的想法是,聯系人將根據其郵寄地址的郵政編碼自動填充其相關的地方議會和州的區域。

非常感謝您的幫助,喬:-)

對於曾經嘗試做同樣事情的其他人,這是最終完成任務的代碼...

trigger Postcode_Copy on Contact(before insert, before update) {

  Set < String > MailingPostalCodes = new Set < String > ();
  Map < String, Postcode_Lookup__c > postCode_Postal_map = new Map < String, Postcode_Lookup__c > ();

  for (Contact a: Trigger.new) {
    if (a.MailingPostalCode != null && a.MailingPostalCode.trim() != '')
      MailingPostalCodes.add(a.MailingPostalCode);
  }

  for (Postcode_Lookup__c postRec: [Select ID, Name from Postcode_Lookup__c where Name in: MailingPostalCodes]) {
    postCode_Postal_map.put(postRec.Name, postRec);
  }
  if (postCode_Postal_map.size() > 0) {
    for (Contact con: Trigger.new) {
      if (con.MailingPostalCode != null && con.MailingPostalCode.trim() != '') {
        if (postCode_Postal_map.containsKey(con.MailingPostalCode)) {
          con.Postcode_Lookup__c = postCode_Postal_map.get(con.MailingPostalCode).id;
        }
      }
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM