This Article has been submitted by Deepak S Kumar. This article describes how to use Count Function in calculated field involving MVL link to count number of child records for a BC and then base our conditions on that to fullfill our requirement.
Very often we have scenarios where conditions has to be set based on the count or number of records in child BC. This can be achieved using the function Count(“MVL Link”) in a Calculated expression and setting conditions with help of user properties. Let’s understand it with help or a Requirement.
Requirement:
A field “Currency “ in “Opportunity” BC should be read only based on the number of records in child BC “Service Agreement “. If the agreement child record count > 0 then Currency should be read only and it should be editable if the child record count = 0
Solution:
Count (“MVL Link”) used as an expression in a calculated field returns the number of records in child BC.
Following configuration in Tools is required to achieve the above functionality:
» For the “Opportunity” Business component, create the Multi Value Link record “Service Agreement” and set the following property for the record: Destination Link = ” Opportunity/Service Agreement ”
» Add following fields to “Opportunity “ Business Component.
Name: Service Agreement Count
Calculated: True
Calculated Value: Count (”Service Agreement”)
Name: Currency Read Only Flag
Calculated: True
Calculated Value: IIF ([Service Agreement Count] = 0, “N”, “Y”)
» Add following BC User Property to Opportunity Business component to make Currency Field Read only
Name: Field Read Only Field: Currency
Value: Currency Read Only Flag
This will make “Currency” Field editable only when Agreement record count = 0 and read only if agreement count > 0.

(6 votes, average: 4.5 out of 5)
10 Comments at "Count (”MVL Link”) - reducing scripting"
[...] Count (”MVL Link”) - reducing scripting [...]
very nice article.thanks.
thanks Ranjith for ur
encouraging comments.
Hi.. How do we count the number of child records in a 1:M relationship
I thought the article was dealing with M;M relation because 1:M relations do not have an MVL.. please excuse me if I misunderstood
Opportunity field should be read only if the number of child records in Service Agreement BC is greater than zero.
An MVL uses Link and based on that we have MVF fields in parent BC pulling Child record information so the above solution is valid for 1:M relations also.
Just create an MVL in parent BC and use Count function to get the number of child records
Thanks Neel… for the clarification
Hi Neel,
Just to add to your post..
i have experience performance hit while using count MVL..So if we plan to use such calc fields ..the count shoud use an MVL based on thin child BC..
It helped us a lot..!
NS
count mvl has performance issues too. it has to be done on lighter bc.
Comment Now!