Здравствуйте!
В функции GetLookupDatasetFieldValue (scr_DB) стоило бы прописать отключение фильтра, строку
ApplySelectQueryFilter(SelectQuery, 'ID', IDValue, false);
перед выходом из функции, поскольку это сказывается при повторном поиске для поля, которое передается первым параметром.

Нравится

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

А в чем проблема? Этот фильтр включать всегда ведь нужно, а значения параметра (IDValue) может быть разным.

Например, для контактов при попытке выборе другого контакта, в окне wnd_SelectGridArea показывается только тот контакт, который был выбран ранее, хотя критерии выбора не задаются. Выбор становится невозможным.

Владимир, уточните, пожалуйста, версию бинарников, и поподробнее как воспроизвести (какая карточка, какое поле).

Здравствуйте Дмитрий!
Мне нужно анализировать входящие звонки. В карточке входящего звонка есть флажок "Запрос с сайта" (WebReq) и поле LookupDataControl ContactID - ID абонента. Нужно, чтобы для абонента был обязательным адрес E-Mail (Communication4), если включен флажок "Запрос с сайта". Я это реализовал в карточке звонка. Предусмотрел обработчик события dlDataOnDatasetBeforePost:

if (Dataset.ValAsBool('WebReq')) {
var EMail = GetLookupDatasetFieldValue(Dataset.DataFields('ContactID'), 'Communication4');
if (IsEmptyValue(EMail)) {
ShowErrorDialog('Не указан E-Mail абонента');
DoPost.Value = false;
IncommingCallsEdit.Result = DoPost.Value;
}
}

Первый раз отрабатывает нормально, но при повторном использовании происходит то, что я описал.

Добрый день, Владимир!

Спасибо, передадим информацию в департамент разработки.

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