Если Modal=true - все работает прекрасно
если Modal=false - в процессе построения отчета (ShowReports) при попытке вычислить значение поля типа
[frxuDs."skl"]
вылетает с ошибкой типа "Не могу выполнить операцию т.к. база данных закрыта"
В основной проге тоже прелести с модальностью. Код такой
procedure TMnom.mprrClick(Sender: TObject);
...
if tagdm in [1,3] then Qprpr.SelectSQL[29]:='ORDER BY Chet,Zak'
else Qprpr.SelectSQL[29]:='ORDER BY Poz asc nulls last, Rb, Srb, Chet';
Qprpr.Open;
frxuDs.DataSet:=Qprpr;
Frx.LoadFromFile(dirs+'frx\Prpr.fr3');
Frx.PreviewOptions.Modal:=false;
Frx.ShowReport;
Frx.PreviewOptions.Modal:=true;
Qprpr.Close;
end;
при повторном вызове менюшки ругается, что не могу поменять SQL т.к. набор открыт !!!
Когда успел?
Если снять игры с Modal - все нормально
Похоже модальность понимается как синхронность/асинхронность
а я считала это разными вещами.
Комментарии
помоему, это особенности dll.
В Dll открывается база
Если Modal=true - все работает прекрасно
если Modal=false - в процессе построения отчета (ShowReports) при попытке вычислить значение поля типа
[frxuDs."skl"]
вылетает с ошибкой типа "Не могу выполнить операцию т.к. база данных закрыта"
В основной проге тоже прелести с модальностью. Код такой
procedure TMnom.mprrClick(Sender: TObject);
...
if tagdm in [1,3] then Qprpr.SelectSQL[29]:='ORDER BY Chet,Zak'
else Qprpr.SelectSQL[29]:='ORDER BY Poz asc nulls last, Rb, Srb, Chet';
Qprpr.Open;
frxuDs.DataSet:=Qprpr;
Frx.LoadFromFile(dirs+'frx\Prpr.fr3');
Frx.PreviewOptions.Modal:=false;
Frx.ShowReport;
Frx.PreviewOptions.Modal:=true;
Qprpr.Close;
end;
при повторном вызове менюшки ругается, что не могу поменять SQL т.к. набор открыт !!!
Когда успел?
Если снять игры с Modal - все нормально
Похоже модальность понимается как синхронность/асинхронность
а я считала это разными вещами.