I am writing a program using Delphi 2006 and storing data in XML files and a Firebird database. I create reports using either FastReports, Excel or QuickPDF. I allow my users to package several reports together and be directed to a destination of their choice, whether it is a PDF file, a printer, the screen, or email.
I want my users to be able to configure their printer choices for the reports they send to printers. To do this, I will use the printer dialog to choose a printer and set the properties of that printer. I want to be able to capture those properties and store them so that when they run their package of reports, they will all go to the correct printer using the configurations they have chosen.
I know different printers have different configuration possibilities. For example, one that I use will allow me to choose to print booklet style so you can produce a 5 1/2 X 8 1/2 booklet from a report. It's possible that a user might choose an option like that when they are configuring a report in their package and expect that report to print in that manner. There are probably lots of possibilities that I am not aware of but would like to allow if that is possible. I just don't know how to capture that configuration from the printer dialog, store it in a database and then use that information to configure the printer when it's time to print the report.
How can I translate the information stored in the printer dialog into something I can store (even in a blob) in a database and then use that information to configure the printer?
Thank you for your help.