• John C Schaaf
  • 5 Points
  • Member since 2016
  • Salesforce Certified Administrator
  • U.S. Bank Wealth Management

  • Chatter
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 2
  • 2
I'm building my Matrix report in the exercise contained in the Reports and Dashboards > Using Report Formats page. The instructions say that I'm supposed to drag the Opportunity Owner field and drag it to the "Drop a field here to group across report blocks" grouping drop zone.

7. Now we’ll group all three blocks by sales rep. Drag the Opportunity Owner field to the horizontal bar that says, “Drop a field here to group across report blocks.” (This is called the grouping drop zone.)

But when I try to do that, the Opportunity Owner field is all grayed out, and won't stay there. What's the deal? [The screen shot looks like I'm not in the correct area to drag the field, but I'm dragging it into the "Drop a field here to group across report blocks." area.

Grouping Drop Zone Matrix Reports Not Working
I didn't write the below code, and am very new to understanding it.

I have a situation where an Apex job is designed to deliver multiple emails to an email contact at 5, 10, 15, and 30 days after the contact has been created. If the first email at 5 days post-contact creation is not sent, does that mean that the emails that are supposed to be sent at 10, 15, and 30 days will also not be sent by that same Apex job?

global class contact_Malpractice_SchedulableClass implements Schedulable {
     global void execute(SchedulableContext ctx) {
        CronTrigger ct = [SELECT Id, CronExpression, TimesTriggered, NextFireTime FROM CronTrigger WHERE Id = :ctx.getTriggerId()];
    OrgWideEmailAddress[] owea = [select Id from OrgWideEmailAddress where Address = 'network@example.com'];
      List<EmailTemplate> etList=[SELECT id,name FROM EmailTemplate WHERE name like 'Providers: Malpractice%'];
      Map<Integer,Id> etMap=new Map<Integer, Id>();
      for(EmailTemplate et:etList){
        if(et.name=='Providers: Malpractice Expires in 0 Days (Today)'){
        }else if(et.name=='Providers: Malpractice Expires in 15 Days'){
        }else if(et.name=='Providers: Malpractice Expires in 30 Days'){
        }else if(et.name=='Providers: Malpractice Expires in 45 Days'){
        }else if(et.name=='Providers: Malpractice Expires in 60 Days'){
        }else if(et.name=='Providers: Malpractice Past Due 15 Days'){
        }else if(et.name=='Providers: Malpractice Past Due 30 Days'){
        }else if(et.name=='Providers: Malpractice Past Due 45 Days'){
        }else if(et.name=='Providers: Malpractice Past Due 60 Days - Account Deactivated'){
    Id teamQueID=[select Id from Group where Name = 'Team Que' and Type = 'Queue'][0].Id;
    Id providerRelationQueID=[select Id from Group where Name = 'Provider Relations' and Type = 'Queue'][0].Id;
      List<Messaging.SingleEmailMessage> mails=new List<Messaging.SingleEmailMessage>();
      List <Case> caseList = new List<Case>();
    List<Contact> recipientList = [select id,TB_Profile_Display_State__c,AccountId,Malpractice_Expiration_Date_Days__c from contact where TB_Approval_State_on_Site__c='Active' and RecordType.Name='Provider Contact' and Malpractice_Expiration_Date__c!=null and Malpractice_Expiration_Date_Days__c IN (-90,-60,-45,-30,-15,0,15,30,45,60)];
    List<Contact> recipientUpdateList =new List<Contact>();
      for(Contact recipient:recipientList){
        Integer expirationDays=(Integer)recipient.Malpractice_Expiration_Date_Days__c;
        if((etMap.containsKey(expirationDays) && owea.size()>0)||expirationDays==-90){
          if(etMap.containsKey(expirationDays) && owea.size()>0){
            Id etID=etMap.get(expirationDays);
          Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
          if(expirationDays==0 || expirationDays==15 || expirationDays==-15 || expirationDays==-30 || expirationDays==-60 || expirationDays==-90){
              Case ca = new Case();
              ca.Status='Working (24 hr SLA)';
              ca.Origin='Scheduled Job';
                ca.Subject='Call Provider: Malpractice (COI) expires in 15 days';
              }else if(expirationDays==0){
                ca.Subject='Call Provider: COI Expires Today';
              }else if(expirationDays==-15){
                ca.Subject='Call Provider: COI Expired 15 Days Ago';
              }else if(expirationDays==-30){
                ca.Subject='Call Provider: COI Expired 30 Days Ago';
              }else if(expirationDays==-60){
                ca.Subject='Call Provider: COI Expired 60 Days Ago';
              }else if(expirationDays==-90){
                ca.Subject='Inactivate Provider Due to 90 Past Due COI';
      insert caseList;
      update recipientUpdateList;
For life of me I can't figure out what this exercise is asking to do.  I was able to modify other reports but this particualr R&D report, Temperature to kWh Research, I'm not able to do.  Error is keep saying, "We can’t find the additional analysis by model being performed on the 'Temperature to kWh Research' report. Remember that you can organize data horizontally and vertically at the same time."

User-added image


HI All,




I am trying to Integrate Salesforce with SOA Suite. 


Scenario is like this: Account created in Salesforce is sent to Oracle ERP using Oracle SOA Suite.


For this Scenario, I have enabled outbound messages using the Workflow Rule. Now I want to know how to setup SOA suite such that this message is received by SOA Suite.


What is the configuration to be done at SOA Suite.Please do let me know.


Thanks in advance.