• trigon-group
  • 0 Points
  • Member since 2009

  • Chatter
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
  • 3

I'm trying to copy a new user as contact by using a trigger but I'm getting the following error


MIXED_DML_OPERATION, DML operation on setup object is not permitted after you have updated a non-setup object (or vice versa): Contact, original object: User


trigger Acceleration_User_Copyto_Contact on User (after insert, after update) {
   // Map<String,User> newLead = new Map <String, User>();
    system.debug('Acceleration_User_Copyto_Contact Trigger....');
    for ( User user : System.Trigger.new)
        if  (user.Email.contains('acceleration'))
            system.debug('Acceleration_User_Copyto_Contact Trigger..2.');
            Integer RecordCount = [select count() from Contact c where c.Email = : user.Email];
            system.debug('Acceleration_User_Copyto_Contact Trigger..2a .' + RecordCount);
            if (RecordCount == 0)
                String AccountId = '';
                for ( Account a : [Select a.Id From Account a where Name = 'Acceleration']) 
                    system.debug('Acceleration_User_Copyto_Contact Trigger..3.');
                    AccountId = a.Id;
                    Contact con = New Contact();
                    con.AccountId = AccountId ;
                    con.Email = user.Email;
                    con.Firstname = User.Firstname;
                    con.Lastname = User.Lastname ;
                    con.User__c = User.Id;
                    insert con;


Hello Friends,
I am facing an issue with the browser Back button when used with VF pages.
The problem is that whenever i click on the Back button of my browser from a VF page, instead of being redirected to the previous page, a blank page is displayed and i have to click Back twice to come back to the correct page.
Is there an issue with the VF pages with the brower or am i missing something out here?
Please Guide .....
The "MIXED_DML_OPERATION" issue that plagues unit tests (see this forum discussion) is now effecting production code as well.

Our application adds an extra custom field to Users called "Other Emails".  This is a string field where a User can enter a bunch of email aliases; whenever it's updated we normalize the information into a separate "EmailAddress" table and the Address then points back at the User.

As of yesterday, that worked great.  I updated my User record to add an address to the "Other Emails" field.  The trigger code executed perfectly, and the EmailAddress object was created & linked to my User record.

As of today, it is failing:

This is a critical part of an Apex-based application that we have been developing for over 8 months, and this section of code has always worked until today.

We've had to comment out unit tests to deal with this issue - which was lame, but acceptable - but actually changing our object relationships and code at this late date would be difficult.
  • June 19, 2008
  • Like
  • 0