You need to sign in to do that
Don't have an account?
Sindhu Bandari
how to give a condition for inserting a record when case is created with certain record type
Hi, I need to create a record on a custom object when the new case is created with record type ombuds_record_type, I wrote the below code for insert trigger, I am getting below error
KSU_Ombuds_Snapshot: execution of AfterInsert caused by: System.NullPointerException: Attempt to de-reference a null object ()
can anyone help.
thanks in advance
public class KSU_Ombuds_Snapshot_Class {
public static void getContactSnapshot( List<Case> cas ) {
{
Set <id> cases =new set<id> ();
for (case caseid : cas)
if(caseid.RecordTypeId == Schema.SObjectType.Case.getRecordTypeInfosByName().get('Ombuds_Record_Type').getRecordTypeId())
{
{
cases.add(caseid.ContactId);
}
}
System.debug('joke ' +cases);
// get contact values given contactId, create a contact to hold
List<Contact> con = [SELECT Id, KSU_CumulativeGPA__c, AccountId, KSU_FinancialAid__c,
KSU_AccountBalance__c, KSU_EnrollmentStatus__c, KSU_StudentType__c,
KSU_CumulativeHours__c, KSU_Level__c, KSU_Current_Academic_Standing__c
FROM contact
WHERE Id in : cases];
List<KSU_Ombuds_Snapshot__c> snapshotrecords = New List<KSU_Ombuds_Snapshot__c>() ;
For(Case ombudcase : cas)
{
For(Contact ombudscon :Con)
{
// create a new instance of the Snapshot object
KSU_Ombuds_Snapshot__c cs = new KSU_Ombuds_Snapshot__c();
// Associate Contact, Account and Case to Snapshot object
cs.Name = 'Case Snapshot';
cs.KSU_Snapshot_Account__c = ombudscon.accountId;
cs.KSU_Snapshot_Contact__c = ombudscon.Id;
cs.KSU_OmbSnap_Case__c = ombudcase.Id;
cs.KSU_Snapshot_Cum_GPA__c = ombudscon.KSU_CumulativeGPA__c;
cs.KSU_Snapshot_FinancialAid__c = ombudscon.KSU_FinancialAid__c;
cs.KSU_Snapshot_AccountBalance__c = ombudscon.KSU_AccountBalance__c;
cs.KSU_Snapshot_EnrollmentStatus__c = ombudscon.KSU_EnrollmentStatus__c;
cs.KSU_Snapshot_StudentType__c = ombudscon.KSU_StudentType__c;
cs.KSU_Snapshot_CumulativeHours__c = ombudscon.KSU_CumulativeHours__c;
cs.KSU_Snapshot_Level__c = ombudscon.KSU_Level__c;
cs.KSU_Snapshot_Current_Academic_Standing__c = ombudscon.KSU_Current_Academic_Standing__c;
snapshotrecords.add(cs);
}}
try{
Insert snapshotrecords;
}
catch(DMLException e){
System.debug('Exception on class: KSU_Ombuds_Snapshot_Class, method: getContactSnapshot, getLineNumber Error : '+e);
}
}
}
}
KSU_Ombuds_Snapshot: execution of AfterInsert caused by: System.NullPointerException: Attempt to de-reference a null object ()
can anyone help.
thanks in advance
public class KSU_Ombuds_Snapshot_Class {
public static void getContactSnapshot( List<Case> cas ) {
{
Set <id> cases =new set<id> ();
for (case caseid : cas)
if(caseid.RecordTypeId == Schema.SObjectType.Case.getRecordTypeInfosByName().get('Ombuds_Record_Type').getRecordTypeId())
{
{
cases.add(caseid.ContactId);
}
}
System.debug('joke ' +cases);
// get contact values given contactId, create a contact to hold
List<Contact> con = [SELECT Id, KSU_CumulativeGPA__c, AccountId, KSU_FinancialAid__c,
KSU_AccountBalance__c, KSU_EnrollmentStatus__c, KSU_StudentType__c,
KSU_CumulativeHours__c, KSU_Level__c, KSU_Current_Academic_Standing__c
FROM contact
WHERE Id in : cases];
List<KSU_Ombuds_Snapshot__c> snapshotrecords = New List<KSU_Ombuds_Snapshot__c>() ;
For(Case ombudcase : cas)
{
For(Contact ombudscon :Con)
{
// create a new instance of the Snapshot object
KSU_Ombuds_Snapshot__c cs = new KSU_Ombuds_Snapshot__c();
// Associate Contact, Account and Case to Snapshot object
cs.Name = 'Case Snapshot';
cs.KSU_Snapshot_Account__c = ombudscon.accountId;
cs.KSU_Snapshot_Contact__c = ombudscon.Id;
cs.KSU_OmbSnap_Case__c = ombudcase.Id;
cs.KSU_Snapshot_Cum_GPA__c = ombudscon.KSU_CumulativeGPA__c;
cs.KSU_Snapshot_FinancialAid__c = ombudscon.KSU_FinancialAid__c;
cs.KSU_Snapshot_AccountBalance__c = ombudscon.KSU_AccountBalance__c;
cs.KSU_Snapshot_EnrollmentStatus__c = ombudscon.KSU_EnrollmentStatus__c;
cs.KSU_Snapshot_StudentType__c = ombudscon.KSU_StudentType__c;
cs.KSU_Snapshot_CumulativeHours__c = ombudscon.KSU_CumulativeHours__c;
cs.KSU_Snapshot_Level__c = ombudscon.KSU_Level__c;
cs.KSU_Snapshot_Current_Academic_Standing__c = ombudscon.KSU_Current_Academic_Standing__c;
snapshotrecords.add(cs);
}}
try{
Insert snapshotrecords;
}
catch(DMLException e){
System.debug('Exception on class: KSU_Ombuds_Snapshot_Class, method: getContactSnapshot, getLineNumber Error : '+e);
}
}
}
}
I am thining this Record type Id is thoughing error .. Go to developer console and execute this link in System .debug to see the value