@Deepaak
How to create LazReport programatically. My project takes different database as per user choice. If somebody can provide sample code or demo project than it will be very usefull.
I'm not sure what you mean. Each LazReport has a DataSet property, which can be assigned just before the report starts like this:
frReport1.Dataset := frDBDataSet1;
frDBDataSet1 has a DataSet/DataSource property, you can also change that according to your needs:
frDBDataSet1.DataSet := SQLQuery1;
The query can be linked to whatever database you like.
On the other hand it's also possible to create a report dynamically from scratch, you can find an example for FortesReport here:
http://forum.lazarus.freepascal.org/index.php/topic,43151.msg301584.html#msg301584. You can do the same thing for LazReport, but building a complex report dynamically though it's not particularly hard, it's a time consuming task.