Question
“How do I displaying report Open/Save dialogs?”
Solution
The Report.Template object has several events that can be used for customizing what happens when a report is loaded or saved:
- OnLoadStart
- OnLoadEnd
- OnNew
- OnSaveStart
- OnSaveEnd
The OnLoadEnd and OnNew events are often used to perform actions related to report and data initialization.
The OnSaveEnd event is often used to save additional descriptive (“meta”) data to the database each time the report is saved.
Example:
The Report.Template events are public and therefore must be assigned at run-time.
- In the private section of your form declaration you can declare an event-handler method:
TForm = class(TForm) private procedure myTemplateOnLoadEndEvent(Sender: TObject); public end;
- In the Form.OnCreate event, you can assign the event-handler to the event:
procedure TForm1.FormCreate(Sender: TObject); begin ppReport1.Template.OnLoadEnd := myTemplateOnLoadEndEvent; end;
- Implement the event-handler method:
procedure TForm1.myTemplateOnLoadEndEvent(Sender: TObject); begin {add code here to initialize the report or data, etc. } ppReport1.PrinterSetup.MarginTop := 0.5; end;