Shareholders validation
Functional scope
Several persons may have shareholders : Company, Union, Division and Indivision person (see shareholder). Each shareholder is a person (of any kind), containing a number of share (expressed in %).
The goal here is to get a view of the % of completion rate of shareholders contained within a person : 100 %, or not. Based on this %, a dynamic "shareHolderStatus" can be determined.
This status will then be used to allow of not action(s)
For more details, see diagram
Note : division person comprises 2 statuses, one for bareOwner(s) and one for beneficiary(ies).
Rules
- if 100 % is reached, shareHolderCompletionStatus will be : COMPLETE
- if <>100%, shareHolderCompletionStatus will be : INCOMPLETE. Different of 100 % means that it could be of course less, but also more, due to a typo for instance. In that case, user can leave it as it is, but some further actions will be blocked. User therefore needs to correct the situation in order to get a COMPLETE status, which will free further actions.
Example of usage : a union person with less than 100% (meaning there is only one spouse, or the total of shares is not equal to 100%) can not be used in a owner contract, because its shareHolder status will be incomplete.