Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.06.2009, 13:30
andruxa-forever andruxa-forever вне форума
Прохожий
 
Регистрация: 19.05.2009
Адрес: Челябинск
Сообщения: 18
Репутация: 10
Восклицание Помогите срочно!!!!!

У меня на форме есть поля по которым я заполняю базу.Когда добавляю новую строку и начинаю заполнять поля....Эта пустая строка удаляется.
Ответить с цитированием
  #2  
Старый 17.06.2009, 13:45
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Ну непонятно же... Спилберг.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #3  
Старый 17.06.2009, 14:34
andruxa-forever andruxa-forever вне форума
Прохожий
 
Регистрация: 19.05.2009
Адрес: Челябинск
Сообщения: 18
Репутация: 10
По умолчанию

Нажимаю на кнопочку "Добавить"
- DataModule2.ADOTable1.append(добавил новую строку.....)
Начинаю заполнять Editы......

Эта новая строка из сетки исчезает.....
А на кнопке "Сохранить" стоит код
with dataModule2.ADOTable1 do begin
edit;
fieldbyname('№_человека').AsVariant:=Edit5.Text;
fieldbyname('Фамилия').AsString:=Edit10.Text;
fieldbyname('Имя').AsString:=Edit9.Text;
fieldbyname('Отчество').AsString:=Edit6.Text;(сохр анение)

А раз новая строка исчезла, он редактирует предыдущую.......
Ответить с цитированием
  #4  
Старый 17.06.2009, 15:00
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Вот рабочий примерчик. Попробуйте.
Код:
unit Unit27;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids, DBGrids, DB, DBClient, Mask, DBCtrls;

type
  TForm27 = class(TForm)
    ClientDataSet1: TClientDataSet;
    ClientDataSet1id: TAutoIncField;
    ClientDataSet1F1: TStringField;
    ClientDataSet1F2: TStringField;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Button1: TButton;
    Button2: TButton;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form27: TForm27;

implementation

{$R *.dfm}

procedure TForm27.Button1Click(Sender: TObject);
begin
 ClientDataSet1.Append;
end;

procedure TForm27.Button2Click(Sender: TObject);
begin
 ClientDataSet1.FieldValues['F1'] := Edit1.Text;
 ClientDataSet1.FieldValues['F2'] := Edit2.Text;
 ClientDataSet1.Post;
end;

end.

dfm
Код:
object Form27: TForm27
  Left = 0
  Top = 0
  Caption = 'Form27'
  ClientHeight = 226
  ClientWidth = 561
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  PixelsPerInch = 96
  TextHeight = 13
  object DBGrid1: TDBGrid
    Left = 8
    Top = 64
    Width = 457
    Height = 153
    DataSource = DataSource1
    TabOrder = 0
    TitleFont.Charset = DEFAULT_CHARSET
    TitleFont.Color = clWindowText
    TitleFont.Height = -11
    TitleFont.Name = 'Tahoma'
    TitleFont.Style = []
  end
  object Button1: TButton
    Left = 480
    Top = 64
    Width = 75
    Height = 25
    Caption = 'New'
    TabOrder = 1
    OnClick = Button1Click
  end
  object Button2: TButton
    Left = 480
    Top = 96
    Width = 75
    Height = 25
    Caption = 'Post'
    TabOrder = 2
    OnClick = Button2Click
  end
  object DBEdit1: TDBEdit
    Left = 88
    Top = 37
    Width = 178
    Height = 21
    DataField = 'F1'
    DataSource = DataSource1
    TabOrder = 3
  end
  object DBEdit2: TDBEdit
    Left = 272
    Top = 37
    Width = 177
    Height = 21
    DataField = 'F2'
    DataSource = DataSource1
    TabOrder = 4
  end
  object Edit1: TEdit
    Left = 145
    Top = 8
    Width = 121
    Height = 21
    TabOrder = 5
    Text = 'Edit1'
  end
  object Edit2: TEdit
    Left = 272
    Top = 8
    Width = 121
    Height = 21
    TabOrder = 6
    Text = 'Edit2'
  end
  object ClientDataSet1: TClientDataSet
    Active = True
    Aggregates = <>
    Params = <>
    Left = 88
    Data = {
      7E0000009619E0BD0100000018000000030000000000030000007E0002696404
      0001000000010007535542545950450200490008004175746F696E6300024631
      0100490000000100055749445448020002003200024632010049000000010005
      574944544802000200320001000C4155544F494E4356414C5545040001000100
      0000}
    object ClientDataSet1id: TAutoIncField
      DisplayWidth = 12
      FieldName = 'id'
    end
    object ClientDataSet1F1: TStringField
      DisplayWidth = 36
      FieldName = 'F1'
      Size = 50
    end
    object ClientDataSet1F2: TStringField
      DisplayWidth = 34
      FieldName = 'F2'
      Size = 50
    end
  end
  object DataSource1: TDataSource
    DataSet = ClientDataSet1
    Left = 128
  end
end
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 17.06.2009, 15:08
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Он и будет редактировать текущую запись, у тебя ж в кнопке "Сохранить"- EDIT; Напиши Append - Post и будет счастье...
Ответить с цитированием
  #6  
Старый 17.06.2009, 15:33
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Точно, 3 раза просмотрел этот код, а слона-то незаметил.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #7  
Старый 17.06.2009, 16:10
andruxa-forever andruxa-forever вне форума
Прохожий
 
Регистрация: 19.05.2009
Адрес: Челябинск
Сообщения: 18
Репутация: 10
По умолчанию

Я поставил на кнопку "Сохранить" Append вместо Edit,
Когда я нажал на кнопку "добавить",
заполнил всю информацию...то она заполнилась не в ту строку которую я добавил, а в новую, а та осталась пустая.........
Ответить с цитированием
  #8  
Старый 17.06.2009, 16:52
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Ну вы мой пример-то посмотрите.
Последовательность такая:
Append // создается новая запись
заполняем ее поля данными
Post // записываем данные в БД

или если надо редактировать

Edit // открывает текущую запись для редактирования
заполняем ее поля данными
Post // записываем данные в БД
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:15.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter