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

Вниз

Из Delphi в HTML   Найти похожие ветки 

 
Natalie_Q   (2004-07-19 17:17) [0]

Проблема у меня такая: нужно заполнить форму Delphi, а затем перенести эти данные в HTML для распечатки. Я сделала шаблон страницы HTML и обрабатываю его TPageProducer"ом. Но загвоздка вот в чем, как отобразить уже обработанную страницу, не используя TWebModule? Заранее спасибо!


 
Ega23 ©   (2004-07-19 17:20) [1]

Давно писалось, тут из запроса файл генериться и IE запускается. Посмотри, может поможет...

Function QueryToHTML(rq:TRxQuery;sqls:string="*";aFile:string=""; browsekind: integer=1):boolean;
var
   ss,fURL,fFn:string;
   slst:tstringlist;
   hnd:Thandle;
//.......
Procedure ChangeFileDate(aFn:string;aDate:tdatetime=0);
var dt:tdatetime;
   hnd:integer;
begin
try
 hnd:=-100;
 if aDate=0 then dt:=now()-100 else dt:=aDate;
 hnd:= FileOpen(aFN, fmOpenWrite or fmShareDenyNone);
 if hnd>0 then FileSetDate(Hnd, DateTimeToFileDate(dt) );
finally
 if hnd>0 then FileClose(hnd);
end;
end;

//.......

Function DoBrowse:boolean;
begin
     if BrowseKind=1 then
     begin
      hnd:= FileExecute(fURL, "", "", esNormal);
       if hnd <= 32 then
       begin
        ShowMessage("Не могу запустить iexplore.exe");
        exit;
       end;
      hnd:=FindWindow("IEFrame",nil);
      if hnd <>0 then BringWindowToTop(hnd);
     end;//of BrowseKind=1

end;
//.......
Begin
result:=false;
 if NoConnectGlb then exit; //@@ 09-10-2001

TRY
  if trim(aFile)="" then fFn:=extractfilepath(paramstr(0))+"\form0.htm"
                    else fFn:=aFile;
  fURL:="file://localhost/"+fFn;

  if RQ=nil then // просто показать файл
  begin
   if not FileExists(fFn) then exit;
    DoBrowse;
    result:=true;
    exit;
  end;

  if sqls<>"*" then RQ.Sql.text:=sqls;
   RQ.Close;
   Application.ProcessMessages;
   RQ.Open;
   RQ.first;
   ss:="";
   while not RQ.eof do
   begin
    ss := ss+ RQ.Fields[0].asString;
    RQ.next;
   end;

  if (ss<>"") then
  begin
    //if trim(aFile)="" then fFn:=extractfilepath(paramstr(0))+"\form0.htm"
   //                  else fFn:=aFile;
   // fURL:="file://localhost/"+fFn;
      slst:=tstringlist.Create;
      slst.Add(ss);
      slst.SaveToFile(fFn);
      slst.free;slst:=nil;
    ChangeFileDate(fFn);
    DoBrowse;
   result:=true;
  end;
FINALLY
 if slst<>nil then begin slst.free;slst:=nil; end;
END
(* Чтобы iexplore стоял на экране - в приложение добавить на таймер ???
var hnd :thandle;
begin
 hnd:=FindWindow("IEFrame",nil);
 if hnd <>0 then BringWindowToTop(hnd);
end;
*)
//QueryToHTML(rq,"exec s_InfSchedSummary @schedcod=1, @persid=0");
end;



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

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

Наверх





Память: 0.46 MB
Время: 0.104 c
11-1077853321
KisaNetik
2004-02-27 06:42
2004.08.01
БД Paradox 7 в KOL - Это реально?


3-1089140159
Zhekson
2004-07-06 22:55
2004.08.01
Фильтрация по полю второстепенной таблицы.


14-1089887417
vecna
2004-07-15 14:30
2004.08.01
Расшифровка протеста


14-1089453321
GanibalLector
2004-07-10 13:55
2004.08.01
Поиск!!! ICQ-сервер показывает первые 40...


1-1090144000
dr Tr0jan
2004-07-18 13:46
2004.08.01
Регулярные выражения





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