У моего клиента есть глобальная проблема с отчетами и их дальнейшей обработкой в экселе. Он копирует цифры из нашего отчета, вставляет его в эксель, и не может с ними работать, потому что разделители цифр разные и система по-разному понимает значения (1 млн воспринимает как 1). Можно ли как-то глобально решить вопрос, чтобы не править его отчеты в OneBox или каждый его отчет в экселе?
У моего клиента есть глобальная проблема с отчетами и их дальнейшей обработкой в экселе. Он копирует цифры из нашего отчета, вставляет его в эксель, и не может с ними работать, потому что разделители цифр разные и система по-разному понимает значения (1 млн воспринимает как 1). Можно ли как-то глобально решить вопрос, чтобы не править его отчеты в OneBox или каждый его отчет в экселе?
Попробую рассказать как это должно было быть сделано "правильно".
В настройках любой операционной системы есть раздел "Региональные настройки". Это касается всех операционных систем. Там указывается язык, формат в котором показывать дату (YYYY-MM-DD, DD/MM/YYYY, ...), формат в котором указывать время (12/24), формат какую валюту показывать и как именно (значок $ спереди, значок $ после), как форматировать даты (пробелы между тысячами, плавающая точка это точка или запятая, как показывать отрицательные числа - в скобках или с минусом). Там примерно такая куча настроек как на скриншотах.
Когда ты пишешь софт под операционку (desktop-софт), то по-правильному тебе нужно при запуске программы спросить региональные настройки или вызывать штатные методы операционной системы типа показать_денежное_значение(xxx). И в таком случае операционка сама отформатирует данные и покажет их на экране согласно настроек.
Таким образом достигается, что во всех программах на операционной системе одинаковое форматирование данных и один язык. Правильно работает COPY-PASTE между всеми программами и так далее.
---
Но! Вот настает эра облачного софта, который работает через браузер. И беда-печаль, только один браузер разрешает региональные параметры операционной системы - это Firefox. Все остальные на это забивают по полной. (Хотя язык передают все).
С языком получается такая картинка: я знаю что у юзера выставлен английский язык в операционной системе, но использовать это не могу - потому что все начнут жаловаться "я хочу чтобы операционка была на английском, но сайт хочу читать на русском, почему меня редиректит на английскую версию, а?".
А я региональными параметрами проблема стала куда масштабнее: я не могу их узнать и мне надо показывать форматирование на свое усмотрение. Вы же понимаете, что если у вас есть OneBox который показывает данные одним способом, есть desktop Excel у которого форматирование под настройки операционной системы, а есть Google Drive, у которого вообще настройки под региональные параметры США - то COPY-PASTE между ними нормально работать не будет. Даже если мы в OneBox поправим, то в Google Drive все равно останется расхождение с вашей операционкой.
---
По сути, единственный вариант это решить хоть как-то, это приделать внутри OneBox региональные параметры "свои", чтобы можно было все настраивать как угодно. Только вот в OneBox около 5000-6000 экранов (страниц), и нужно просмотреть каждую и отформатировать вывод каждой строки. Когда-нибудь мы это сделаем, но пока есть задачи поважнее.
Попробую рассказать как это должно было быть сделано "правильно".
В настройках любой операционной системы есть раздел "Региональные настройки".
Это касается всех операционных систем.
Там указывается язык, формат в котором показывать дату (YYYY-MM-DD, DD/MM/YYYY, ...), формат в котором указывать время (12/24), формат какую валюту показывать и как именно (значок $ спереди, значок $ после), как форматировать даты (пробелы между тысячами, плавающая точка это точка или запятая, как показывать отрицательные числа - в скобках или с минусом).
Там примерно такая куча настроек как на скриншотах.
Когда ты пишешь софт под операционку (desktop-софт), то по-правильному тебе нужно при запуске программы спросить региональные настройки или вызывать штатные методы операционной системы типа показать_денежное_значение(xxx). И в таком случае операционка сама отформатирует данные и покажет их на экране согласно настроек.
Таким образом достигается, что во всех программах на операционной системе одинаковое форматирование данных и один язык. Правильно работает COPY-PASTE между всеми программами и так далее.
---
Но! Вот настает эра облачного софта, который работает через браузер.
И беда-печаль, только один браузер разрешает региональные параметры операционной системы - это Firefox. Все остальные на это забивают по полной.
(Хотя язык передают все).
С языком получается такая картинка: я знаю что у юзера выставлен английский язык в операционной системе, но использовать это не могу - потому что все начнут жаловаться "я хочу чтобы операционка была на английском, но сайт хочу читать на русском, почему меня редиректит на английскую версию, а?".
А я региональными параметрами проблема стала куда масштабнее: я не могу их узнать и мне надо показывать форматирование на свое усмотрение. Вы же понимаете, что если у вас есть OneBox который показывает данные одним способом, есть desktop Excel у которого форматирование под настройки операционной системы, а есть Google Drive, у которого вообще настройки под региональные параметры США - то COPY-PASTE между ними нормально работать не будет.
Даже если мы в OneBox поправим, то в Google Drive все равно останется расхождение с вашей операционкой.
---
По сути, единственный вариант это решить хоть как-то, это приделать внутри OneBox региональные параметры "свои", чтобы можно было все настраивать как угодно.
Только вот в OneBox около 5000-6000 экранов (страниц), и нужно просмотреть каждую и отформатировать вывод каждой строки. Когда-нибудь мы это сделаем, но пока есть задачи поважнее.
Как со мной связаться - никак :) Задавайте вопросы на форуме публично - и я отвечу. Подробнее - https://1b.app/ru/user/11/
Пожалуйста, присоединяйтесь к диалогу. Если вам есть что сказать - пожалуйста, напишите комментарий. Для входа потребуется мобильный телефон и смс-код для идентификации.
Войти и написать комментарий