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