![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
Здравствуйте! такая проблема с DBGrid.. есть цифры в ячейках,нужно их сложить и разделить на кол-во и получить в другой ячейке общий результат.. но не знаю как это сделать,ведь по смене в комбобокс фамилии меняются цифры(оценки) и кол-во соответственно ячеек.
таблица в оракле есть. выглядеть DBGrid должен так: fio rez obshii rez Иванов 5 Иванов 5 3 Иванов 3 Помогите пожалуйста с кодом.. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
![]()
Если у Вас в одной записи цифры то можно через вычисляемые поля или через запрос сделать поле в котором будет данное вычисление.
Если У Вас в разных записях цифры находятся то можно также через вычисляемое поле, только на момент вычислений там по циклу или что то другое делать Adotable1.EnableControls; AdoTable1.DisableControls В целом не очень понятна структура таблицы, Иванов - это каждый раз новая фамилия или разные? Как примерно вычисления производятся?
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
Иванов одна фамилия.. выбирается в комбобокве и в таблице показывает его рез-ты,к примеру..я не через адо а чрез OraQuery
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
и тут же вопрос почему не удаляет из таблицы??
OraQuery1.SQL.Text := 'delete from KURS_KADR2 where FIO=' + QuotedStr(CRDBGrid1.SelectedField.A sString); OraQuery1.Params.ParamByName('FIO') .AsString :=CRDBGrid1.SelectedField.AsString; OraQuery1.ExecSQL; |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
НУ ЧТО КТО ПОМОЖЕТ?? в таблице поля ФИО РЕЗУЛЬТАТ СРЕДНИЙ РЕЗ-Т
Человек проходит тест,в тесте несколько разделов.. фио и рез-т идет в оракл в таблицу..вот терь надо отобразить в DBGride.. результаты за тесты в таблице надо сложить и разделить на кол-во. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
можно конечно так
Query1.SQL.Text:='select sum(rez) from kurs'; Query1.Open; только вот мы сложили значения ячеек ,а как терь разделить на их количество чтобы у знать средний результат и вывести в другой в следующей колонке.... |
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
![]() Цитата:
Код:
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
procedure TForm12.Button1Click(Sender: TObject);
var I: Integer; Rec: integer; summa: integer; begin REc:=OraQuery1.RecordCount; OraQuery1.DisableControls; for I := 0 to OraQuery1.RecordCount- 1 do // Iterate begin summa:=summa+OraQuery1.fieldbyname( 'REZ').AsInteger; end; // for OraQuery1.EnableControls; OraQuery1.Close; OraQuery1.SQL.Clear; OraQuery1.SQL.Add('select REZ, ('+inttostr(summa)+'/'+inttostr(REc)+') as Summa '); OraQuery1.SQL.Add('from AAAA'); OraQuery1.Open; фигня какая то получилась))) напротив каждой ячейки цифры - 414357..откуда они взялись?? Последний раз редактировалось crit; 17.05.2009 в 22:31. |
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
![]()
Поля в сетке расширить надо, там дробная часть отобразилась.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 121
|
![]()
да нет)) расширено и так все)) там 2 столбца и так..
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
перенос данных из DBGrid в DBGrid | KingSize | БД в Delphi | 17 | 24.04.2009 09:30 |
DBGrid | Alexsandr | БД в Delphi | 5 | 08.10.2008 00:00 |
DBGrid | Ane4ka | БД в Delphi | 28 | 01.06.2008 10:00 |
DBGRID | Devikss | БД в Delphi | 2 | 29.05.2008 08:17 |