<a href="/scripts/NetInvoice.exe?uid=<#uid>&command=11">Új számla</a><br>
<a href="/scripts/NetInvoice.exe?uid=<#uid>&command=12">Számlák listája</a><br>
procedure TWebModule1.Command;
…
12: begin//számlák lista
PageProducer1.HTMLFile:=TEMPLATEPATH+'invoicelist.dat';
Response.Content:=PageProducer1.Content;
end;
Ehhez létrehoztunk egy invoicelist.dat állományt, melyben egy Html táblázat kap helyet, amiben megtalálható a számlák táblájának fejléce, így programból nekünk csak a sorokat kell generálnunk attól függően, hogy rekord is található-e az invoice táblában. Elhelyezünk tehát egy invoicelistitems címkét a invoicelist.dat-ba, arra a helyre, ahová be kell szúrnunk az adatokat. Ezt a műveletet pedig rábízzuk a GetInvoiceListItems nevű függvényünkre.
procedure TWebModule1.PageProducer1HTMLTag(Sender: TObject; Tag: TTag; const TagString: String;
TagParams: TStrings; var ReplaceText: String);
…
if TagString='invoicelistitems' then begin
ReplaceText:=GetInvoiceListItems;
end;
Ebben a függvényben szokás szerint meghatározzuk a használandó adatbázis típusát és megnyitjuk azt.
function TWebModule1.GetInvoiceListItems: string;
…
Ezt követően egy ciklus segítségével végigmegyünk az összes rekordon és legeneráljuk az adatokkal együtt a HTML táblázat sorait.
while not ds.Eof do begin
result:=result+'<tr>';
result:=result+'<td>'+ds.Fields[0].AsString+'</td>';
…
result:=result+'</tr>';
ds.Next;
end;
…
procedure TWebModule1.Command;
11: begin//Új számlafej
PageProducer1.HTMLFile:=TEMPLATEPATH+'invoicenew1.dat';
Response.Content:=PageProducer1.Content;
end;
Ha a felhasználó ezt választja, akkor az invoicenew1.dat állomány kerül felhasználásra, melyben egy olyan HTML Form kap helyet, amelyben fel tudjuk venni a számla fejléc adatait. Ezek kerülnek majd az Invoice táblába. Amikor a felhasználó itt befejezi a műveletet és a Tovább gombra kattint, akkor az invoicenew1.dat-ban lévő rejtett command mező 13-es értéke fogja jelölni, hogy most kell megadni a számla tétel adatait. A következő részben ezzel folytatjuk alkalmazásunk fejlesztését.
<form method=get action="/scripts/NetInvoice.exe">
<input type=hidden name=command value=13>