При предпросмотре отчета ломается формат отображения данных, установленный в Олапе через команду ,FORMAT_STRING = ‘0.0’, а именно, не ограничивается отображаемое количество разрядов после запятой.
Вариант процентного формата тоже не прошел - количество разрядов поле запятой тоже не получается ограничить.
В олапе выглядит так:
В отчете выглядит так:
Посоветуйте, как можно обойти этот баг?
Это не баг - выяснилось что я использовал не ту формулу для форматирования - нужно использовать формулу типа Format( ПЕРЕМЕННАЯ , “0.0”) В таком случае перенос в представление отчета происходит корректно - ограничением разрядов после запятой.
Попробовал повторить - на простейшем примере проблем не заметил.
Какие настройки применены у отчета и OLAP-запроса? (Можно приложить файл с экспортом отчета - так будет проще конкретную ситуацию увидеть)
Возможно особенность моего случая в том, что я задаю формат в формуле расчетного элемента:
(iif (StrToMember("[death_date].[year_h].["||format(${Отчетная дата},“yyyy”)||"]").PrevMember<>0,
Дима, Это не баг - выяснилось что я использовал не ту формулу для форматирования - нужно использовать формулу типа Format( ПЕРЕМЕННАЯ , “0.0”)
В таком случае перенос в представление отчета происходит корректно - ограничением разрядов после запятой.
Проверял на 4.6.2. Format(..., "0.0") возвращает строку, а не число. В данной ситуации это помогло, но это не эквивалентно (например, такую расчетную меру нельзя будет агрегировать).
По результатам общения в личке порекомендовал настроить формат и порядок расчета на всех расчетных элементах, которые применяются к ячейкам. Если не поможет - будем анализировать дальше.
Использование команды Format( ПЕРЕМЕННАЯ , “0.0”) позволяет ограничить количество разрядов после запятой нужным образом, но при выгрузке в эксел эти данные имеет тестовый формат, что тоже не совсем правильно и могут возникнуть проблемы с дальнейшими вычислениями с этими числами.
Попытка использовать предыдущую формулу (ПЕРЕМЕННАЯ),FORMAT_STRING = ‘0.0’ ко всем расчетным мерам и элементам иерархий, а также изменение порядка их расчета, пока также не принесло результата - то есть не позволило ограничить количество разрядов после запятой (хотя тип данных при использовании этой формулы при выгрузке является числовым).
По пункту 2. Применение ,FORMAT_STRING = ‘0.0’ в формуле расчетного элемента является вынужденным костылем, вызванным недостатком функционала. Поставлена задача.