![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глюк Delphi или другое?
andycat © (2005-02-24 13:47:00)Такая проблема: есть проект Delphi 7 на главной форме PageControl отображающие различные части базы данных Interbase, на некоторых из них надо сделать отчет, соответственно нажимаю на кнопку создаю форму отчета получаю данные TIBQuery и делаю Превью отчета QReport все отлично работает, но после закрытия/печати отчета PageControl вываливается на первую страничку и для БД закрываются все TDataSet почему? не могу понять, я ведь к ним совсем не обращаюсь, формы отчетов совершенно автономны я их создаю а после использования Дестрою...
andycat (2005-02-25 21:59:00) [1]что, самое интересное, в своем старом проекте использующем правда BDE+Paradox все работает... Это глюк связи IB & QR ?
какие варианты?
andycat (2005-02-25 15:40:00) [2]операция всего одна - fmPrnRep3.QuickRep1.Preview , если ее убрать, то печататься не будет, но и всяких левых переключений тоже. Где тут разбираться?, уже раз 5 прошелся по всей логике....
КаПиБаРа (2005-02-25 15:14:00) [3]
> andycat (25.02.05 14:44) [14]
Дружище, такое впечатление что ты не программу пишешь, а пытаешься управлять стадом баранов разбегающихся в разные стороны. Что-то у тебя самостоятельно закрывается, что-то переключается.
Сядь разберись что и как работает, напиши комментарии. Вникни в суть каждой операции.
andycat (2005-02-25 15:09:00) [4]Виноват сам QReport - закрывает DataSetы и PageControla. Если просто открыть/Закрыть IBQuery и/или форму - все отлично - ничего не сбивается.
Кто-нибудь встречался с таким глюком, или как запретить QReport у закрывать IBQuery?
andycat (2005-02-25 14:44:00) [5]Смотрел, блин, такое ощучение , что fmPrnRep3.IBQuery1.Close закрывает все, но это пол беды - нужнве Query можно открыть заново с восстановлением указателя на нужную запись, но при чем здесь PageControl? Может Free формы так на него влияет? щас попробую....
КаПиБаРа (2005-02-25 11:38:00) [6]Надо всю программу просмотреть критическим взглядом и определить что закрывает DataSet.
andycat (2005-02-25 11:27:00) [7]Нет, они на главной форме, но IBQuery1 на fmPrnRep3 обращаются к тем же таблицам, что и остальные Query, поэтому они возможно и закрываются, но при чем здесь PageControl ?
КаПиБаРа (2005-02-25 11:14:00) [8]А датасеты которые закрываются случайно не на fmPrnRep3 расположены?
andycat (2005-02-25 11:04:00) [9]procedure TfmMain.N2Click(Sender: TObject);
var
i:integer;
begin
Application.CreateForm(TfmPrnRep3, fmPrnRep3);
fmPrnRep3.IBQuery1.Close;
fmPrnRep3.IBQuery1.SQL.Clear;
fmPrnRep3.IBQuery1.SQL.Add('select orgpolname outlist, count(zvlid) countof, sum(sumvyp) sumof, ');
fmPrnRep3.IBQuery1.SQL.Add('sum(sumvyp)/count(zvlid) sredn');
fmPrnRep3.IBQuery1.SQL.Add('from zvlcompmain');
fmPrnRep3.IBQuery1.SQL.Add('join zvlcompdata');
fmPrnRep3.IBQuery1.SQL.Add('on (zvlcompmain.zvlid=zvlcompdata.zvlid)');
fmPrnRep3.IBQuery1.SQL.Add('left outer join orgpol');
fmPrnRep3.IBQuery1.SQL.Add('on (zvlcompmain.orgpolid=orgpol.orgpolid)');
for i:=1 to CountSQL do
fmPrnRep3.IBQuery1.SQL.Add(StrSQL[i]);
fmPrnRep3.IBQuery1.SQL.Add('group by orgpolname');
fmPrnRep3.IBQuery1.SQL.Add('order by orgpolname');
fmPrnRep3.IBQuery1.ParamByName('p_d1').AsDate:=DateTimePicker5.Date;
fmPrnRep3.IBQuery1.ParamByName('p_d2').AsDate:=DateTimePicker6.Date;
fmPrnRep3.n:=1;
fmPrnRep3.IBQuery1.Open;
fmPrnRep3.QRLabel1.Caption:='?????? ?: '+DateToStr(DateTimePicker5.Date)+' ?? '+DateToStr(DateTimePicker6.Date);
fmPrnRep3.n:=1;
fmPrnRep3.QuickRep1.Preview;
fmPrnRep3.IBQuery1.Close;
fmPrnRep3.Free;
end;
как видите PageControl не используется, а он все равно не переключается....
КаПиБаРа (2005-02-25 10:38:00) [10]Постоянно на форум обращаются люди у которых программа не работает. Но саму программу они не показывают. По этому и родилось такое выражение "ошибка в 17 строке".
Плохиш (2005-02-25 10:37:00) [11]Профессия дворника тоже очень хорошая - физический труд на свежем воздухе.
А у тебя ошибка в неприведённом здесь коде твоейпрограммы.
andycat (2005-02-25 10:30:00) [12]не смешно....
КаПиБаРа (2005-02-25 09:08:00) [13]Ошибка в тексте программы. Возможно в 17 строке :)
Anatoly Podgoretsky (2005-02-25 08:46:00) [14]Это "или другое? "
andycat (2005-02-25 08:45:00) [15]А чего?
Anatoly Podgoretsky (2005-02-24 18:27:00) [16]Вероятнее всего это глюк не Дельфи.
andycat (2005-02-24 17:11:00) [17]В смысле???
Amoeba (2005-02-24 15:52:00) [18]Ошибка в 17-й строке.