• Rocker
  • NEWBIE
  • 10 Points
  • Member since 2012
  • Application Systems Lead
  • Epicor Software

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 4
    Questions
  • 3
    Replies
Does anyone know what object stores the 'Primary Campaign Source' field on the Campaign Influence related list on the Opportunity object? Is it accessible via the API?

Thanks!
Manuel Dangond
  • January 11, 2017
  • Like
  • 0
Hello,

We are receiving an error when trying to integrate Oracle to Salesforce. While investigating this I found that the below BPEL web service is failing on one of our servers: SfdcAccount and SfdcUser
 
The error is in on a sfdc call - InvokeSfdcTimeStamp which calls the getServerTimestamp operation on SFDC
 
"exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target"
 
From what I could find on this error it seems this has something to do with the certificate of the site we are trying to access not being properly installed in the server or  expired. Can someone please help me understand this error and tell me what we need to do to resolve it? Do we need to contact Oracle and request a new certificate?

Thanks,
Manuel Dangond
  • September 03, 2015
  • Like
  • 0

I am getting the following error when trying to change an existing "probability" value fro 25% to 15% on the Stage field on the Opportunity object:

 

Unable to Access Page

The value of a parameter contains a character that is not allowed or the value exceeds the maximum allowed length. Remove the character from the parameter value or reduce the value length and resubmit. If the error still persists, report it to our Customer Support team. Provide the URL of the page you were requesting as well as any other related information.

 

Has anyone run into this before? How can I resolve this issue?

 

Thanks!

Manuel Dangond

  • February 26, 2013
  • Like
  • 0

Hello,

 

I am new to Apex and I wrote this trigger to update all duplicate contacts when the "Email Opt Out" field is updated. The code has 100% test coverage and I tested it in the sandbox with single records and a bulk update of 1,000 contacts. The trigger worked fine in both cases but now that it is deployed to production and Cast Iron tried to update some records, it failed with the error below.

 

Any ideas on how to change the code so that it works? Maybe it is because I am not using an indexed field like ID?

 

I am getting this error:

 

updateContactOnEmailOptOutChange: execution of AfterUpdate  caused by: System.QueryException: Non-selective query against large object type (more than 100000 rows). Consider an indexed filter or contact salesforce.com about custom indexing. Even if a field is indexed a filter might still not be selective when: 1. The filter value includes null (for instance binding with a list that contains null) 2. Data skew exists whereby the number of matching rows is very large (for instance, filtering for a particular foreign key value that occurs many times)  Trigger.updateContactOnEmailOptOutChange: line 31, column 1

 

 

trigger updateContactOnEmailOptOutChange on Contact (after update) {

// On a contact update, this trigger updates all duplicate contacts with the new value of "Email Opt Out" if this field has been updated.
// Duplicate contacts are contacts with an identical email address. This trigger only updates duplicate contacts that have a HasOptedOutOfEmail value
// different from the one being updated. 
//                                                                      
// Author: Manuel Dangond                                                                
// Date: 10/18/12                                                                                          
     
    //Initialize lists and maps

    List<Contact> duplicateContacts = new List<Contact>();
    Map<String, Contact> contactEmailMap = new Map<String, Contact>();
    Map<Id, Contact> contactIdMap = new Map<Id, Contact>();

    //Build a map with contacts to update. Only select the ones that have a different "Email Opt Out" value from the contact being updated.

    for (Integer i = 0; i < Trigger.new.size(); i++) {
        if (Trigger.old[i].HasOptedOutOfEmail != Trigger.new[i].HasOptedOutOfEmail) {
            contactEmailMap.put(Trigger.old[i].email, Trigger.new[i]);
            contactIdMap.put(Trigger.old[i].id, Trigger.new[i]);        
        }
    }    
    
    //Only go through this process if "Email Opt Out" (HasOptedOutofEmail) was updated.
    
    If (contactIdMap.size()>0) {
    
        //Query the database and look for all contacts with a duplicate email address (same email as the contact currently being updated).

        for (Contact dupContact : [SELECT Id, Name, Email, HasOptedOutOfEmail
                                   FROM Contact
                                   WHERE Email IN : contactEmailMap.KeySet()
                                   AND Id NOT IN : contactIdMap.KeySet()]) {
            Contact contact = contactEmailMap.get(dupContact.Email);
            If (dupContact.HasOptedOutOfEmail <> contact.HasOptedOutOfEmail) { 
                dupContact.HasOptedOutOfEmail = contact.HasOptedOutOfEmail;   
                duplicateContacts.add(dupContact);
            }
        }    
    
        //If any duplicate contacts were found, update all duplicate contacts with the new HasOptedOutOfEmail value.

       If (duplicateContacts.size()>0) update duplicateContacts;
   }
}

 

  • November 14, 2012
  • Like
  • 0
