Exemplu de utilizare a evenimentului "OnBeforePrint"
Exemplu de utilizare a evenimentului "OnBeforePrint"
Pentru a demonstra acest eveniment, creați un raport care reprezintă o listă de clienți. Acest raport va include doar acele companii al căror nume începe cu litera "A".
Să creăm un nou proiect, să plasăm componenta "TfrxDlDBTable" pe formular și să setăm aceste proprietăți:
UserName = 'Subjects'
Deschideți designerul de rapoarte și creați un raport ca acesta:

Selectați banda de date și comutați la tab-ul “Evenimente” din inspectorul de obiecte:

Pentru a crea un handler pentru evenimentul “OnBeforePrint” (care este cel mai potrivit pentru noi), faceți dublu clic pe câmpul gol din dreapta numelui evenimentului:

Aceasta adaugă un handler gol în script, iar designerul comută la tab-ul “Cod”.

Tot ce este necesar acum este să tastați următorul cod în corpul handler-ului:
if Copy(<Subjects."acSubject">, 1, 1) = 'A' then
MasterData1.Visible := True
else
MasterData1.Visible := False;
Rulați raportul și asigurați-vă că scriptul funcționează corect:

Să explicăm câteva lucruri. Un handler poate fi atribuit evenimentelor mai multor obiecte - parametrul “Sender” arată care obiect a inițiat evenimentul. Pentru a atribui un handler existent unui eveniment, fie îl tastați direct în inspectorul de obiecte, fie îl selectați din lista derulantă:
Un link către un handler poate fi șters cu ușurință - selectați handler-ul atribuit în inspectorul de obiecte și apăsați tasta “Șterge”.
 |
Dacă handler-ul evenimentului este șters, codul rămâne în continuare pe raport, dar nu este folosit. Doar handler-ul evenimentului rămâne, de asemenea, fără ca vreun cod să fie executat și fără ca vreo eroare să apară.
|