function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
TMangoTMango 

Blank Default Case Record Type

We are having an issue with users selecting the wrong case record type, because rather than selecting one they simply choose the default.  Because they may need to submit cases under different record types, we don't want to remove the other options --- but want them to have to CHOOSE which type of case to submit.

 

Is there a way to have NO record type as the default for specific profiles?  I have tried to delete the record type from the default with no luck and just am not sure whether I'm missing something.  Or, is there a way to create an option for

--- Choose Record Type ---

 

that forces them to choose the right one?

Ispita_NavatarIspita_Navatar

The moment you create record types , you will have to specify a default record type for each profile.

Probably a workaround would to :-

1. Create a record type called "other" and  set it as the default record type for the group of people who select the wrong record type or donot select record type at all.

 

2. The other way would be to set the preferred record type from the personal information section of these users, that way even if they don't select a record type , the preferred record type will get selected.

 

Did this answer your question? If not, let me know what didn't work, or if so, please mark it solved.

 

b-Forceb-Force

I read your problem in some different way, Your users are not able to select correct recordtype while submitting Case.

 

We can simply bypass recordtype  selction page. we can populate recordtype in background [passing as URL parameter ]

 

As we can initiate case creation from number of places like

  • Related list of account, contact , Opportunity , lead ... and many more
  • New case Button

I am explaining this scenario for New Case button

 

Overide New Case Button by anather custom button with Content source as Execute Javascript,

Inside Javascript select appropriate recordtype,

 

Mainly select different recordtype based on Logged in Users Profile

 

Javascript code

window.location='/500/e?RecordType=CASE_RECORDTPE_ID&retUrl=';

 

 here CASE_RECORDTPE_ID  is your selected recordtype id

 

It will direectly redirect to new case create page ..[Recordtype is selected internally ]

 

If you face any issue implementing this solution  please post here

 

Also please post  your  recordtype selection criteria .. Profile based

 

Check this post for more help

 

Hope this will help you..

 

Thanks ,

Bala

TMangoTMango

HI ISPITA and BALA - Thanks for your responses.  We do have to have the option to SELECT a record type, as the users may need to create cases using different ones each time.   Each record type is routed to a different team. The problem is that they are accepting the default rather than finding the record type in the list that matches the team they need to engage. 

 

Regarding Ispita's suggestions:

 

1./ I like this idea --- creating a record type of "Other" ... we'd probably call it "Choose Record Type" ... but the problem is that we don't want them to be able to select this record type. We'd like it to appear in the list, but have an error message pop up if they choose it and click Continue, stating that they need to select a valid record type.

 

2./ Setting the default in the personal information doesn't work for us, because they do need access to select other record types. The problem is that we have record types A, B, C and D. At one point or another, the user may need to create a case with one of these ... but we default A and therefore even if they SHOULD select B or C, they are just hitting Continue and creating the case on the default.

 

I think that if we could make #1 work, it would be best ... but I have a feeling that this can't be done ... so that's okay ... I just wanted to make sure I checked with the "experts" before I told the groups for sure.

SunilSunil

It is not possible to make NO record type as the default in the profile. You can write validation rule which can validate data based on Record type selected and you can prompt user to choose correct record type based on inputs so they will not be able to create Case until they have correct values.

 

Thanks.

TMangoTMango

Can you put that validation rule BEFORE the case opens even?  Because that would work ... but it would need to happen when they click Continue, not after they got into the case and then tried to save.

b-Forceb-Force

Adding validation  rule or Trigger will fire only when user Hit save button,

 

It is not possible to validate anything on recordType Selction page.  

 

Still there is a probable solution to validate recordType slection,

Overide new bitton with some  VF page .... This page will be similar to standard selectRecordType page,

*** In this approach there is no any need to create any additional record type

 

1) Here you can populate only these  options that you want

2)Do validation

3) And then redirect it to  this URL  '/500/e?RecordType=CASE_RECORDTPE_ID'

After selecting proper recordType Salesforce redirect to this page & pass selected record type as parameter

I think this approach will help you. [I am just trying to explore all the possible way to achive functionality ]

 

Thanks,

Bala

b-Forceb-Force

while populating recordtypes On VF page you can use following calls and Validation  to  check are these recordtype are available for this user

 

Schema.DescribeSObjectResult describeCase = Schema.SObjectType.Case;
List<Schema.RecordTypeInfo> rtInfos = describeCase.getRecordTypeInfos();
for(Schema.RecordTypeInfo rtInfo : rtInfos) {
if(rtInfo.getName() != 'Master' && rtInfo.isAvailable()) 

{

// Only populate those options which are available for user 

//Also you can remove some RT by putting some additional custom filter

}
}

 

 

Thanks,

Bala

 

SunilSunil

We cannot put validation rule BEFORE the case opens. In this case, we need to know the value before we validate.