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

Вниз

Web-модули, странное поведение шаблона   Найти похожие ветки 

 
Megabyte ©   (2006-12-27 14:54) [0]

Есть 2 события Веб-модуля:
1)Twm_status.WebModule1wai_stateAction - событие самого модуля по вызову действия
2)Twm_status.pp_stateHTMLTag - событие TPageProducer на форматирование нестандартных тегов.

Я получаю с html-формы один параметр, и вывожу в шаблон 4 значения:текущую дату, входной параметр, еще 2  - выборка из базы по параметру.
Вот код методов:

var
 ...
 param_imei : string;
...
procedure Twm_status.WebModule1wai_stateAction(Sender: TObject;
 Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
 param_imei := Request.QueryFields.ValueFromIndex[0];
 Response.Content := pp_state.Content;
end;

procedure Twm_status.pp_stateHTMLTag(Sender: TObject; Tag: TTag;
 const TagString: String; TagParams: TStrings; var ReplaceText: String);
var
br, st : string;
begin
 if TagString = "curdate" then ReplaceText := DateToStr(now);
 fdb_scrp.Connected := true;
 ftr_state.Active := true;
 fdst_state.ParamByName("imei").AsString := param_imei;
 fdst_state.Prepare;
 if TagString = "imei" then ReplaceText := param_imei;
 fdst_state.Active := true;

 br := fdst_state.FieldList.Fields[0].AsString;
{ if (TagString = "brmod") and (fdst_state.FieldList.Fields[0].AsString <> "")
   then ReplaceText := br
 else
   ReplaceText := "null";
 if (TagString = "status") and (fdst_state.FieldList.Fields[1].AsString <> "")
   then ReplaceText := fdst_state.FieldList.Fields[1].AsString
 else
   ReplaceText := "null"; }
end;

1) Если запускать так, с закомментированным кодом, то 2 первых тега форматируются правильно.
Если же раскомментировать, то все теги формируются со значением null.
Это 1-я непонятка.
2) Я не уверен, что происходит выборка правильно в fdst_state
Но это же не должно влиять никак на форматирование остальных тегов???
Отдельно от ВЕБ-модуля уже все 100 раз протестировал, сам запрос работает правильно. Дело может быть в ординарных ковычках: но я уже и с ними пробовал, и без них...
2-я непонятка.


 
Megabyte ©   (2006-12-28 09:17) [1]

Закройте тему, как всегда всему виной невнимательность, по крайней мере по 1-му пункту...


 
Megabyte ©   (2006-12-28 12:16) [2]

Люди.
Такое вот дело.
Если я параметр беру из Request.QueryFields.QueryFields.Values["imei"], то запрос не выдает данные(возвращает пустой набор).
param_imei := {chr(39) +} Request.QueryFields.Values["imei"] {+ chr(39)};
...
fdst_state.ParamByName("imei").AsString := param_imei;

Если я то же значение присваиваю явно параметру, то запрос возвращает нужное значение.
fdst_state.ParamByName("imei").AsString := "352262010494193";

Создал обычное приложение, все проверил, все работает корректно;
Пробовал параметр в ковычках передавать и без(они там закомментированны);
Даже сравнивал длину и значения param_imei и 352262010494193 на предмет лишних пробелов, все норм.

Не понимаю, м.б. глюк какой в Дельфе?



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

Форум: "Основная";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.047 c
6-1158127026
abannov
2006-09-13 09:57
2007.02.18
Ограничения при включении брандмауэра WinXP


2-1170189559
alexcoler
2007-01-30 23:39
2007.02.18
автообновление в DBGrid


15-1170075240
frari
2007-01-29 15:54
2007.02.18
Скинуть файл


9-1143814787
Pa5ha
2006-03-31 18:19
2007.02.18
Загрузчик текстур


2-1170050590
Officeman
2007-01-29 09:03
2007.02.18
Проверить Статус соединения с Интернет





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