![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
И снова здравствуйте!
Во-первых хочу еще раз поблагодарить все тех кто отзывается на описываемые проблемы, земной вам всем поклон. Теперь суть новой проблемы. В DBGrid (таблица OsSklad)выделяется строка, в ней есть поле Ostatok(хранит целые числа количества товара). Эту строку по нажатию на кнопку надо перенести в другую таблицу (Mag1 или Mag2, выбираются в ComboBox), предварительно в Edit-е указав количетво переносимого товара, если остаток товара в исходной таблице равен 0 то строка удаляется. Одновременно с Mag1 или Mag2 строка товара добавляется в таблицу SProd, в которой будет хранится сумма остатка одного и того же товара из двух магазинов. Вот примерно так. Задача немаленькая, поэтому буду рад любой помощи. Заранее спасибо! ![]() |
|
#2
|
||||
|
||||
|
В целом принцип:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
q: TADOQuery;
begin
q:= TADOQuery.Create(nil);
q.Connection:= ADOConnection1;
if DBGrid.DataSource.DataSet.FieldByName('Ostatok').AsInteger <> 0 then
begin
//вставка в Mag
q.SQL.Text:= 'insert into '+ComboBox1.Text+' (...) values (...)';
q.SQL.ExecSQL;
//вставка в SProd
q.SQL.Text:= 'insert into SProd (...) values (...)';
q.SQL.ExecSQL;
end;
//из OsSklad удаляем по любому
q.SQL.Text:= 'delete from OsSklad where id = '+DBGrid.DataSource.DataSet.FieldByName('id').AsString;
q.ExecSQL;
q.Free;
end; |
|
#3
|
|||
|
|||
|
Это с ADO, а с BDE (Paradox) тоже самое? Там наверное ADOConection уже не нужен?
|
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
|||
|
|||
|
А к выбраной строке Grid как обратится?
|
|
#6
|
||||
|
||||
|
Цитата:
|