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

Вниз

Глюк Delphi или другое?   Найти похожие ветки 

 
andycat   (2005-02-24 13:47) [0]

Такая проблема: есть проект Delphi 7 на главной форме PageControl отображающие различные части базы данных Interbase, на некоторых из них надо сделать отчет, соответственно нажимаю на кнопку создаю форму отчета получаю данные TIBQuery и делаю Превью отчета QReport все отлично работает, но после закрытия/печати отчета PageControl вываливается на первую страничку и для БД закрываются все TDataSet почему? не могу понять, я ведь к ним совсем не обращаюсь, формы отчетов совершенно автономны я их создаю а после использования Дестрою...


 
Amoeba ©   (2005-02-24 15:52) [1]

Ошибка в 17-й строке.


 
andycat   (2005-02-24 17:11) [2]

В смысле???


 
Anatoly Podgoretsky ©   (2005-02-24 18:27) [3]

Вероятнее всего это глюк не Дельфи.


 
andycat   (2005-02-25 08:45) [4]

А чего?


 
Anatoly Podgoretsky ©   (2005-02-25 08:46) [5]

Это "или другое? "


 
КаПиБаРа ©   (2005-02-25 09:08) [6]

Ошибка в тексте программы. Возможно в 17 строке :)


 
andycat   (2005-02-25 10:30) [7]

не смешно....


 
Плохиш ©   (2005-02-25 10:37) [8]

Профессия дворника тоже очень хорошая - физический труд на свежем воздухе.

А у тебя ошибка в неприведённом здесь коде твоей программы.


 
КаПиБаРа ©   (2005-02-25 10:38) [9]

Постоянно на форум обращаются люди у которых программа не работает. Но саму программу они не показывают. По этому и родилось такое выражение "ошибка в 17 строке".


 
andycat   (2005-02-25 11:04) [10]

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 11:14) [11]

А датасеты которые закрываются случайно не на fmPrnRep3 расположены?


 
andycat   (2005-02-25 11:27) [12]

Нет, они на главной форме, но IBQuery1 на  fmPrnRep3 обращаются к тем же таблицам, что и остальные Query, поэтому они возможно и закрываются, но при чем здесь PageControl ?


 
КаПиБаРа ©   (2005-02-25 11:38) [13]

Надо всю программу просмотреть критическим взглядом и определить что закрывает DataSet.


 
andycat   (2005-02-25 14:44) [14]

Смотрел, блин, такое ощучение , что fmPrnRep3.IBQuery1.Close закрывает все, но это пол беды - нужнве Query можно открыть заново с восстановлением указателя на нужную запись, но при чем здесь PageControl? Может Free формы так на него влияет? щас попробую....


 
andycat   (2005-02-25 15:09) [15]

Виноват сам QReport - закрывает DataSetы и PageControla. Если просто открыть/Закрыть IBQuery и/или форму - все отлично - ничего не сбивается.
Кто-нибудь встречался с таким глюком, или как запретить QReport у закрывать IBQuery?


 
КаПиБаРа ©   (2005-02-25 15:14) [16]


> andycat   (25.02.05 14:44) [14]

Дружище, такое впечатление что ты не программу пишешь, а пытаешься управлять стадом баранов разбегающихся в разные стороны. Что-то у тебя самостоятельно закрывается, что-то переключается.
Сядь разберись что и как работает, напиши комментарии. Вникни в суть каждой операции.


 
andycat   (2005-02-25 15:40) [17]

операция всего одна - fmPrnRep3.QuickRep1.Preview , если ее убрать, то печататься не будет, но и всяких левых переключений тоже. Где тут разбираться?, уже раз 5 прошелся по всей логике....


 
andycat   (2005-02-25 21:59) [18]

что, самое интересное, в своем старом проекте использующем правда BDE+Paradox все работает... Это глюк связи IB & QR ?
какие варианты?



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

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

Наверх




Память: 0.5 MB
Время: 0.028 c
11-1091000180
DeimosX7
2004-07-28 11:36
2005.03.13
KOLScktComp


9-1102253410
Bryke
2004-12-05 16:30
2005.03.13
Клик!


1-1109571508
Chaos_BUG
2005-02-28 09:18
2005.03.13
Исходники EncryptPE. Помогите с компиляцией.


14-1108985752
wl
2005-02-21 14:35
2005.03.13
Распознавание цифр на рисунке


6-1104836099
leonidus
2005-01-04 13:54
2005.03.13
idHTTP Indy 9 и Proxy