Does anyone know what object stores the 'Primary Campaign Source' field on the Campaign Influence related list on the Opportunity object? Is it accessible via the API?

Thanks!
Manuel Dangond
  • January 11, 2017
  • Like
  • 0

I am getting the following error when trying to change an existing "probability" value fro 25% to 15% on the Stage field on the Opportunity object:

 

Unable to Access Page

The value of a parameter contains a character that is not allowed or the value exceeds the maximum allowed length. Remove the character from the parameter value or reduce the value length and resubmit. If the error still persists, report it to our Customer Support team. Provide the URL of the page you were requesting as well as any other related information.

 

Has anyone run into this before? How can I resolve this issue?

 

Thanks!

Manuel Dangond

  • February 26, 2013
  • Like
  • 0

Hello,

 

I am new to Apex and I wrote this trigger to update all duplicate contacts when the "Email Opt Out" field is updated. The code has 100% test coverage and I tested it in the sandbox with single records and a bulk update of 1,000 contacts. The trigger worked fine in both cases but now that it is deployed to production and Cast Iron tried to update some records, it failed with the error below.

 

Any ideas on how to change the code so that it works? Maybe it is because I am not using an indexed field like ID?

 

I am getting this error:

 

updateContactOnEmailOptOutChange: execution of AfterUpdate  caused by: System.QueryException: Non-selective query against large object type (more than 100000 rows). Consider an indexed filter or contact salesforce.com about custom indexing. Even if a field is indexed a filter might still not be selective when: 1. The filter value includes null (for instance binding with a list that contains null) 2. Data skew exists whereby the number of matching rows is very large (for instance, filtering for a particular foreign key value that occurs many times)  Trigger.updateContactOnEmailOptOutChange: line 31, column 1

 

 

trigger updateContactOnEmailOptOutChange on Contact (after update) {

// On a contact update, this trigger updates all duplicate contacts with the new value of "Email Opt Out" if this field has been updated.
// Duplicate contacts are contacts with an identical email address. This trigger only updates duplicate contacts that have a HasOptedOutOfEmail value
// different from the one being updated. 
//                                                                      
// Author: Manuel Dangond                                                                
// Date: 10/18/12                                                                                          
     
    //Initialize lists and maps

    List<Contact> duplicateContacts = new List<Contact>();
    Map<String, Contact> contactEmailMap = new Map<String, Contact>();
    Map<Id, Contact> contactIdMap = new Map<Id, Contact>();

    //Build a map with contacts to update. Only select the ones that have a different "Email Opt Out" value from the contact being updated.

    for (Integer i = 0; i < Trigger.new.size(); i++) {
        if (Trigger.old[i].HasOptedOutOfEmail != Trigger.new[i].HasOptedOutOfEmail) {
            contactEmailMap.put(Trigger.old[i].email, Trigger.new[i]);
            contactIdMap.put(Trigger.old[i].id, Trigger.new[i]);        
        }
    }    
    
    //Only go through this process if "Email Opt Out" (HasOptedOutofEmail) was updated.
    
    If (contactIdMap.size()>0) {
    
        //Query the database and look for all contacts with a duplicate email address (same email as the contact currently being updated).

        for (Contact dupContact : [SELECT Id, Name, Email, HasOptedOutOfEmail
                                   FROM Contact
                                   WHERE Email IN : contactEmailMap.KeySet()
                                   AND Id NOT IN : contactIdMap.KeySet()]) {
            Contact contact = contactEmailMap.get(dupContact.Email);
            If (dupContact.HasOptedOutOfEmail <> contact.HasOptedOutOfEmail) { 
                dupContact.HasOptedOutOfEmail = contact.HasOptedOutOfEmail;   
                duplicateContacts.add(dupContact);
            }
        }    
    
        //If any duplicate contacts were found, update all duplicate contacts with the new HasOptedOutOfEmail value.

       If (duplicateContacts.size()>0) update duplicateContacts;
   }
}

 

  • November 14, 2012
  • Like
  • 0