Скрипты
Разработка

Автовыбор выпадающего списка

У меня есть таблица с полями ID и Name. По ней я создал sq_Query, который выбирает данные. По sq_Query я создал ds_Query, в котором в качестве запроса на выборку указал sq_Query.
Далее я создаю на некоей форме невизуальный елемент dlData, в котором в качестве Dataset указываю ds_Query. Дальше я создаю елемент Lookup Control, в котором в качестве LookupDatasetLink указываю dlData и IsSimpleSelect устанавливаю в True.
Я хочу, чтобы при отображении формы в елементе с выпадающим списком отображался первый елемент выборки.
Как ето сделать?

Нравится

4 комментария

Можно в форму в OnPrepare что-то типо такого написать:
[code]
if (dlData.Dataset('ID') == null) {
var QueryDataset = Services.GetNewItemByUSI('ds_Query');
QueryDataset.Close();
//Добавляем фильтры, если надо
QueryDataset.Open();
QueryDataset.GoToFirst();
if (!QueryDataset.IsEOF) {//Если вдруг не найдет, то ничего не делаем
dlData.Dataset('ID') = QueryDataset('ID');
}
}
[/code]
Надеюсь мой код более менее поможет

Я так понял, что установка текущего значения сводится к присвоению ID.
Я создал две кнопки. Одна устанавливает значение, другая проверяет:

[javascript]
function ButtonOnClick(Control) {
//TODO
dlSignatures.Dataset.Open();
dlSignatures.Dataset('ID') = '{0A95DB2D-E91A-456B-B7AF-91DE090D7AA9}';
ShowInformationDialog(dlSignatures.Dataset('ID'));
}

function Button1OnClick(Control) {
//TODO
ShowInformationDialog(dlSignatures.Dataset('ID'));
}
[/javascript]

Вторая кнопка всё правильно показывает. но в елементе так и не отображается значение. Может его самого как-то "дёрнуть" надо?

Всё, нашёл.
LookupControl у меня зовётся elControl:

[javascript]
elControl.Value = dlQuery.Dataset('Name'); //Вместо Name нужно указать поле, к которому елемент привязан
[/javascript]

если вам нужно

"Малахов Дмитрий" написал:чтобы при отображении формы в елементе с выпадающим списком отображался первый елемент выборки.

то надо на событие AfterAppend датасета поставить значение по-умолчанию для этого поля

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