1

Well, they say that no platform is perfect, and Salesforce definitely has its share of quirks. Here's one more. I have the following structure:

Trigger on Lead:

//some random code
system.debug(myClass.myBooleanVar);
if(!myClass.myBooleanVar){
  //some code
}
//some random code

in the myClass Class:

public static boolean myBooleanVar = FALSE;

As you all would know, this is the standard way to avoid recursion in triggers.

Scenario 1: If I upload 100 records (say) and get at least 1 error, the 'system.debug' statement is printing 'TRUE'. This doesn't make sense as I am explicitly initialising the boolean to 'FALSE' in 'myClass'.

Scenario 2: If I upload 100 records and if all are successful, the 'system.debug' statement is printing 'FALSE'. (as desired)

Any ideas on what the issue might be? Thanks!

2
  • Have you anywhere changed the variable myBooleanVar to true. AS its not possible system.debug print it true. Share your trigger code Sep 26, 2014 at 8:19
  • Hi @SFOnlineSolutions, I have written this custom setter: public static boolean myBooleanVar{ get; set{ system.debug('myBooleanVar setter called with value: ' + value); myBooleanVar = value; } } However, the statement 'myBooleanVar setter called with value' is not to be found anywhere in the Debug Logs. Sep 26, 2014 at 10:56

1 Answer 1

1

Your code with line "myBooleanVar = value;" is creating problem for you. If Salesforce debug log is too large then it can skip some part and don't show in debug log. Try to replce the line "myBooleanVar = value;" with "myBooleanVar = False;" and perform the DML to run the trigger again. Now check the debug log to find out True and if you don't it then am correct, So findout from where that variable is set to True.

2
  • Thanks @SFOnlineSolutions, i'll have a go at it and let u know. Sep 29, 2014 at 5:05
  • You were right. I found where the variable was getting set to TRUE. The logs weren't showing it, which is strange, since we usually get the message "XYZ bytes.. log skipped" if the logs are skipped. But anyhow, problem solved! thanks. :) Sep 29, 2014 at 7:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .