SSRS report-Arabic content from dataset in local development PC's printed correctly,but in SSRS server it is in reverse

krishna 466 Reputation points
2021-01-17T04:49:02.467+00:00

I have an SSRS report developed which has some dataset values with arabic content ,when i run the report with SSRS tool in my development pc (VS2017) it runs fine ,but when deployed to my SSRS server the arabic content is in reverse.

What i tried : I tried setting locale to arabic for the expression but it didnt work .

I tried setting textbox having the expression to RTL but this also shows content in reverse .

I tried string reverse ,it shows content correctly on the server but when i run the report from my VB.NET code arabic content is all haphazard ,also i have some expressions with english,numbers and arabic words so i cannot use string reverse.

SQL Server Reporting Services
SQL Server Reporting Services
A SQL Server technology that supports the creation, management, and delivery of both traditional, paper-oriented reports and interactive, web-based reports.
2,951 questions
0 comments No comments
{count} votes

Accepted answer
  1. krishna 466 Reputation points
    2021-01-24T07:30:56.533+00:00

    Hi,
    So i figured out the issue ,we are using IBM DB2 database .Initially when we developed the report we had a normal connection string like this

    Provider=IBMDA400.DataSource.1;Data Source=<your data source>;Default Collection="<your default connection";Convert Date Time To Char=FALSE;Use SQL Packages=False;Add statements to SQL package=False

    with this connection string arabic was in reverse and this is what we deployed in our SSRS server

    Then we changed in our development environment the connection string

    Provider=DB2OLEDB;Initial Catalog=dbsys2;Network Transport Library=TCP;Host CCSID=20420;PC Code Page=1256;Network Address="<your value>;Network Port=446;Package Collection="<your value>;Default Schema="<your value>;Default Qualifier="<your value>;DBMS Platform=DB2/AS400;Connection Pooling=True;Units of Work=RUW

    with this arabic was coming correctly and we deployed our reports it in our SSRS server

    The problem was :this new connection string was never updated (and our reports were still referring the first data source) when we deployed through visual studio so i just had to go to the data source and manually change it so arabic content was working fine then in the SSRS Server too


1 additional answer

Sort by: Most helpful
  1. ZoeHui-MSFT 38,626 Reputation points
    2021-01-18T06:57:40.603+00:00

    Hi @krishna ,

    I try to reproduce your issue, I'm using SSRS2017, however the report runs fine in report server with Arabic content.

    You may have a try in the test environment with higher version of SSRS.

    I also did some research online to fix reversed Arabic characters mixed with English in SQL server with T-SQL like shown below.

    CREATE TABLE testa (myText nvarchar(100));  
    alter table testa alter column myText NVARCHAR(100)  COLLATE ARABIC_CI_AI   
    INSERT INTO testa VALUES (N'‏الأبجدية العربية‎ Hello ‏الأبجدية العربية‎ World')  
      
    select * from testa  
      
    select nchar(8237) + myText + nchar(8236) as columnNameDisplay  
    from testa  
    

    57489-screenshot-2021-01-18-145225.jpg

    Details you may refer:how-to-fix-reversed-arabic-characters-mixed-with-english-in-sql-server

    We could process the fields with t-sql in the dataset and then use it in the report.

    Hope it will give you some ideas.

    https://learn.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms156493(v=sql.105)?redirectedfrom=MSDN

    Regards,
    Zoe


    If the answer is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our [documentation][3] to enable e-mail notifications if you want to receive the related email notification for this thread.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.