Поле IsReadOnly = true

Добрый день.

function SetActualStartDate() {
                if (BaseDBEdit.Dataset.Values('StatusID') == '{FB10FCB1-DE0E-446D-81E8-A0C456E2C3AB}')
                        {
                                var Value = null;
                                BaseDBEdit.Dataset.Values('ActualStartDate') = Value;
                                BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=true;
                        }
                else if (BaseDBEdit.Dataset.Values('ActualStartDate') == null)
                {
                        if (BaseDBEdit.Dataset.Values('StatusID')== '{9E289E42-9A0E-4A9C-A57F-049754310D95}' )
                                                {
                                                    BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=false;
                                                        var Today = new Date();
                                                        var Value = Today.getVarDate();
                                            BaseDBEdit.Dataset.Values('ActualStartDate') = Value;
                                                }
                        else if   (BaseDBEdit.Dataset.Values('StatusID')==
                                                                ('{F598ECDB-4EEF-4FA8-9E69-A36B053501E5}' || '{9A74B908-9FA8-4CC3-8916-BC3D2798AC3A}'))
                                    {
                            BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=false;
                                                        var Today = new Date();
                                                        var Value = Today.getVarDate();
                                                        BaseDBEdit.Dataset.Values('ActualStartDate') = Value;
                                                }
                }
}

Написал следующую функцию, в зависимости от состояния задачи выставляет значения полей. В скрипте указано свойство BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=false;
Но есть одно но, если я меняю в одной из многих задач состояние например на "В работе", то во всех остальных задачах меняется BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=false; на true
Как сделать так, чтобы условие работало для конкретной задачи

Нравится

1 комментарий

Спасибо, разобрался.
Повесил дополнительную проверку на датасет.
dlDataOnDatasetDataChange

if (BaseDBEdit.Dataset.Values('StatusID') == '{FB10FCB1-DE0E-446D-81E8-A0C456E2C3AB}')
{
	BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=true;
}
else
{
	BaseDBEdit.Dataset.DataFields.ItemsByName('ActualStartDate').IsReadOnly=false;
}
Показать все комментарии