Загадка про формат чисел

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8031
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Загадка про формат чисел

Сообщение Игорь Столяров »

Привет всем !

Столкнулся с интересной проблемой.
Хочу отформатировать некую сумму, как число с разделителем дробной части запятой.
Казалось бы, что может быть проще.

Message(Format(1234567.89,@n_22`2)) возвращает "1234567,89" что абсолютно верно.

Но теперь задаем тот же формат для поля ввода (ENTRY,SPIN) и получаем "1.234.567,89" !
Но такой формат задается совсем по другому: @n22.`2 ... или я что-то не понял ... :(

Дальше еще интересней. Если нажать кнопку редактирования формата поля ввода,
то пример (example) для формата @n_22`2 отображается как "<<<<<<<<<#,##", что
соответствует описанию, но абсолютно не сходится с реальным результатом ... :(

Clarion 6.3 / 9.1
Может быть я что-то не то делаю ? Заранее спасибо за подсказку.
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5161
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Re: Загадка про формат чисел

Сообщение kreator »

Да, у меня также. Попробовал от 6.3 до 9.1. Функция format работает по "хелпу", контролы нет. Вот если нет десятичных цифр, то как надо. Может виноваты установки Винды? Быстрый просмотр региональных установок ничего не дал, к сожалению.
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8031
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Re: Загадка про формат чисел

Сообщение Игорь Столяров »

Спасибо. Запись к психиатру отменяю, попробую написать в PTSS ... :idied:
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5161
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Re: Загадка про формат чисел

Сообщение kreator »

Игорь Столяров писал(а):в PTSS ...
В C6.3 поведение такое же. Не может это быть ошибкой. Дело, наверное, в чём-то другом.
We are hard at work… for you. :)
gopstop2007
Полимат
Сообщения: 1810
Зарегистрирован: 25 Март 2009, 21:55
Благодарил (а): 24 раза
Поблагодарили: 10 раз

Загадка про формат чисел

Сообщение gopstop2007 »

Игорь Столяров писал(а):Message(Format(1234567.89,@n_22`2)) возвращает "1234567,89" что абсолютно верно.
А может все проще @n22_`2 Хотя кто мешает сделать @p<<<<<<<<<#,##p ? и работает в спине проверил C8 :)
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8031
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Загадка про формат чисел

Сообщение Игорь Столяров »

1. Формат "@n22_`2" дает совсем другой формат отображения числа "999 999,00"

2. Да, "@p<<<<<<<<<#,##p" изменяет только отображение, а именно целое число 12345 будет показано как "123,45".
Наверно если бы была возможность это проверить - то смысла писать об этом уже не было бы ....

3. Здесь все-таки главный вопрос: почему один и тот же формат дает разное оформление числа в разных типах полей ?
С другими форматами такого не наблюдается ...
Make Clarion Great Again ! 😎
Ответить