Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.06;
Скачать: CL | DM;

Вниз

Пустые записи   Найти похожие ветки 

 
bolat_   (2005-04-26 14:23) [0]

Здраствуйте мастера, пишу такой код

var
ab:variant
.....
query1.First;
ab:=0;
repeat
ab:=ab+query1.FieldByName("summa").Value;
until query1.Eof;
edit2.Text:=floattostr(ab);

Если с кода не понятно объяню словами я должен вывести сумму всех значений поле summa в edit1, в принципе этот код работает, но если попадает пустая запись, прога пишет Variant type conservation (помоему так), помогите пожалуйста разобратся.

Заранее благодарен, с уважением Болат


 
Johnmen ©   (2005-04-26 14:30) [1]

1. Этот "код" не может правильно работать, т.к. нету Next
2. Зачем какой-то вариант, если работаем с Float ??? См. AsFloat


 
Desdechado ©   (2005-04-26 15:44) [2]

а вообще я бы использовал
select sum(summa) from tablica
where summa is not null


 
Johnmen ©   (2005-04-26 15:48) [3]

>Desdechado ©   (26.04.05 15:44) [2]
>where summa is not null

А это зачем? /просто интересно/


 
Desdechado ©   (2005-04-26 15:57) [4]

а шоб було :)
все агрегирующие функции (кроме count) игнорируют null-значения, но так нагляднее, хотя с точки зрения быстродействия полное Г


 
Johnmen ©   (2005-04-26 16:07) [5]

:)))
>все агрегирующие функции (кроме count) игнорируют null-значения,

Т.е. и мы докучи проигнорируем...:)


 
bolat_   (2005-04-26 16:14) [6]

число записей не так уж и много так что этот вариант мне подходит
большое спасибо Johnmen, desdechado

p.s. Модераторам помоему Ваш сервер немного глючит или наш инетрнет, при попытке создать, добавить сообщение выходит ошибка 500,


 
Sergey13 ©   (2005-04-26 16:18) [7]

2[6] bolat_   (26.04.05 16:14)
>p.s. Модераторам помоему Ваш сервер немного глючит или наш инетрнет, при попытке создать, добавить сообщение выходит ошибка 500

А мужики то не знают! (с) Пиво Толстяк.
8-)


 
Desdechado ©   (2005-04-26 17:05) [8]

2 bolat_
Еще один момент - цикл repeat until подразумевает, что у тебя будет хоть одна строка в наборе данных. В случае, когда он будет пуст, вылезет ошибка.



Страницы: 1 вся ветка

Текущий архив: 2005.06.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
1-1116905491
Viktop
2005-05-24 07:31
2005.06.06
Поиск в файле


1-1116718562
grol
2005-05-22 03:36
2005.06.06
Ввод чисел перед переменными в выражении в строке Edit.


4-1113727212
Grief
2005-04-17 12:40
2005.06.06
невидимое письмо


1-1116875983
INCOGNITO
2005-05-23 23:19
2005.06.06
алгоритм преобразования TDateTime в String


14-1116742718
vidiv
2005-05-22 10:18
2005.06.06
Колонки (звуковые)