Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.52/46: Рейтинг темы: голосов - 46, средняя оценка - 4.52
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134

Запрос по вычислению суммы заказа

18.01.2023, 10:25. Показов 10520. Ответов 188
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С помощью запроса вычислить сумму заказа которая будет вставляться в таблицу Журнал заказов в поле "Итог" нажатием кнопки "Рассчитать итог". Суммой заказа будет являться сумма полей "Итог" из таблицы Заказы, с одинаковым номером заказа. То есть клиент заказывает несколько блюд и в итоге получается итоговая сумма.
Вложения
Тип файла: zip Программа.zip (550.0 Кб, 20 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.01.2023, 10:25
Ответы с готовыми решениями:

Sql запрос на вывод суммы заказа
Здравствуйте, необходимо создать запрос, что бы выводилась сумма одного заказа, а не всех. В заказе может быть несколько наименований...

Запрос: подсчёт суммы заказа и вывод итога в поле
Добрый вечер. Нужна помощь с подсчётом суммы заказа. Даны для этого две таблицы: "Товар", где есть поле "Цена...

Проверка суммы нового заказа с остатком суммы договора
Приветствую форумчане! Не откажите в помощи. Нахожусь в самом начале изучения Access. Переделал под свои условия базу Борей. --У...

188
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
21.01.2023, 11:11  [ТС]
Студворк — интернет-сервис помощи студентам
Хорошо, проверю

Добавлено через 40 минут
Я проверила, результат итога в "Заказах" появляется в таблице только после перезапуска программы
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
21.01.2023, 11:33  [ТС]
Кидаю программу, можете посмотреть интерфейс официанты, итог отображается в программе после перезапуска, хотя в бд он рассчитывается(
Вложения
Тип файла: zip Proga1.zip (549.8 Кб, 3 просмотров)
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
21.01.2023, 17:31  [ТС]
Извините, скинула не тот архив, вот этот
Вложения
Тип файла: rar Proga.rar (413.9 Кб, 2 просмотров)
0
127 / 107 / 21
Регистрация: 23.05.2015
Сообщений: 705
21.01.2023, 20:19
Лучший ответ Сообщение было отмечено heatingtea как решение

Решение

Хорошо, а чем мой вариант из модуля администратора в разделе заказы не устроил?

Добавлено через 7 минут
Хотя подождите, вот вам простое решение проблемы:
Delphi
1
2
3
4
5
6
7
procedure TForm2.Button18Click(Sender: TObject);
begin
 DataModule1.ADOQuery5.FieldByName('Цена').AsString:=DBEdit9.Text;
 DataModule1.ADOQuery5.FieldByName('Кол-во').AsString:=DBEdit4.Text;
 DataModule1.ADOQuery5.FieldByName('Итог').AsString:= IntToStr(StrToInt(DBEdit9.Text)*StrToInt(DBEdit4.Text));
 
end;
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
21.01.2023, 20:23  [ТС]
В администраторе происходит то же самое, при сохранении изменений, в таблице не появляется значение (в бд появляется), нужно перезапускать программу, чтобы значение появлялось
Миниатюры
Запрос по вычислению суммы заказа  
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
21.01.2023, 20:23  [ТС]
Сейчас проверим, не увидела что вы отредактировали
0
127 / 107 / 21
Регистрация: 23.05.2015
Сообщений: 705
21.01.2023, 20:26
Цитата Сообщение от heatingtea Посмотреть сообщение
В администраторе происходит то же самое, при сохранении изменений, в таблице не появляется значение (в бд появляется), нужно перезапускать программу, чтобы значение появлялось
У меня там все отображается.
Вы же сначала нажимаете кнопку "Рассчитать итог"?
Спрашиваю по тому что вижу фокус ввода на кнопке "Сохранить изменения".
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
21.01.2023, 20:28  [ТС]
Благодаря отредактированному коду, который вы скинули выше, всё заработало, спасибо!
0
127 / 107 / 21
Регистрация: 23.05.2015
Сообщений: 705
21.01.2023, 20:32
Хорошо. Будут вопросы - обращайтесь.
1
127 / 107 / 21
Регистрация: 23.05.2015
Сообщений: 705
23.01.2023, 13:54
Если понадобится сохранить в таблице журнал-заказов дату и время заказа, то для интерфейса Администратор это можно сделать так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm4.Button22Click(Sender: TObject);
begin
  if DataModule1.ADOQuery6.Modified then
  DataModule1.ADOQuery6.Post;
 
  {Заносим Итог в журнал заказов}
   DataModule1.ADOQuery7.SQL.Clear;
  DataModule1.ADOQuery7.SQL.Add('Update [Журнал заказов] Set Итог=:Param1, [Дата]=:Param3  Where [Номер заказа]=:Param2');
  DataModule1.ADOQuery7.Parameters.ParamByName('Param1').Value :=PayAmount;
  DataModule1.ADOQuery7.Parameters.ParamByName('Param2').Value :=Form4.DBEdit15.Text;
  DataModule1.ADOQuery7.Parameters.ParamByName('Param3').Value :=Now{};
  DataModule1.ADOQuery7.ExecSQL;
  {Заново переоткрываем журнал заказов после обновления поля Итог в таблице Журнал заказов}
 
   DataModule1.ADOQuery7.SQL.Clear;
  DataModule1.ADOQuery7.SQL.Add('Select * From [Журнал заказов]');
  DataModule1.ADOQuery7.Open;
 
    DataModule1.ADOQuery6.Refresh;
 
end
;

Добавлено через 10 минут
В этой строке скобки круглые, пардон, не увидел.

Delphi
1
 DataModule1.ADOQuery7.Parameters.ParamByName('Param3').Value :=Now();
1
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
23.01.2023, 14:07
Для исполняемых запросов через ADO удобнее использовать не AdoQuery, а метод AdoConnection.Execute(). Под него не требуется создавать временный ADOQuery и он умеет работать с параметрами. К тому же плохая практика использовать один и тот же AdoQuery для исполняемых и селективных запросов.
0
127 / 107 / 21
Регистрация: 23.05.2015
Сообщений: 705
23.01.2023, 17:03
Цитата Сообщение от Пытливый Посмотреть сообщение
Для исполняемых запросов через ADO удобнее использовать не AdoQuery, а метод AdoConnection.Execute(). Под него не требуется создавать временный ADOQuery и он умеет работать с параметрами. К тому же плохая практика использовать один и тот же AdoQuery для исполняемых и селективных запросов.
Спорить не буду, возможно это и так.
Я не много с ADO работал.
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
23.01.2023, 23:35  [ТС]
В процессе проверки работы программы выяснила, что если удаляю заказ из "Журнала заказов", то в программе он не удаляется из "Заказов", перезапустив программу заказы исчезают, как и должно быть, не знаю, может быть нужен какой-нибудь код обновления таблицы заказов?
0
127 / 107 / 21
Регистрация: 23.05.2015
Сообщений: 705
24.01.2023, 08:44
heatingtea

Прикрепите пожалуйста текущий проект. В поле "номер заказа" таблицы "Заказы" нужен счетчик.
Да, скорее всего понадобится обновление таблицы заказы.
1
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
24.01.2023, 11:58
Цитата Сообщение от SeGun Посмотреть сообщение
В поле "номер заказа" таблицы "Заказы" нужен счетчик.
Не нужен и более того вреден. Нельзя использовать счетчик для нумерации, он не гарантирует непрерывную последовательность.

Добавлено через 4 минуты
Если хотите нумерацию по годам, то получайте следующий номер так:
SQL
1
SELECT COUNT(*)+1 AS Номер FROM [Заказы] WHERE YEAR([Заказы].Дата)=YEAR(Now())
1
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
24.01.2023, 12:02  [ТС]
Ну вот так пока что
Вложения
Тип файла: zip Программа.zip (559.0 Кб, 3 просмотров)
0
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
24.01.2023, 12:13
Что-то я не вижу в базе никаких изменений. Это точно последняя версия БД?
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
24.01.2023, 12:23  [ТС]
Я пока решила не менять структуру бд, потому что мне нужно было срочно показать хоть что-то преподавателю, если это будет нужно для синхронного удаления таблиц, я сделаю эти счетчики.
0
 Аватар для Пытливый
3764 / 2272 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
24.01.2023, 12:26
Так вы поймите, что не база под приложение делается, а приложение под базу. Нет рабочей базы, какое может быть приложение? Все тесты и запросы делаются в БД и уже потом к ним рисуется пользовательский интерфейс.
0
24 / 2 / 0
Регистрация: 25.01.2021
Сообщений: 134
24.01.2023, 12:35  [ТС]
Т.е. я правильно понимаю, что в моём случае требуется поле счётчик в заказах и журнале заказов, но они не будут являться номером заказа?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.01.2023, 12:35
Помогаю со студенческими работами здесь

Составить программу по вычислению суммы ряда
Помогите решить задачу, написать текст программы. y = sin\pi + \prod_{i=5}^{n}(1+\frac{\frac{x}{x+1}lni}{1+{i}^{2}}) Заранее спасибо.

Нужны подробности по вычислению контролной суммы
В cтaндapтe СDМА используется раcчет кoнтpoльнoй суммы по aлгopитмy СRС-ЗО. Вот данные для начала вычислений: // poly=0x2ОЗОb9c7...

Написать программу на паскале по вычислению суммы 2+4+6+.+100
Вычислить сумму 2+4+6+...+100. Составить блок-схему и программу.

Напишите код по вычислению суммы элементов ряда
Программирование алгоритмов цикла Напишите код по вычислению суммы элементов ряда пожалуйста♥

Написать алгоритм и отладить программу по вычислению бесконечной суммы с точностью 0,001
http://s7.********************/uploads/images/2014/12/2151a5c32e3a21a313491ff16cac634b.jpg


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru