You need to sign in to do that
Don't have an account?

pass account field into SOQL Where clause
I am trying to write a trigger to update all the accounts with a shared field (Tax ID number) whenever any of the accounts changes. This is what I have, but am getting an error message Unexpected Token 'TIN'.
trigger UpdateBusinessAgreement on Account (before update) {
for (Account a : Trigger.new){
String TIN = a.Tax_ID_Number__c;
List<Account> matchingAccounts = [SELECT ID, Business_Agreement_Completed__c, Tax_ID_Number__c FROM Account WHERE Tax_ID_Number__c = TIN];
if (a.Business_Agreement_Completed__c == 'Received - Complete'){
for (Account Acc : matchingAccounts){
Acc.Business_Agreement_Completed__c = 'Received - Complete';
}
}
}
}
trigger UpdateBusinessAgreement on Account (before update) {
for (Account a : Trigger.new){
String TIN = a.Tax_ID_Number__c;
List<Account> matchingAccounts = [SELECT ID, Business_Agreement_Completed__c, Tax_ID_Number__c FROM Account WHERE Tax_ID_Number__c = TIN];
if (a.Business_Agreement_Completed__c == 'Received - Complete'){
for (Account Acc : matchingAccounts){
Acc.Business_Agreement_Completed__c = 'Received - Complete';
}
}
}
}
WHERE Tax_ID_Number__c = :TIN];
https://trailhead.salesforce.com/fr/content/learn/modules/apex_database/apex_database_soql
trigger UpdateBusinessAgreement on Account (before update) {
for (Account a : Trigger.new){
String TIN = a.Tax_ID_Number__c;
String AID = a.Id;
List<Account> matchingAccounts = [SELECT ID, Business_Agreement_Completed__c, Tax_ID_Number__c FROM Account WHERE Tax_ID_Number__c =: TIN AND ID not =: AID];
if (a.Business_Agreement_Completed__c == 'Received - Complete'){
for (Account Acc : matchingAccounts){
Acc.Business_Agreement_Completed__c = 'Received - Complete';
update acc;
}
}
}
}
Apex Trigger Best practices to avoid recursion
https://help.salesforce.com/articleView?id=000332407&type=1&mode=1 (https://help.salesforce.com/articleView?id=000332407&type=1&mode=1)
Apex class: checkRecursive (with just a class variable, only one line) Trigger: