4

Requirement

From Case list View, user will choose one or more cases and will click on "Update Due Date" button, where it will show a screen to choose the "Due Date".

Case List

Due Date screen

due date screen

And finally flow will parse the caseIds and update all the cases with the selected due date.

  • Since my 'answer' was deleted, I now have to post a comment. I would use the Mass list update function. It's already built in, just be sure you have the same record type as the list criteria and turn on enhanced lists. – Fifedog Mar 21 '17 at 16:23
  • You can put that in answer with details it that helps to someone, I have answered this as a purpose of knowledge sharing – Santanu Boral Mar 21 '17 at 16:40
  • 1
    your solution is awesome by the way, however, does this work in Lightning? I'm assuming not? – Fifedog Mar 21 '17 at 16:52
  • I have done in Classic only, not tested in Lightning. I will also look for that. You can give a try and post your answer as well. – Santanu Boral Mar 21 '17 at 17:08
5

Create a List View Custom button and use this code to pass parameters to the flow.

Flow parameters:

vSelectedCaseIds which contains case ids collection which can be found from {!GETRECORDIDS($ObjectType.Case)}.

vCaseCount which contains number of selected case id count.

retURL where it will be landed after completion.

{!RequireScript("/soap/ajax/29.0/connection.js")}

var caseObj = new sforce.SObject("Case");
var selectedCases = {!GETRECORDIDS($ObjectType.Case)}; //chosen records from list view checkboxes

//check at-least one record is selected
if (selectedCases[0] == null) {
   alert("You must select at least one record");
} else 
{
    var serverUrl = '{!$Api.Partner_Server_URL_260}';
    var position = {!FIND( '/services', $Api.Partner_Server_URL_260)};
    var base = serverUrl.substring(0,position-1);

    var url = base +encodeURI('/flow/Update_Due_Date?vSelectedCaseIds=' + selectedCases +  '&vCaseCount=' + selectedCases.length +  '&retURL=/500/o');

    window.open(url, '_self');
}

The complete flow will look like this:

Flow designer update cases

Step by step process:

  1. Screen

choose due date

  1. Decision - Check Case Counter size

Check Case Counter size

  1. Assignment - Retrieve Single Case Id from param

Retrieve Single Case Id from param

caseIdFormula - LEFT({!vRemainingCaseIds}, 15)

  1. Assignment - Assign values to Case Object

Assign values to Case Object

Where varSObjectCase is SObject input and output variable

  1. Assignment - Add All Case Objects

Add All Case Objects

Where All_Case_Sobjects is SObject Collection variable

  1. Assignment - Retrieve Remaining CaseIds

Retrieve Remaining CaseIds

Remaining_CaseIds - Formula

TRIM(
RIGHT({!vRemainingCaseIds}, (LEN({!vRemainingCaseIds})-16))
)
  1. Decision - If Counter less than vCaseCount

If Counter less than vCaseCount

  1. Fast Update

Fast Update

  1. Success

Success

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.