After migrating from VB6 to Vb.NET over the last 12 months or so, I have started moving our legacy Crystal Reports 8.5 reports over into Microsoft Reporting (VS2015) - however, a lot of our reports display russian, chinese, arabic and other international character sets.
We're slowly moving over from SQL2000 (yes, its that old) onto a newer version of SQL Server once the project is completed but until then, I am having to migrate sections of the project over into .NET (im slowly learning C# while doing this) - but I have just hit a stumbling block on something I cant seem to get a solution from and that is (and I cant believe that its not supported straight off the bat so it HAS to be me) and that is MS Reporting not supporting Unicode for these other character sets. I have either missed something blindingly obvious with MSR or Microsoft have dropped a huge clanger.
I have tried changing the font (I have the standard fonts installed via Win10, which is my development OS) and tried MS Gothic UI and Segui UI - gothic had partial success, some of the chinese characters were converted but partial is not good enough. I dont seem to have MS Arial Unicode - just Arial but I would have thought these other "UI" named fonts would have supported it (I can get winforms to display those characters correctly in Datagridview so I know the font is supports what I need already).
So typically, my code calls an RDLC, sometimes with parameters, sometimes without. A sample of the code is below. SQL is injected through a dataset so it is dynamic within the application. I can view chinese/russian direct through SQL 2000's query viewer.
Dim ReportViewerScreen As New Reporting
ReportViewerScreen.Show()
ReportViewerScreen.ReportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local
ReportViewerScreen.ReportViewer1.Reset()
ReportViewerScreen.ReportViewer1.LocalReport.DataSources.Clear()
ReportViewerScreen.ReportViewer1.LocalReport.ReportEmbeddedResource = "MyReport.rdlc"
Dim sReportDataSource = New Microsoft.Reporting.WinForms.ReportDataSource()
sReportDataSource.Name = "DataSet1"
sReportDataSource.Value = ds.Tables(0)
ReportViewerScreen.ReportViewer1.LocalReport.DataSources.Add(sReportDataSource)
ReportViewerScreen.ReportViewer1.LocalReport.EnableExternalImages = True
ReportViewerScreen.ReportViewer1.LocalReport.EnableHyperlinks = True
ReportViewerScreen.ReportViewer1.RefreshReport()
ReportViewerScreen.ReportViewer1.Show()
I was hoping there would be some command or method that I have missed to get this working, 100% in any character set. The Ntext fields (and nvarchar) fields in SQL2000 have all had N' inserts/updates so I know the characters are correct (and visible) in SQL2000 as my previous statement above. Please help! Thanks
What I have tried:
changing fonts, googling unicode microsoft reporting support