Страница 1 из 1

Не знаю, как назвать тему :)

Добавлено: 14 янв 2004, 10:59
Serges
Уважаемые коллеги!
Все мы знаем, как в формах в цикле выводится некий поток данных. В конце цикла можно получить итог, суммируя строки.
У меня вопрос: возможно ли получить итог до конца цикла? Например, чтобы в каждой строке вывести коэффициент? ;)

Re: Не знаю, как назвать тему :)

Добавлено: 14 янв 2004, 11:17
edward_K
я так понимаю что нужно увидеть итог перед началом цикла?
прямо нет, если это не предусмотренно самой формой.я обычно в этих случаях накапливаю цикл во временюю таблицу, а после цикла вывожу шапку(с подсчитанным итогом) и делаю цикл по времянке. :)

Re: Не знаю, как назвать тему :)

Добавлено: 14 янв 2004, 11:56
Serges
Edward_K, можно простенький пример - для ориентира? ;)

Re: Не знаю, как назвать тему :)

Добавлено: 14 янв 2004, 12:28
edward_K
маленьких нет и не будет.
порядок примерно такой
в include файле ( пусть v.inc)
объявляешь следующую структуру
table struct tmp_db
( sort : string[100],
field1 :string ,
....
)
with index
( tmp_db01 = sort ,
tmp_db02 = field1
) ;
сей файл обязательно добавляешь в проект
#include v.inc
#make "*.frm"
в форме объявляешь ( возможны вариации)
.create view vvv
var wsu:double ;
as select tmp_db.* from tmp_db(tmp_db01) ;
перед циклом
.begin
wsu:=0 ;
vvv.delete all tmp_db ;
end.
в цикле делаешь програмный блок
.begin
wsu :=wsu+summa ;
vvv.tmp_db.sort := filedsort ;
vvv.tmp_db.field1 := .... ;
vvv.insert current tmp_db ;
end.
после цикла выводишь шапку до цикла + wsu
далее поля из tmp_db
.fields
vvv.tmp_db.field1
...
.endfields
.{ table 'vvv.tmp_db'
@@@@ @@@@@@@@@
.}
все в принципе просто если понимать чего ты хочешь и здесь на этом форуме уже вроде обсуждалось. :)

Re: Не знаю, как назвать тему :)

Добавлено: 14 янв 2004, 16:23
ramil
Можно и так:
1. В цикле загоняешь данные в массивы
2. после цикла обрабатываешь массив
3. добавляешь новый цикл (в нем выводишь результаты).
;)

Re: Не знаю, как назвать тему :)

Добавлено: 15 янв 2004, 06:54
Serges
Edward_K, благодарю :)
С примером куда как проще разобраться - всё получилось.