Гость
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Interactive report и кодировка при выгрузке в CSV / 25 сообщений из 44, страница 1 из 2
30.06.2011, 15:08
    #37330796
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
Столкнулся с проблемой.

В Interactive report русские символы отображаются корректно, но если попытаться выгрузить это хозяйство в CSV, то в файле получаем ¿¿¿¿¿¿

Куда копать, подскажите

APEX - 4.0.2.00.07
...
Рейтинг: 0 / 0
30.06.2011, 15:23
    #37330848
SvUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
В свойствах приложения есть Automatic CSV Encoding, переключите в YES.
...
Рейтинг: 0 / 0
30.06.2011, 16:08
    #37330970
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
переключено...
...
Рейтинг: 0 / 0
30.06.2011, 17:42
    #37331196
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикот,

STFF кодировка csv.
...
Рейтинг: 0 / 0
04.07.2011, 13:46
    #37335410
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
Не помогло :(

по ссылке пишут что помогает изменение Application Primary Language на Russian. После этого у меня CSV вообще корявый генерится...

у меня кодировка база UTF8... не понимаю в чем проблема...
...
Рейтинг: 0 / 0
08.07.2011, 11:09
    #37342796
Dr.Zapadlo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикот, столкнуля с той же проблемой! и нашел решение Shared Components -> Globalization->Edit Globalization Attributes ->Application Primary Language выставляешь на русский... по идее отчеты теперь должны нормально формироваться...
...
Рейтинг: 0 / 0
08.07.2011, 13:38
    #37343250
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
не помогает :(
получаю такое вместо русских символов - мин";"ГаÑ�аноÐ
...
Рейтинг: 0 / 0
08.07.2011, 14:20
    #37343412
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикоту меня кодировка база UTF8... не понимаю в чем проблема...

Мало, очень мало данных. Давайте по порядку.
Покажите настройки приложения: Application Primary Language, Application Language Derived From, Automatic CSV. Скопируйте сюда запрос и результат запроса по выбору кодировки БД. Покажите значение DAD-атрибута nls-language/PlsqlNLSLanguage. Дайте исходную строку и её представление в CSV.
...
Рейтинг: 0 / 0
08.07.2011, 15:16
    #37343559
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
suPPLerангликоту меня кодировка база UTF8... не понимаю в чем проблема...

Мало, очень мало данных. Давайте по порядку.
Покажите настройки приложения: Application Primary Language, Application Language Derived From, Automatic CSV. Скопируйте сюда запрос и результат запроса по выбору кодировки БД. Покажите значение DAD-атрибута nls-language/PlsqlNLSLanguage. Дайте исходную строку и её представление в CSV.

suPPLer, спасибо за помощь

Application Primary Language - English (United Kingdom) (en-gb)
Application Language Derived From - Application Primary Language
Automatic CSV Encoding - YES

Код: plaintext
select value from nls_database_parameters where parameter = 'NLS_CHARACTERSET'

UTF8

DAD настройки показать не могу :( APEX на другом сервере крутится, как появится админ, добавлю.

В общем сейчас в Interactive reportе вижу - Константин, при экспорте в CSV получаю ¿¿¿¿¿¿¿¿¿¿
...
Рейтинг: 0 / 0
08.07.2011, 17:13
    #37343868
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикотApplication Primary Language - English (United Kingdom) (en-gb)
Application Language Derived From - Application Primary Language
Automatic CSV Encoding - YES

автор Automatic CSV Encoding

Automatic CSV Encoding controls the encoding of all comma-delimited (CSV) report output in an application. The default value for Automatic CSV Encoding is No. If Automatic CSV Encoding is set to Yes, CSV report output is converted to a character set compatible with localized desktop applications. The character set for the CSV encoding is determined by the Application Language Derived From setting.

The encoding of pages in Application Builder is determined by the character set of the database access descriptor (DAD) used to access Oracle Application Express. For example, if the character set of the database access descriptor is AL32UTF8, all pages in all applications in the Oracle Application Express user interface are encoded in UTF-8.

By default, the CSV output from report regions is encoded in the same character set as the database access descriptor. However, some desktop spreadsheet applications require that the data is encoded in the client desktop operating system character set. In the case of multibyte data, the CSV output from report regions will often appear corrupted when opened by a desktop spreadsheet application. This is because the CSV output is encoded differently than what is required by the desktop application. Enabling Automatic CSV Encoding resolves this issue.

For example, if the user's language preference for an application is de, the CSV data is encoded in Western European Windows 1252, regardless of the Database Access Descriptor character set setting. If the user's language preference is zh-cn, the CSV data will be encoded in Chinese GBK.

Код: plaintext
1.
2.
3.
4.
5.
6.
select nls_language, nls_territory, nls_windows_charset 
  from apex_040000.wwv_flow_languages 
 where lang_id = 'en-gb';

NLS_LANGUAGE         NLS_TERRITORY        NLS_WINDOW_CHARSET   
-------------------- -------------------- -------------------- 
ENGLISH              UNITED KINGDOM       WE8MSWIN1252        

Мне кажется, кириллица теряется при преобразовании UTF8 к WE Windows 1252.

Попробуйте поставить Automatic CSV Encoding=NO и дождаться ответа об настройках DAD.
...
Рейтинг: 0 / 0
08.07.2011, 18:31
    #37344006
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
поставил Automatic CSV Encoding в NO
теперь вместо Павел в CSV - Павел

на след неделе узнаю DAD настройки

спасибо
...
Рейтинг: 0 / 0
18.07.2011, 18:59
    #37356539
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
узнал nls-language/PlsqlNLSLanguage - american_america.al32utf8
...
Рейтинг: 0 / 0
19.07.2011, 12:30
    #37357450
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
не пойму что делать

причем проблема появилась после миграции на APEX 4...
...
Рейтинг: 0 / 0
19.07.2011, 14:54
    #37357863
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикот,

а если теперь, когда установлены следующие настройки:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 Application 
	Application Primary Language - English (United Kingdom) (en-gb)
	Application Language Derived From - Application Primary Language
	Automatic CSV Encoding -  NO 

 DAD 
	nls-language/PlsqlNLSLanguage - american_america.al32utf8 

 Database 
	NLS_CHARACTERSET - UTF8

заглянуть в получаемый csv-файл чем-то, что умеет работать с UTF-8 (например, Notepad++ или gedit), Вы увидите Павла?
...
Рейтинг: 0 / 0
19.07.2011, 15:13
    #37357907
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
Добавлю.

В принципе, у Вас есть несколько путей, чтобы выгружать кириллицу вместо каши:

0. Оставить вышеуказанные настройки без изменений и работать с полученными в UTF-8 csv-файлами при помощи того, что понимает UTF-8.

1. Поменять Automatic CSV Encoding на YES и выставлять каким-либо образом пользовательский язык на ru. Например, поменять основной язык в приложении или настройку Application Language Derived From, позволив пользователям выбирать язык. И надеяться, что кодировка выбранного языка распознаётся пользовательским приложением, которое потом обрабатывает csv-файл.
...
Рейтинг: 0 / 0
19.07.2011, 15:33
    #37357957
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
suPPLer, еще раз спасибо за помощь.

0. Если оствить как есть, Excel не понимает...
1. Тоже не помогает, не распознается ...

как оно работало до upgrade to APEX 4 ?
...
Рейтинг: 0 / 0
19.07.2011, 15:38
    #37357972
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
suPPLerангликот,

а если теперь, когда установлены следующие настройки:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 Application 
	Application Primary Language - English (United Kingdom) (en-gb)
	Application Language Derived From - Application Primary Language
	Automatic CSV Encoding -  NO 

 DAD 
	nls-language/PlsqlNLSLanguage - american_america.al32utf8 

 Database 
	NLS_CHARACTERSET - UTF8

заглянуть в получаемый csv-файл чем-то, что умеет работать с UTF-8 (например, Notepad++ или gedit), Вы увидите Павла?

да, вижу :)

почему Excel не распознает...
...
Рейтинг: 0 / 0
19.07.2011, 15:48
    #37357990
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикот1. Тоже не помогает, не распознается ...


Странно, опишите, что конкретно сделано. Я установил русский язык в качестве основного у приложения и включил Automatic CSV Encoding. Получил файл в windows-1251.

англикоткак оно работало до upgrade to APEX 4 ?

В зависимости от того, как выполнялся upgrade, могу предположить, что:
0. Automatic CSV Encoding было установлено в YES, кто-то проапдейтил <apex_schema>.wwv_flow_languages.nls_window_charset для lang_id = 'en-gb'. Как результат, csv-файлы выгружались в windows-1251. После обновления используется новая таблица с оригинальными NLS-настройками.
1. Атрибут nls-language/PlsqlNLSLanguage для DAD APEX имел другое значение до обновления, например, AMERICAN_AMERICA.CL8MSWIN1251. Во время обновления был приведён в соответствие с документацией и установлен в AMERICAN_AMERICA.AL32UTF8.
...
Рейтинг: 0 / 0
19.07.2011, 15:51
    #37357997
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикотпочему Excel не распознает...

STFW excel utf-8 csv .
...
Рейтинг: 0 / 0
19.07.2011, 16:09
    #37358045
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select nls_language, nls_territory, nls_windows_charset 
  from apex_040000.wwv_flow_languages 
 where lang_id = 'en-gb'
union all
select nls_language, nls_territory, nls_windows_charset 
  from apex_030200.wwv_flow_languages 
 where lang_id = 'en-gb'

ENGLISH UNITED KINGDOM WE8MSWIN1252
ENGLISH UNITED KINGDOM WE8MSWIN1252

остается только атрибут nls-language/PlsqlNLSLanguage...

авторСтранно, опишите, что конкретно сделано. Я установил русский язык в качестве основного у приложения и включил Automatic CSV Encoding. Получил файл в windows-1251.

сдел все по шагам, но в выгружвемом файле вместо ¿¿¿¿¿¿¿¿¿¿ получаю Павел
может это потому что Windows локаль не русская? ...
...
Рейтинг: 0 / 0
19.07.2011, 16:33
    #37358073
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикот
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select nls_language, nls_territory, nls_windows_charset 
  from apex_040000.wwv_flow_languages 
 where lang_id = 'en-gb'
union all
select nls_language, nls_territory, nls_windows_charset 
  from apex_030200.wwv_flow_languages 
 where lang_id = 'en-gb'
ENGLISH UNITED KINGDOM WE8MSWIN1252
ENGLISH UNITED KINGDOM WE8MSWIN1252


А зачем два раза одно и тоже запрашиваете?


англикотсдел все по шагам, но в выгружвемом файле вместо ¿¿¿¿¿¿¿¿¿¿ получаю Павел
может это потому что Windows локаль не русская? ...

Определённо. Какая локаль?
...
Рейтинг: 0 / 0
19.07.2011, 17:36
    #37358202
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
English (United Kingdom)
и изменить ее нельзя...
...
Рейтинг: 0 / 0
19.07.2011, 17:38
    #37358205
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
System Locale: en-us;English (United States)
Input Locale: en-gb;English (United Kingdom)
...
Рейтинг: 0 / 0
19.07.2011, 18:26
    #37358284
suPPLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
англикотInput Locale: en-gb;English (United Kingdom)

Используется кодовая страница 1252 . Вам остаётся найти в ней кириллические символы. :)

Вы уверены, что раньше на этом же рабочем месте до обновления APEX всё работало?
...
Рейтинг: 0 / 0
19.07.2011, 19:30
    #37358353
англикот
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Interactive report и кодировка при выгрузке в CSV
да, после upgrade до APEX 4 багу завели...
скажем так, 99% уверен что работало, потому что репорт старый
...
Рейтинг: 0 / 0
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Interactive report и кодировка при выгрузке в CSV / 25 сообщений из 44, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]