Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics CRM forum
Answered

Trying to conditionally set view of a subgrid based on Option set on form

Posted on by 385

Hi I'm trying to get a subgrid on my form to change views depending on a option set selection.

I am using

function fnChangeViewOfSubgrid(ExecutionContext) {
	"use strict";
	var oFormContext = executionContext.getFormContext();
	var Practice = oFormContext.getAttribute("new_practices").getValue();
	var viewSelector = oFormContext.getControl("Opportunities").getViewSelector();
	if(Practice != null) {
		Switch(Practice) {
			Case 100000005: var PracticeView = {
				entityType: 1039,
				id: "4F671F67-9D35-EB11-A813-000D3A347311",
				name: "Engineering Practice - Active Opportunities"
			};
			viewSelector.setCurrentView(PracticeView);
			default: var PracticeView = {
				entityType: 1039,
				id: "00000000-0000-0000-00AA-000010003006",
				name: "Closed Opportunities"
			};
			viewSelector.setCurrentView(PracticeView);
		}
	}
}

But it isn't working.

I've tried various online javascript validators but they are saying I'm missing semicolons? But I don't see it?

Does anyone else see what I'm doing wrong or have a better way?

Thanks,

Terry

  • Mattw112b Profile Picture
    Mattw112b 385 on at
    RE: Trying to conditionally set view of a subgrid based on Option set on form

    Thanks,

    Turns out I had other capitalization issues too...

    Working now

    function fnChangeViewOfSubgrid(executionContext) {

    var oFormContext = executionContext.getFormContext();

    var SelectedPractice = oFormContext.getAttribute("new_practices").getValue();

    var viewSelector = oFormContext.getControl("Opportunities").getViewSelector();

    if (SelectedPractice !== null) {

    switch (SelectedPractice) {

    case 100000005:

    var PracticeView = {

    entityType: 1039,

    id: "4F671F67-9D35-EB11-A813-000D3A347311",

    name: "Engineering Practice - Active Opportunities"

    };

    viewSelector.setCurrentView(PracticeView);

    break;

    default:

    var PracticeView = {

    entityType: 1039,

    id: "00000000-0000-0000-00AA-000010003006",

    name: "Closed Opportunities"

    };

    viewSelector.setCurrentView(PracticeView);

    break;

    }

    }

    }

  • Verified answer
    Fubar Profile Picture
    Fubar 2,750 on at
    RE: Trying to conditionally set view of a subgrid based on Option set on form

    Switch and Case should be all lower switch and case

    and you should break; at the end of each case block (unless you want both case and default code blocks to run)

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Anton Venter – Community Spotlight

Kudos to our October Community Star of the month!

Announcing Our 2024 Season 2 Super Users!

A new season of Super Users has arrived, and we are so grateful for the daily…

Dynamics 365 Community Newsletter - September 2024

Check out the latest community news

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 290,552 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 228,552 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,148

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans