powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Сохранение значения типа decimal
7 сообщений из 7, страница 1 из 1
Сохранение значения типа decimal
    #36093849
Лампочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В таблице БД есть поля типа decimal. Для работы с таблицей сделана карточная форма (datawindow freeform), для decimal-полей поставлена маска ввода. Если пользователь добавляет новую строчку и при вводе значений эти поля не трогает, они сохраняются в базу как null.
Но если пользователь что-то в такое поле написал, а потом стер, в поле на карточной форме остается запись <,00> (это при маске ###.00) и поле сохраняется в БД как равное нулю.
Как правильно организовать работу с такими полями, чтобы можно было сохранять и нули, и null-ы?
...
Рейтинг: 0 / 0
Сохранение значения типа decimal
    #36093900
BoBaaaaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Empty String is NULL
...
Рейтинг: 0 / 0
Сохранение значения типа decimal
    #36093922
Лампочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, это когда поле не editmask.
а у маски нет такого свойства.
Просто у заказчика сделано так:
открывается карточная форма, поле decimal пустое, но когда на него кликаешь, там появляется <,00>.
Нам нужно сделать так же, но этот <,00> не исчезает из поля, когда в нем что-то напишешь, сотрешь и уйдешь с него.
...
Рейтинг: 0 / 0
Сохранение значения типа decimal
    #36093933
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Через событие itemchanged post-ом присваивайте этому полю null
-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
Сохранение значения типа decimal
    #36093942
Лампочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:)
есть другая проблема.
значение getitemdecimal выдает ноль, в поле написано ",00", а как понимать, что пользователь хотел: ввести ноль или стер все из поля?
...
Рейтинг: 0 / 0
Сохранение значения типа decimal
    #36094250
Я бы советовал не различать 0 и NULL для чисел
всегда работать с условием isnull(value,0) или триггер сделать чтоб 0 писал принудительно
Иначе с логикой и представлением на экране хлопот не оберешься

Если все же очень надо - сделать кнопку Set Null как принято во многих стандарных
интерфейсах и отображать этот Null цветом или еще как
...
Рейтинг: 0 / 0
Сохранение значения типа decimal
    #36094439
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда уж в initial value написать 0, чтобы было все просто и однообразно, маска ведь вегда отображается

-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Сохранение значения типа decimal
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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