
Формирование списка возможных значений столбца.
Свойство PickList объекта-столбца содержит список возможных значений столбца. Если это свойство заполнено, при редактировании ячейки столбца в ее правом углу появляется небольшая кнопка, нажатие на которую раскрывает список. Программист может заполнить это свойство как на этапе проектирования программы, так и при ее прогоне.
Это свойство особенно полезно, когда зависимые таблицы заполнены, а главную нужно заполнить значениями из зависимых.
Рассмотрим подробно на нашем примере.
Допустим нам надо чтобы щёлкая по полю KOD_TOVARA главной таблицы B, у нас выскакивал список возможных значений из подчинённой таблицы D.
Для этого сначала нам необходимо создать ещё один компонент Table5 и присвоить ему таблицу D.
Затем выделяем сетку таблицы B и заходим в events окна object inspector, и два раза щёлкаем по OnCellClick и в процедуре пишем код:
procedure TForm1.DBGrid2CellClick(Column: TColumn);
Var n:integer;
begin
N:=0;
While DBGrid2.Columns[n].FieldName<>'KOD_TOVARA' do
Inc(n);{ищем номер нужного столбца по имени поля}
With Table5 do {работаем со второй таблицей}
begin
DBGrid2.Columns[n].PickList.Clear;
First;{идем в начало:}
while not eof do {пока не дошли до конца таблицы}
begin
DBGrid2.Columns[n].PickList.Add(Table5KOD_TOVARA.AsString);
{заполняем список PickList значениями из другой таблицы}
Next;{переходим к след. записи.}
end;
end;
end;
Результат будет следующим…
Задание на лабораторную работу №3:
-
Доработать свою базу даны таким образом, чтобы при выборе какой-либо строки в таблице, значения определенного поля показывалось бы в отдельном месте экрана, например, в компонентt TEdit (закладка Standart)
-
При добавлении числовых данных в таблицу следить за границами вводимых значений, если введенное число не удовлетворяет условиям, то выдавать соответствующее предупреждение.
-
Сформировать список возможных значений столбца таблицы.