1

Konu: Html Ye müdahale

Genhtmp.app kullanarak tabledeki recordları html formatında görüntülüyorum. ama set filter hariç ne başlıklara nede genel formata müdahale edebiliyorum. İşi kullanıcıya bırakmadan kodlarla bunu düzeltmenin çaresi varmı arkadaşlar.

Teşekkür ederim..

2

Re: Html Ye müdahale

DOM kullanmasini biliyorsan kolay. Yoksa filetostr(), strextract(), stuff() vs kullanarak yapabilirsin. Bir baska yolu HTMLyi kendin yazman, set textmerge ile.

3

Re: Html Ye müdahale

TEXTMERGE ornegi

* class kodudur 2003 yılından kalma smile kod biraz daha optimize edilebilir

Visual Fox Pro
Set Safety Off

 
  IF this.ppreview = .f.
 
lcfile=Sys(2023)+"\"+Sys(2015)+".HTM"
lcCursor=This.mycursor
lcdate0=Datetime()
lctime0=Time()
lcdate="
"+Dtoc(lcdate0) 
lcheader=This.myheader
lctitle="
Soykan HTML Report Viewer"
lctablo=Iif(This.tablo=.F.,'0','1')
LOCAL loHyperlink
 
Set Textmerge TO (lcfile) Noshow
Set Textmerge On
 
\<HTML>
\<HTML>
\<HEAD><H1><font color="
#0000FF" face="arial" size="4"><<lcheader>></font><font color="#000000" face="arial" size="2"> Rapor Tarihi : <<lcdate>></font></H1></HEAD>
\<TITLE><<lctitle>></TITLE>
\<BODY BGCOLOR = "
WHITE">
 
Nrec=Reccount()
LcNrec="
(Listed Record) Listelenen Kayıt Sayısı : "+Str(Nrec)
 
\<TABLE CELLPADDING=2 CELLSPACING=2 BORDER = <<lctablo>>>
\<TR WIDTH = 75%>
For I = 1 To Fcount()
    \<TH><font color="
#FF0000" face="arial" size="2"><<FIELD(I)>></font></TH>
Endfor
\</TR>
Scan
    \<TR>
    For ix = 1 To Fcount()
        \<TD><font color="
#000000" face="arial" size="2"><<TRANSFORM(EVAL(FIELD(m.ix)))>></font></TD>
    Endfor
    \</TR>
Endscan
\</TABLE>
\<font face="
Arial" size="1" color="red"></b><<lcnrec>></font>
\<p align="
left"><font face="Arial" size="1" color="gray">HTML Export Utility </font></p>
\</BODY>
\</HTML>
SET textmerge off
Set Textmerge To
 
***********************
Declare Integer ShellExecute In "
Shell32.dll" ;
    integer HWnd, ;
    string lpVerb, ;
    string lpFile, ;
    string lpParameters, ;
    string lpDirectory, ;
    long nShowCmd
 
=ShellExecute(0, "
Open", lcfile, "", "", 0)
Clear Dlls
  ENDIF