А у меня при переходе с D7 на D2009 при использовании таблиц парадокса, неверно стали отображаться знаки означающий валюту, а именно раньше было "1 254,34 р." а сейчас "1 254,34 @=" - последний символ похож больше на знак как на клавише ентер.
Изменение поля создание его вновь никчему не привели, все как есть так и осталось, и так везде гдеб я не использовал данные из таблицы в компонентах. Может подскажите знатоки в чем причина?
Проблемма с денежными знаками Delphi2009
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
В том что 2009 версию сделали в кодировке уникода..
[syntax=Delphi] [/syntax]
Duncon писал(а):В том что 2009 версию сделали в кодировке уникода..

Незнаю 2009 версию ставить не собираюсь, на ум приходит перегонять в кодировку налету..
[syntax=Delphi] [/syntax]
Спасибо, что откликнулись, вот и у меня такие же мысли стали возникать. Короче вывод: 2009 версию сношу
откатываюсь до 2007.

- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Во-первых, посмотрите, наверняка там у компонентов должны быть свойства, которые позволяют это регулировать. Ну не могли же ребята всех так "кинуть" 
А потом достаточно написать обработчики событий OnGetText и OnSetText (если я не ошибся в названиях) и назначить всем полям TStringsField во всех DataSet-ах.
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Вот, посмотрите,
http://www.micro-isv.asia/2008/08/get-r ... d-unicode/
пишут про директиву компилятора
{$IFDEF UNICODE}
А вот еще статья
http://www.xakep.ru/post/44864/default.asp

А потом достаточно написать обработчики событий OnGetText и OnSetText (если я не ошибся в названиях) и назначить всем полям TStringsField во всех DataSet-ах.
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Вот, посмотрите,
http://www.micro-isv.asia/2008/08/get-r ... d-unicode/
пишут про директиву компилятора
{$IFDEF UNICODE}
А вот еще статья
http://www.xakep.ru/post/44864/default.asp
Старые типы данных также можно будет использовать, но потребуется явное указание типа (например, AnsiString и AnsiChar для указания старой однобайтной строки и символа).
Кроме того, был введен новый класс TEncoding, предназначенный для преобразования текста в различные кодировки. Соответственно, претерпели изменения некоторые базовые классы, которые стали использовать данный класс в реализации своих методов. Так метод LoadFromFile класса TStrings теперь автоматически определяет кодировку текста и производит его перекодировку в UTF-16 (UnicodeString), используя TEncoding. Множества вида Set of Char теперь в коде должны быть заменены на Set of AnsiChar. В противном случае компилятор выдаст ошибку
ага, только может быть я не совсем понятно выразился или сам не доганяю. ситуация следующая, поле Currency типа, в базе соответственно money, ранее в делфи7 и проге указав это в гриде и полях оно отображалось в денежном формате с доболнением единицы валюты, например р., не изменяя ничего, а проект в делфи2009 компилируется без ошибок и предупреждений, получаем на выходе вместо "р." фигню, и понятное дело что с кодировкой проблемма, да вот только, я то уазал в таблице что поле Currency=true и везде все соответвенно прописано соответвенно, а она зараза упорно не пишет сумму с дополнением "р." как было раньше, обрабочик на события можно повесить, но ведь это вроде как не выход, ведь дело то элементарное вроде как...