|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
|||
|
|||
Ну что больше половины программы написал, все это было про добавление товаров, теперь мне нужно реализовать продажу.
Нужно сделать ввод данных из базы в новую табличку, даже не в одну а в несколько, так как дата продажи у меня хранится в одной таблице, а кол-во и т.п. в другой, это примерно так выглядит: Код:
insert into prodaga (Data_progaga) values ('12.05.05'); insert into prodannie_products (id_prodaga, id_product, kol_vo_prodannih_products, ckidka) values (1,6,'1','500'); но самое интересное, при продаже мне нужно в ранее упомянутой таблице product сделать kol_vo_na_sklade -n, где n=kol_vo_prodannih_products и это все меня опять в тупик толкнуло... Во первых, как связать 2а этих (в коде) запроса в один? |
#17
|
||||
|
||||
У вас два варианта решения. Написать хранимку на сервере, которая по заданным параметрам будет правильно все разносить по таблицам, или на клиенте заниматься тем-же.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#18
|
|||
|
|||
Вот так вот делаю Апдейт, не получается объединить 3 запроса (выполняется только первый) и сам запрос апдейта тоже не делается.. в чем загвоздка?
Код:
procedure TForm1.Button1Click(Sender: TObject); begin // Закрыть запрос //Form1.QueryDynamic.Close; Form1.ADOQuery1.Close; // Очистить массив строк для размещения // текста запроса //Form1.QueryDynamic.SQL.Clear; Form1.ADOQuery1.SQL.Clear; // Сформировать строку с текстом запроса sql:= Format('insert into prodaga (Data_progaga) values (''%s'');',[DateTimeToStr(DateTimePicker2.DateTime)]); sql2:= Format('insert into prodannie_products (id_product, kol_vo_prodannih_products, ckidka) values (%s,''%s'',''%s'');',[DBLookupComboBox3.KeyValue, DBEdit3.Text, Edit7.Text]); //sql3:= Format('UPDATE prodannie_products SET kol_vo_prodannih_products = kol_vo_prodannih_products + 1 where id_product=DBLookupComboBox3.KeyValue'); // Вывести текст запроса на экран application.MessageBox(PChar(sql), 'Текст запроса',MB_OK); application.MessageBox(PChar(sql2), 'Текст запроса',MB_OK); application.MessageBox(PChar(sql3), 'Текст запроса',MB_OK); // Добавить стоку с текстом запроса Form1.QueryDynamic.SQL.Add(sql); Form1.ADOQuery1.SQL.Add(sql2); Form1.ADOQueryUPDATE.SQL.Add(sql3); try // Выполнить запрос Form1.QueryDynamic.ExecSQL; Form1.ADOQuery1.ExecSQL; Form1.ADOQueryUPDATE.ExecSQL; // Обработать возможные ошибки // при выполнении запроса except application.MessageBox( 'Не могу выполнить запрос', 'Ошибка',MB_OK); end; Form1.DBGrid3.Refresh; end; |
#19
|
|||
|
|||
Переделал немного базу тебе у меня ошибка :
"Project Project1.exe raised exception class EClassNotFound with message 'Class TdateTimeField'. Use Step or Run to continue" в какую сторону капать не знаю, про TdateTimeField в коде не слова... |