Пустое значение в EnumControl или как выбирать Месяц и Год и формировать Дату для записи в БД

Как на OnPrepare окна задать что бы EnumControl (не завязанным на Data) был пустым
Так нужно для того что бы парсить дату которую получаем с БД, а по нажатию Ок писать дату, с которой мы по сути берем месяц и год
Код на OnPrepare

var Dataset = dlData.Dataset;  
        var DisposalDate = Dataset('DisposalDate');
        if (!IsEmptyValue(DisposalDate)) {
        enmMothDisposal.Value = enmMothDisposal.Enum.ItemsByID(String(new Date(DisposalDate).getMonth()));
        enmYearDisposal.Value = enmYearDisposal.Enum.ItemsByID(String(new Date(DisposalDate).getYear()));      
        }
        else
        {
        enmMothDisposal.Value = /*тут придумать так что бы было пусто*/;
        enmYearDisposal.Value = /*тут придумать так что бы было пусто*/;
        }

Просьба перед Вашим ответом убедиться самим что

enmYearDisposal.Value = null;
enmYearDisposal.Value = '';
enmYearDisposal.Value = new Object();
enmYearDisposal.Value = [];
enmYearDisposal.Value = 'undefined';
enmYearDisposal.Value = GUID_NULL;

Не работаеют, а свойства IsNull у EnumControl - не работает

Код на Ok

        var Dataset = dlData.Dataset;
       
        if (!IsEmptyValue(enmMothDisposal.Value) && IsEmptyValue(enmYearDisposal.Value)) {     
        MessageBox('Please fill Year);
        return;
        }
       
        if (IsEmptyValue(enmMothDisposal.Value) && !IsEmptyValue(enmYearDisposal.Value)) {     
        MessageBox('
Please fill Month');
        return;
        }
       
        if (!IsEmptyValue(enmMothDisposal.Value) && !IsEmptyValue(enmYearDisposal.Value)) {    
        var DisposalDate = new Date(String(enmYearDisposal.Value.ID),String(enmMothDisposal.Value.ID),1);
        Dataset('
DisposalDate') = DisposalDate.getVarDate();
        }

Без кода /*тут придумать так что бы было пусто*/ не обойтись так как OnPrepare срабатывает один раз и если 1 раз выбрать зн. тогда при открытии еще раз карточки значения подтянуться с предыдущей

Заранее спасибо
Бинарные файлы 3.3.2.288

Нравится

5 комментариев

P.S. Поле Value в EnumControl является объектом

Внимание, правильный ответ: enmYearDisposal.Value = System.EmptyValue

Вот, кстати, здесь Наташа когда-то писала.

Дмитрий, если будет настроение поискать: была тема когда-то на форуме, где обсуждалось как сделать Месяц и Год для задания даты. Если найдете, мой скрипт будет правильным дополнением

Альфа, ок, спасибо.

Показать все комментарии