Anybody knows how to use Crystal Reports on an SQL Navision Database (NF SG 2.60 eNAD). Our Client is trying to use it but they are having problems because of Navision Naming Conventions. Following is the error when connecting to SQLdb.dbo.ABC International Ltd.$Item Error: “Incorrect Syntax near Ltd.” Any help in this regard is appreciated. Thnx Rubina firstname.lastname@example.org
You’ll need somehow to quote the table name part. I don’t know how CR does this but its usually with “”, as in “ABC International Ltd.$Item”.
What is taught in the US is to create a view. Views, allow you to change the column names and provide an additional layer of security, just to name a couple of advantages. Then simply have CR use the view.
Thnx for the suggestion. But If I tell our client that they have to create views for every table (and there might be many copies of that table depending on the no. of companies they have), they would not be very happy. Is there any technical resolution to this problem? Rubina email@example.com
The easy workaround is that you must use fully qualified names.
Is there any other work around beside creating a view for each table ???
Originally posted by mctester: What is taught in the US is to create a view. Views, allow you to change the column names and provide an additional layer of security, just to name a couple of advantages. Then simply have CR use the view.
Hi Michael, Could you develop more on this, What’s not a fully qualified name ? Does your solution involve renaming the Navision tables from the object designer ?
Originally posted by mctester: The easy workaround is that you must use fully qualified names.
See this link http://msdn.microsoft.com/library/default.asp?url=/library/en-us/acdata/ac_8_con_03_9c8j.asp Here’s part of it. The complete name of an object consists of four identifiers: the server name, database name, owner name, and object name. They appear in the following format: [ [ [ server. ] [ database ] . ] [ owner_name ] . ] object_name The server, database, and owner names are known as the qualifiers of the object name. When referring to an object, it is not necessary to specify the server, database, and owner. The qualifiers can be omitted by marking their positions with a period. The valid forms of object names are: server.database.owner_name.object_name server.database…object_name server…owner_name.object_name server…object_name database.owner_name.object_name database…object_name owner_name.object_name object_name An object name that specifies all four parts is known as a fully qualified name. Each object created in Microsoft® SQL Server™ must have a unique, fully qualified name. For example, there can be two tables named xyz in the same database if they have different owners.