Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как добавлять и редактировать записи при помощи datagride  (Прочитано 14899 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« : 17-12-2003 06:04 » 

Суть проблемы:
хочу редактировать данные как в акцесе прям в гриде.

Веру adodc и datagride, вы бираю даные
таблица
Код:
CREATE TABLE [dbo(.[twk_norm_t_lost( )
[id_row( [int( IDENTITY )1, 1: NOT NULL ,
[id_diam( [int( NOT NULL ,
[id_t_gr( [int( NOT NULL ,
[id_inst( [int( NOT NULL ,
[Q_m_h( [float( NULL
:

Выбираю из нее данные
Код:
select diam, Q_m_h from tlost where id_inst=3 and id_t_gt =1

С редактированеим проблем нет а вот добавлять новые записи не получается

Проблема втом что не знаю как подставить значения для полей
   [id_t_gr] [int] NOT NULL
   [id_inst] [int] NOT NULL
по умалчанию контрол пытается воткнуть туда NULL
Где через какой метод или свойство это можно сделать?
Записан

Да да нет нет все остальное от лукавого.
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #1 : 17-12-2003 06:10 » 

Событие OnAddNew()
проверяешь значения и подставляешь в рекордсете то, что тебе надо
Записан

I Have Nine Lives You Have One Only
THINK!
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 17-12-2003 06:19 » 

Это у какого контрола?
Чтото я его ни у adodc ни у datagride не вижу(
Записан

Да да нет нет все остальное от лукавого.
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #3 : 17-12-2003 06:27 » 

Visual Basic: DataGrid Control
OnAddNew Event


PS; Microsoft DataGrid Control 6.0 (SP5)(OLEDB)
MSDATGRD.OCX
Записан

I Have Nine Lives You Have One Only
THINK!
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 17-12-2003 06:34 » 

Нету такого есть Afterinsert и beforinsert, какой вестии у тебя MDAC и сами компоненты?
Записан

Да да нет нет все остальное от лукавого.
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #5 : 17-12-2003 06:41 » 

используй beforinsert для своего, так тоже делал
Записан

I Have Nine Lives You Have One Only
THINK!
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #6 : 17-12-2003 06:53 » 

Ты не понял вопрос, я знаю про эти события я не могу понять как мне добраться до этой новой записи и подставить значения...
Записан

Да да нет нет все остальное от лукавого.
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #7 : 17-12-2003 15:02 » 

до редактирования срабатывает событие beforinsert,
но запись находиться в неком внутреннем буфере. По окончании редактирования происходит событие beforupdate, где можно изменить некоторые данные

Код:
    Dim rstmp As ADODB.Recordset

    Set rstmp = TDBGrid1.DataSource
    rstmp![имя поля(= "Значение"

но сама запись попадает в базу (если я правильно понял), только после события afterupdate

попробуй
Записан

I Have Nine Lives You Have One Only
THINK!
Dusk
Команда клуба

ru
Offline Offline
Пол: Мужской
Редкий, но веселый вид


« Ответ #8 : 18-12-2003 06:00 » 

PSD,  что-то я не нахожу такого компонента DataGrid...
Записан

Человек, сделавший хотя бы шаг к цели, сразу становится мишенью для всех отставших
Опыт - это то, что появляется сразу после того, как он был так необходим...
Бывают минуты, когда у тебя есть секунды, чтобы исправить деланное часами и не получить последствия на годы...
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #9 : 18-12-2003 06:59 » 

DataGrid Control
Displays and enables data manipulation of a series of rows and columns representing records and fields from a Recordset object.

у меня этот контрол находиться в
Microsoft DataGrid Control 6.0 (SP5)(OLEDB)
MSDATGRD.OCX
Записан

I Have Nine Lives You Have One Only
THINK!
HandKot
Молодой специалист

ru
Offline Offline

« Ответ #10 : 18-12-2003 07:03 » 

PSD,
кстати, можно попробовать в дизайнере таблиц для полей выставлять дефолтные значения.
Записан

I Have Nine Lives You Have One Only
THINK!
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 18-12-2003 09:21 » new

Вроде разобрался спасибо.
Записан

Да да нет нет все остальное от лукавого.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines