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

Вниз

Access violation в TWebModule   Найти похожие ветки 

 
Zanik   (2003-11-07 15:23) [0]

Мастаки!

Помогите разобраться. Использую Zeos для подключения к MySQL. Пишу CGI приложение. Создал свой метод у TWebModule в секции public. В нем обращаюсь к запросу

...
with dm.getMaxMonth do // <- access violation
begin
if Active then Close;
Open;
max_m := FieldByName("months").AsInteger;
end;
...


Смотрю при отладке, а dm - указывает на nil. Как такое может быть? Проверял событие OnCreate - оно выполняется. Подскажите что делать? где рыть?


 
Sandman25   (2003-11-07 15:33) [1]

>Проверял событие OnCreate - оно выполняется.

OnCreate объекта TWebModule? Или все-таки dm?


 
Плохиш_   (2003-11-07 15:33) [2]

Что такое dm?
В cgi вообще-то для обрашения к модулям создаётся function.


 
Zanik   (2003-11-07 15:36) [3]

OnCreate объекта TWebModule?

dm - екземпляр TWebModule


 
Плохиш_   (2003-11-07 15:37) [4]

Приведите описание dm, пожалуйста


 
Zanik   (2003-11-07 15:38) [5]

type
Tdm = class(TWebModule)
getMaxMonth: TZZMySqlQuery;
ckop2: TZZMySqlDatabase;
ckop2tr: TZZMySqlTransact;
getDataCurrMonth: TZZMySqlQuery;
getDataMaxMonth: TZZMySqlQuery;
getDataPriorMonth: TZZMySqlQuery;
getTotal: TZZMySqlQuery;
result: TPageProducer;
procedure TotalLegendText(Sender: TCustomAxisPanel;
LegendStyle: TLegendStyle; Index: Integer; var LegendText: String);
procedure DayLegendText(Sender: TCustomAxisPanel;
LegendStyle: TLegendStyle; Index: Integer; var LegendText: String);
procedure dmWebActionItem1Action(Sender: TObject; Request: TWebRequest;
Response: TWebResponse; var Handled: Boolean);
procedure resultHTMLTag(Sender: TObject; Tag: TTag;
const TagString: String; TagParams: TStrings;
var ReplaceText: String);
private
{ Private declarations }
public
{ Public declarations }
procedure SaveTelCard( sd, ed, yyyy: integer );
procedure GetStatPicture( type_stat, sd, ed, yyyy: integer );
end;


 
Sandman25   (2003-11-07 15:40) [6]

Зачем вообще писать dm, если обращение происходит из его метода, насколько я понимаю?
Вы наверное вызываете этот метод из OnCreate, когда dm еще не присвоено значение.


 
Плохиш_   (2003-11-07 15:41) [7]

Где строчка

function dm: TWebModule;
?


 
Zanik   (2003-11-07 15:42) [8]

>Вы наверное вызываете этот метод из OnCreate,
нет, из SaveTelCard
>Зачем вообще писать dm,
убирал , таже фигня :(


 
Zanik   (2003-11-07 15:44) [9]

Плохиш_ (07.11.03 15:41) [7]
всегда писал так
var
dm: Tdm;
и не было трудностей... а это чего-то глюк...


 
Sandman25   (2003-11-07 15:49) [10]

Как создается dm?
dm := Tdm.Create...?

>>Зачем вообще писать dm,
>убирал , таже фигня :(

В смысле? При
with getMaxMonth do
begin
if Active then Close;
Open;
max_m := FieldByName("months").AsInteger;
end;

тоже Access Violation? На какой строчке?


 
Плохиш_   (2003-11-07 15:50) [11]

Откуда вызывается SaveTelCard и т.д.?


 
Плохиш_   (2003-11-07 15:52) [12]

>Zanik

Посмотри демку в Internet\WebServ


 
Zanik   (2003-11-07 15:53) [13]

Как создается dm?
dm := Tdm.Create...?

begin
Application.Initialize;
Application.CreateForm(Tdm, dm);
Application.Run;
end

тоже Access Violation? На какой строчке?
в той же что и раньше


 
Zanik   (2003-11-07 15:55) [14]

Откуда вызывается SaveTelCard и т.д.?

procedure Tdm.dmWebActionItem1Action


 
Zanik   (2003-11-07 15:57) [15]

Посмотри демку в Internet\WebServ

ну и ? ничего нового не узнал :(


 
Sandman25   (2003-11-07 16:02) [16]

Тогда я тоже не понимаю, как dm может быть nil...
Может dmWebActionItem1Action Вы вызываете из OnCreate?


 
Плохиш_   (2003-11-07 16:03) [17]

Смотри, что ты делаешь с getMaxMonth во всей программе. Где-то она об-nil-яется или уничтожается.


 
Плохиш_   (2003-11-07 16:05) [18]

Не используй dm.



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

Форум: "Базы";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.009 c
1-89979
Vitaliygavrilov
2003-11-17 15:22
2003.11.27
Как загрузить другую программу из своей


3-89714
AlexiNx
2003-11-03 18:31
2003.11.27
Fast Report


1-89936
Pattern
2003-11-17 13:53
2003.11.27
Время создания динамических компанентов


1-89846
mmmaloy
2003-11-16 18:52
2003.11.27
Не работает Find в TStringList


1-89956
Shluz
2003-11-17 20:16
2003.11.27
If Then





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский