views:

12

answers:

0

Hi I am working on MS Access 2007. The project is a data entry project with chained forms inserting data into respective Access data tables. The data entry part is working just fine with Arabic strings. My problems arise with reports created within Access. In a typical report page, pie charts were created using the chart wizard and predefined queries.

For example: Question (A) is a single selection question with options:

1- الخيار الأول

2- .......... . .

Selections will be saved within table's PT1, Column A using their numerical values. To analyze responses, I use an aggregate query, that counts the frequency of each choice, then groups the choices. In order to display proper legends (in arabic) I use a look up table A-Key in order to display the equivalent arabic string of each numerical choice. The look up table consists of key value pairs where the value field has 1 ..4 and the Key field has the respective choice in Arabic

A sample aggregate query looks like this:

SELECT Count(PT1.ID) AS CountOfID, [A-Key].Key FROM PT1 INNER JOIN [Q5-Key] ON PT1.[A]=[A-Key].Val GROUP BY [A-Key].Key;

The problem is that the chart appears with a legend of ????? strings! I am aware that this is an encoding issue. I have searched the MSDN and the internet extensively and attempted the following:

  1. Use collate in SQL syntax however all online references where about SQL Server. When I used it I got a syntax error. My aggregate query with collate clause looks as follows:

SELECT Count(PT1.ID) AS CountOfID, [A-Key].Key FROM PT1 INNER JOIN [Q5-Key] ON PT1.[A]=[A-Key].Val COLLATE ARABIC_AC_SI GROUP BY [A-Key].Key;

  1. Set arabic as an editing language for MS-Access project

  2. Manipulate the graph from VBA, however that wont work for me since the values are retrieved from a lookup table

  3. To further explore the issue, I was able to display my arabic string keys in a text box on an Access report, no sweat!

My hypothesis is that the MS Graph 8, is not aware of the strings encoding as they get passed by the query result set. How can I fix that?

Unfortunately, MS-Access 2007 does not have an nType variables as is the case in SQL Server.

Any guidance will be much appreciate it. Thanks in advance.