поле Sql запроса в цикле линк форм

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5185
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: поле Sql запроса в цикле линк форм

Сообщение edward_K »

Иришке
да в твоем варианте лишнее
order by GroupMc.name
с этим выводит !?

попробуй так
сделай vpp фалик
table struct tinyskltest
( nmgrmc : string[100] ,
wkol :double

)
with index
( tinyskltest01 = nmgrmc
);


frm файлик
#DEFINE _table_
.linkform 'TinySkl_011_01' prototype is 'TinySkl'
.NameInList 'ОБОРОТНАЯ ВЕДОМОСТЬ ДВИЖЕНИЯ ПО СКЛАДУ test'
.group 'Отчеты с сортировкой по наименованию'
.var
GrMCN:String;
.endvar
.create view XXX
var
wNREC:comp;
as select katmc.name,GroupMc.name,tinyskltest.*
from
KatMC,
GroupMC
#IFDEF _table_
,tinyskltest(tinyskltest01)
#ENDIF
where
(( wNRec == KatMC.Nrec
and KatMC.CGroupMC == GroupMC.Nrec)) ;
.fields
MC_nrec NameMC GrMCN
XXX.wNrec XXX.katmc.name
.endfields

.{ // Цикл по складам
#IFDEF _table_
.begin
XXX.delete all tinyskltest ;
end.
#ENDIF
.{// по мц
.if TinySkl00
.begin
set XXX.wNrec:=comp(MC_nrec);
GrMCN:='!?'
if XXX.GetFirst KatMc=0 then
if XXX.GetFirst GroupMC=0 then
GrMCN:=XXX.GroupMC.Name;
#IFDEF _table_
xxx.tinyskltest.nmgrmc:=GrMCN ;
xxx.tinyskltest.wkol:=0;
xxx.insert current tinyskltest ;
#endif
end.

^ ^ Группа МС ^
^ ^
.end
.}
#ifdef _table_
.fields
xxx.tinyskltest.nmgrmc
.endfields
.{ table 'xxx.tinyskltest'
^
.}
#endif
Итого по складу
.}
.if TinySkl01
Итого по всем складам
.end
.endform

оба файлика нужно включить в проект
#make ddd.vpp
#make ddd.frm

не сможешь сделать проект
в frm убери строку #Define _table_
и попробуй сначала так :)
sth
Постоянный обитатель
Сообщения: 148
Зарегистрирован: 29 мар 2005, 17:49

Re: поле Sql запроса в цикле линк форм

Сообщение sth »

вместо таблицы в памяти можно использовать какую-нибудь временную таблицу из словаря Галактики точно таким же образом. Надо только подобрать подходящую по полям, индексам.
Ответить