AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Администрирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.05.2005, 11:18   #1  
George V. Tavrizoff is offline
George V. Tavrizoff
Участник
 
69 / 10 (1) +
Регистрация: 02.02.2003
Адрес: Вашингтонский обком
Axapta 3.0SP3RU под Oracle 9.2.* RDBMS
Всем привет!

1.)
Axapta 3.0SP3RU работает под MS SQL 2000 SP3a.
Например,
в таблице PurchPool можно сохранить в поле "Код" (StringSize = 50)
значение из 50 символов на русском языке.

2.)
Axapta 3.0SP3RU работает под Oracle 9.2.* RDBMS под UNIX AIX 5.2.
Axapta 3.0 Application Server под Win2K SP3 Server.
Axapta 3.0 Client под Win2K SP4 Professinal (Oracle Client 10g).

Например,
в таблице PurchPool можно сохранить в поле "Код" (StringSize = 50)
значение ТОЛЬКО из 25 символов на русском языке,
т.к. Oracle требует для каждого русского символа StringSize=2.

Думаю что эта проблема связана с Unicode, но конкретной формулировки и соответственно пути решения пока не нашел.

Что делалось для решения проблемы:
В конфигурационной утилите установка галочки "Initialize database for Unicode" и затем запуск синхронизации - не помогает.

С уважением, Георгий.
Старый 20.05.2005, 12:13   #2  
usp is offline
usp
Участник
 
21 / 10 (1) +
Регистрация: 31.07.2003
Адрес: Москва
Какая кодировка использована внутри Oracle?
Например, запросить из SQL*Plus:

select * from nls_database_parameters where PARAMETER in( 'NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET');
Старый 23.05.2005, 12:09   #3  
George V. Tavrizoff is offline
George V. Tavrizoff
Участник
 
69 / 10 (1) +
Регистрация: 02.02.2003
Адрес: Вашингтонский обком
Вот результат выполнения запроса:

select * from nls_database_parameters where parameter in ('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');

PARAMETER VALUE

------------------------------ -------------------------------------------------

NLS_CHARACTERSET AL32UTF8

NLS_NCHAR_CHARACTERSET AL16UTF16


Я так сильно подозреваю, что нужно чтобы было установлено
"NLS_CHARACTERSET CL8MSWIN1251" или аналогичная этой кодовая страница для Oracle под UNIX.
Старый 23.05.2005, 13:05   #4  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
from usp: Да, дело в этом. Попробуйте поменять кодировку хранения.
Старый 27.05.2005, 15:51   #5  
George V. Tavrizoff is offline
George V. Tavrizoff
Участник
 
69 / 10 (1) +
Регистрация: 02.02.2003
Адрес: Вашингтонский обком
Вобщем путем RTFM по Oracle установлено и проверено следующее:
(правда пока под Windows 2000 Professional RUS)

У Oracle instance д.б. следующие параметры для правильной работы c Uniсode:
NLS_CHARACTERSET AL32UTF8
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_LENGTH_SEMANTICS CHAR

Т.о. в Axapta в поле со StringSize 50 можно будет ввести 50 букв на русском языке и в Oracle эти буквы будут правильно отражаться.
Старый 11.01.2006, 11:07   #6  
st_msav is offline
st_msav
Участник
Аватар для st_msav
 
49 / 14 (1) ++
Регистрация: 24.08.2005
Адрес: Moscow City
Дело в том, что параметр NLS_CHARACTERSET должен иметь значение CL8MSWIN1251 иначе при сохренении русского символа будет использован байт код, соответственно длина поля будет уменьшена в 2 или 4 раза, в зависимости от кодировки установленной в данный момент.
Старый 24.10.2008, 08:53   #7  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Подниму тему, так как ответ не определен. Все же каким должен быть параметр NLS_CHARACTERSET? AL32UTF8 или CL8MSWIN1251? В руководстве по утсановке оракла рекомендуют первое. Oracle 10g под Windows Server 2003
Старый 24.10.2008, 12:29   #8  
ZVV is offline
ZVV
MCITP
MCP
Oracle
MCBMSS
 
1,006 / 246 (11) ++++++
Регистрация: 13.02.2004
Адрес: Минск
->
Цитата:
Сообщение от Eldar9x Посмотреть сообщение
Подниму тему, так как ответ не определен. Все же каким должен быть параметр NLS_CHARACTERSET? AL32UTF8 или CL8MSWIN1251? В руководстве по утсановке оракла рекомендуют первое. Oracle 10g под Windows Server 2003
А можно ссылку на упомянутую документацию?

Дело в том, что в исходном вопросе речь шла про 3-ку, где это было важно, потому что все строки аксапта хранила в NLS_CHARACTERSET (поля типа VARCHAR2), соответсвенно, если вам были нужны только русский/английский, то можно было использовать CL8MSWIN1251 и не иметь никаких проблем.
Если же речь вести по ДАХ4 и дальше, то там все строки хранятся в NLS_NCHAR_CHARACTERSET кодировке (поля типа NVARCHAR2). И я не совсем догоняю как может NLS_CHARACTERSET в данном случае на что-то влиять?
По крайней мере на тех инсталяциях 4-ка+10г, с которыми я имел дело, стоит основная кодировка CL8MSWIN1251 и никаких проблем вроде нет.
__________________
Zhirenkov Vitaly
За это сообщение автора поблагодарили: Logger (1).
Теги
ax3.0, оракл

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Установка Dynamics 4.0 под Oracle Paul_ST DAX: Администрирование 6 20.04.2007 16:36
Проблема с установкой Axapta 2.5+Oracle 8 Pawlik DAX: Администрирование 3 18.11.2005 10:52
Ускорение выполнения запроса Oracle + MS Axapta Горбунов Дмитрий DAX: Программирование 17 15.11.2005 18:13
Oracle и OLAP-Axapta Vasilenko Alexsandr DAX: Администрирование 18 22.06.2004 18:57
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:16.