Страница 1 из 1
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 15 окт 2010, 09:35
Nickola
Здравствуйте! решил попробовать Ваш продукт, скачал триальную версию Stimulsoft Reports.Net Ultimate 2010.2 (2010.2.800.0)
Открываю Disigner.exe. Создается при открытии дизайнера новый пустой отчет. Заглядываю в Код отчета - в Коде синтаксис С# показывается нормально, без всяких ошибок:
Сразу после этого иду в свойства отчета и меняю там язык с C# на VB.net - т.к. на C# я не программирую. Меня предупреждают, что код отчета будет перегенрирован. Соглашаюсь. Снова иду в Код. И там уже совсем другая картина:
Почти весь код в ошибках: "Syntax error", "A namespace can only contain types and namespace declarations.", "Identifier_Literal expected", "Namespace expected"
Причем, после этого, если не перезапуская дизайнер создать новый пустой отчет через меню, то в нем и синтаксис на C# весь будет в ошибках, причем он будет еще более искаженный:
Проверил на двух компах, все повторяется. Вы проверяли, вообще, как у Вас Дизайнер с VB.net работает в плане преобразования и проверки синтаксиса? Или все на C# работают, а VB.net так - для "галочки"? И почему нельзя задать язык по умолчанию для новых отчетов?
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 15 окт 2010, 10:27
Ivan
Здравствуйте.
Nickola писал(а):... Почти весь код в ошибках: "Syntax error", "A namespace can only contain types and namespace declarations.", "Identifier_Literal expected", "Namespace expected" ...
Проверил на двух компах, все повторяется. Вы проверяли, вообще, как у Вас Дизайнер с VB.net работает в плане преобразования и проверки синтаксиса?
Преобразования работают нормально. Описанная вами проблема с подчеркиванием кода - только визуальная, проявляется только на закладке Code и никак не влияет на работу приложения.
Причина - мы используем сторонний редактор кода, адаптированный под наши нужды. У него есть какая-то встроенная проверка синтаксиса, которая, как оказалось, не дружит с русскими названиями.
В данном случае, если установлен русский язык интерфейса, название отчета по умолчанию будет "Отчет", и редактор начнет ругаться на синтаксис.
Но это влияет только на отображение на закладке Code, сами отчеты при этом прекрасно компилируются и работают.
Nickola писал(а):И почему нельзя задать язык по умолчанию для новых отчетов?
Через интерфейс задать язык по умолчанию нельзя, это можно сделать из кода:
Код: Выделить всё
StiOptions.Engine.DefaultReportLanguage = StiReportLanguageType.VB;
Спасибо.
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 15 окт 2010, 12:06
Nickola
Спасибо за ответ. Но, указанная проблема проявляется странным образом. Если открывать отчет двойным щелчком из файлового менеджера - то он открывается нормально и никакого подчеркивания ошибок синтаксиса нет.
Если этот же отчет открыть из меню Файл в окне Дизайнера, то отчет открывается - и в Коде видны указанные ранее ошибки.
Такое ощущение, что при открытии отчета из окна Проводника проверяльщик синтаксиса просто вообще не включается.
Может не стоит давать русские названия, если они приводят к таким визуальным артефактам? И именовать отчеты и их объекты (названия классов, процедур и т.п.) по английски, в независисмости от языка пользовательского интерфейса? Ведь эти имена генерируются автоматически, какой смысл в их русификации?
Ведь, к примеру, я пишу выражение в поле отчета, и случайно совершаю там ошибку. При этом, при предварительном просмотре, вылезает лог ошибок отправляет меня в окно Код. А там все и так исчеркано красным! Как в этом случае можно отличить реальную свою ошибку от тех, которые навыдумывал кривой проверяльщик синтаксиса? Очень неудобно.
И еще, подскажите пожалуйста, куда вставлять указанную Вами строку в код, чтобы дизайнер при открытии создавал пустой отчет на языке VB.net? Cпасибо!
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 18 окт 2010, 19:53
Jan
Здравствуйте,
Спасибо за ответ. Но, указанная проблема проявляется странным образом. Если открывать отчет двойным щелчком из файлового менеджера - то он открывается нормально и никакого подчеркивания ошибок синтаксиса нет.
Если этот же отчет открыть из меню Файл в окне Дизайнера, то отчет открывается - и в Коде видны указанные ранее ошибки.
Такое ощущение, что при открытии отчета из окна Проводника проверяльщик синтаксиса просто вообще не включается.
Подкорректировали дизайнер отчетов. Изменения будут доступны в следующем пререлиз билде.
Может не стоит давать русские названия, если они приводят к таким визуальным артефактам? И именовать отчеты и их объекты (названия классов, процедур и т.п.) по английски, в независисмости от языка пользовательского интерфейса? Ведь эти имена генерируются автоматически, какой смысл в их русификации?
Для многих эта опция крайне полезна. Ее можно отключить при помощи опции Generate Localized Name в параметрах дизайнера.
Ведь, к примеру, я пишу выражение в поле отчета, и случайно совершаю там ошибку. При этом, при предварительном просмотре, вылезает лог ошибок отправляет меня в окно Код. А там все и так исчеркано красным! Как в этом случае можно отличить реальную свою ошибку от тех, которые навыдумывал кривой проверяльщик синтаксиса? Очень неудобно.
И еще, подскажите пожалуйста, куда вставлять указанную Вами строку в код, чтобы дизайнер при открытии создавал пустой отчет на языке VB.net?
Код вставляется в любое место Вашей программы до момента запуска дизайнера или создания отчета. Изменить поведение designer.exe нельзя.
Спасибо.
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 25 окт 2010, 08:36
Nickola
Для многих эта опция крайне полезна. Ее можно отключить при помощи опции Generate Localized Name в параметрах дизайнера.
у меня эта "галочка" снята. Все равно Дизайнер генерирует локализованные имена. По умолчанию создается отчет с именем файла "Отчет.mrt" и внутри в коде тоже на русском:
Код: Выделить всё
namespace Reports
{
public class Отчет: Stimulsoft.Report.StiReport
{
public Отчет()
{
this.InitializeComponent();
}
.....
Игнорирует дизайнер эту установку...
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 26 окт 2010, 05:46
Aleksey
Здравствуйте,
Спасибо за сообщение об ошибке.
Мы работаем над этой проблемой. Мы дадим Вам знать, когда решение будет доступно.
Спасибо.
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 26 окт 2010, 08:46
Nickola
Пожалуйста. Всегда рад помочь.
Я уже за неделю изучения Вашего продукта выловил аж три ошибки, причем оч.глубоко еще в него не зарывался.
Designer - преобразование нового отчета с C# на VB.net - ошибки синтаксиса в коде!
Добавлено: 29 окт 2010, 11:16
Aleksey
Здравствуйте,
Проблема решена.
Данное решение будет доступно в следующем пререлиз билде.
Спасибо.