|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
TClientDataSet нужна помощь
Здравствуйте.
На форме стоит TPageControl. Есть база. Доступ через TClientDataSet. В базе присутствует поле ItemType. На страницах TPageControl - таблицы. В зависимости от того, какая страница TPageControl выбрана, необходимо полю ItemType присваивать значение по умолчанию. Например если выбрана PageControl1.ActivePage = TabSheet1, то в поле ItemType при добавлении новой записи должно автоматом заноситься '1' Все поля в TClientDataSet добавлял через FieldDefs. Но вот как сделать присвоение определённому полю в определённых условиях значение по умолчанию - так и не могу разобраться. При попытке добавления полей в FieldsEditor выдаёт "ClientDataSet1: Missing data provider or data packet". А без добавления полей не получается ClientDataSet1ItemType.DefaultExpression := '1' Возможно сильно сумбурно написал вопрос... |
#2
|
||||
|
||||
создать обработчик события AfterInsert у ClientDataSet:
Код:
begin ClientDataSet1.FieldByName('id').AsInteger:=PageControl1.ActivePageIndex; { case PageControl1.ActivePageIndex of 0: ClientDataSet1.FieldByName('id').AsInteger:=999; 1: ClientDataSet1.FieldByName('id').AsInteger:=888; 2: ClientDataSet1.FieldByName('id').AsInteger:=777; end; } end; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
Uroboros (09.11.2012)
|
#3
|
|||
|
|||
Спасибо. Работает!
|