MSSQL Reports on InterBase and vice versa
Hi list,
as I previously stated we have customers using InterBase databases as well
as customers using MS SQL server.
We're creating a single report using MS SQL server and then provide the
binary of the report to our customers.
Most of the time this works flawlessly but on some occasions it simply
won't work - mainly because of InterBase problems I figured.
Ok, so much for the background.
I now created a report using the MS SQL server which needs a table twice.
f.e.
select TableA.X1, ta2.X2
from TableA, TableA ta2
where TableA.Column = ta2.Column2
This works flawlessly on an MS SQL server but not on an InterBase Server.
If I change the query the following way, it's working perfectly:
select ta1.X1, ta2.X2
from TableA ta1, TableA ta2
where ta1.Column = ta2.Column2
That seems to be because InterBase needs any occurrence of a table to have
an alias when the table is needed more than once.
If I create the report using the InterBase database, everything works
fine, because then the alias' are added correctly.
How am I able to use this MS SQL server on an InterBase database?
I'm using version 10.06 of the ReportBuilder with Delphi 2007.
Kind Regards,
Christoph
--- posted by geoForum on http://delphi.newswhat.com
as I previously stated we have customers using InterBase databases as well
as customers using MS SQL server.
We're creating a single report using MS SQL server and then provide the
binary of the report to our customers.
Most of the time this works flawlessly but on some occasions it simply
won't work - mainly because of InterBase problems I figured.
Ok, so much for the background.
I now created a report using the MS SQL server which needs a table twice.
f.e.
select TableA.X1, ta2.X2
from TableA, TableA ta2
where TableA.Column = ta2.Column2
This works flawlessly on an MS SQL server but not on an InterBase Server.
If I change the query the following way, it's working perfectly:
select ta1.X1, ta2.X2
from TableA ta1, TableA ta2
where ta1.Column = ta2.Column2
That seems to be because InterBase needs any occurrence of a table to have
an alias when the table is needed more than once.
If I create the report using the InterBase database, everything works
fine, because then the alias' are added correctly.
How am I able to use this MS SQL server on an InterBase database?
I'm using version 10.06 of the ReportBuilder with Delphi 2007.
Kind Regards,
Christoph
--- posted by geoForum on http://delphi.newswhat.com
This discussion has been closed.
Comments
For the reason that you describe below (different DB's requiring different
SQL dialects), ReportBuilder is designed to handle one database at a time.
I would recommend possibly creating two different templates of the same
report for each database to rule out the possibility of issues occuring
while execution.
--
Regards,
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
thanks for your reply!
I was hoping that I could skip that step and let the ReportBuild do the
work for me.
Is it possible - for a future version - to implement some DB specific
syntax stuff? So if a report was created using db1 and then run on db2,
that the sqls (which you generate dynamically I guess?) are changed to
match db2s dialect?
Regards,
Christoph
--- posted by geoForum on http://delphi.newswhat.com
Thanks for the suggestion. This would be a very helpful and powerful
feature and we will consider it for a later release of ReportBuilder.
--
Regards,
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com
Nico Cizik
Digital Metaphors
http://www.digital-metaphors.com