D365 Business CentralDynamically hide and show fields according to a specific condition on a page in Dynamics NAV
We often have a requirement to dynamically hide or show fields on a page according to a certain condition. Setting visibility properties of the fields to ‘True’ or ‘False’ do not help as they do not work dynamically. They are only set when the page is opened initially.
In this article, I will be demonstrating the procedure to show or hide fields dynamically on a page according to a specific condition.
Microsoft Dynamics NAV 2017
This is the scenario that I was customizing. I was working on two types of contracts i.e. Rental and Lease contracts. The user has to select the contract type on the page. Now if the user selects ‘Rental Contract’ as the Contract Type then a certain set of fields should be visible to the user else, they should be hidden.
- The first step is to put all the fields that should be shown or hidden dynamically in a separate group on the page.
In the above screenshot, I have put all the fields that should be shown or hidden dynamically when ‘Rental Contract’ is selected in ‘Contract Type’ field which is an option field consisting of OptionString ‘Rental Contract and Lease Contracts for Uber and Non-Uber drivers’ under ‘Rental details’ group.
- Next, go to the properties of the group that contains the fields which should be dynamically hidden or shown i.e. properties of ‘Rental details’ group.
- Now in the visible property section, define the condition that triggers the fields to be dynamically shown or hidden.
- So, I have set the condition that when ‘Contract Type’ equals ‘Rental Contract’ then only ‘Rental details’ group should be visible i.e. I have written the condition as below:
“Contract Type”=”Contract Type”::”Rental Contract”
Below are the screenshots of my page:
The above shows the three options available for contract type.
So if Contract type ‘Lease contract for Non-Uber drivers’ or ‘Lease contract for Uber drivers’ is selected then the ‘Rental details’ group along the fields it contains are hidden.
The above screenshot shows that only if ‘Rental Contract’ is selected as ‘Contract Type’, only then the Rental details group and the fields it contains becomes visible.