Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];

Вниз

Глюк 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.05 c
9-1103540530
webpauk
2004-12-20 14:02
2005.03.13
DirectDraw


8-1101410514
bulanov
2004-11-25 22:21
2005.03.13
jpg в DelphiX


4-1106860078
Unknown
2005-01-28 00:07
2005.03.13
Окно сзади


1-1109334745
andr484
2005-02-25 15:32
2005.03.13
Проблема с функцией из DLL


14-1108665627
Alexander Panov
2005-02-17 21:40
2005.03.13
Погрустим?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский