powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как установить точность вводимого числа (число знаков после запятой)
15 сообщений из 15, страница 1 из 1
Как установить точность вводимого числа (число знаков после запятой)
    #39417905
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задание.
Есть отвязанная форма для ввода данных. (так пришлось сделать) После заполнения формы, по кнопке, данные из формы записываются в таблицы. Одно из полей таблицы - действительное число с 3 знаками после запятой. Если ввести число с 4 и более знаками после запятой, то при попытке записать данные возникнет ошибка (см. рис.). как этого избежать? Как проконтролировать введённое значение?


-------------------------------------------------------------
А ты вложил уже свой кровный рубль в 50-ти миллиардное состояние Билла Гейтса?
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39417911
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вероятно, "по кнопке" сперва проверять введённые данные, и только при полном их соответствии требованиям выполнять запись. А при несоответствии выдавать пояснения и возвращать оператора к редактированию проблемных полей.
Кстати, значения полей неплохо бы контролировать на валидность и в процессе ввода...
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39417948
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JossЕсть отвязанная форма для ввода данных.Может делать на отвязанном/свободном рекордсете? Вот пусть он и следит за данными.
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39417950
Фотография гурД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jossкак этого избежать? Как проконтролировать введённое значение?
В смысле, всё равно ввести принудительно то, которое нужно, или подправить в соотв
с табличным?
На второй второй вариант, вы наверно знаете:
Код: vbnet
1.
2.
3.
4.
5.
6.
sub form_error(...)
if err=номер then 
err.raise номер
textbox.decimalplaces=11
... acDataErr=... 'не помню, какой аргумент, - от гасит ваше сообщ
...
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39417975
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaВероятно, "по кнопке" сперва проверять введённые данные, и только при полном их соответствии требованиям выполнять запись. А при несоответствии выдавать пояснения и возвращать оператора к редактированию проблемных полей.
Кстати, значения полей неплохо бы контролировать на валидность и в процессе ввода...Вводится где-то 30 разных параметров. Валидность вводимых данных проверяется. Но как проверить, что введено 4,0925, а не 4,092?
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39417988
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПанургJossЕсть отвязанная форма для ввода данных.Может делать на отвязанном/свободном рекордсете? Вот пусть он и следит за данными. С отвязанным рекордсетом дел пока не имел. Где можно об этом глянуть?
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39417992
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
гурДJossкак этого избежать? Как проконтролировать введённое значение?
В смысле, всё равно ввести принудительно то, которое нужно, или подправить в соотв
с табличным?
На второй второй вариант, вы наверно знаете:
Код: vbnet
1.
2.
3.
4.
5.
6.
sub form_error(...)
if err=номер then 
err.raise номер
textbox.decimalplaces=11
... acDataErr=... 'не помню, какой аргумент, - от гасит ваше сообщ
...

Вопрос в том, как определить количество знаков после запятой и отрезать лишние? И проверку я собирался делать ещё до записи в таблицы.
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418001
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JossС отвязанным рекордсетом дел пока не имел. Где можно об этом глянуть? отвязаный рекордсет . Там не так уж и много.
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418039
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Панург, посмотрю. А вот есть ли возможность узнать количество знаков после запятой? Была идея перевести число в символьную строку, проверить наличие запятой, потом отсчитать число знаков... Но что-то некрасиво получается.
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418046
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Joss, вам ведь надо ввести с определенным количеством знаков. Тогда узнавать сколько их есть не требуется, достаточно сохранить разрешенное количество. С этим прекрасно справляется функция Round(число, точность)
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418094
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jossкак проверить, что введено 4,0925, а не 4,092?Извини, но вопрос [censored]. Введённое значение у тебя по-любому имеет тип String. Вот и развлекись либо составлением шаблона, по которому будет выполняться ввод, либо составлением регэкспа или иного выражения, которым этот ввод будет проверяться в коде. А лучше и тем, и другим.
Из [censored], например, можно предложить (не вздумай использовать в своём коде!)
Код: vbnet
1.
If Val(Text1.Text) <> Round(Val(Text1.Text), 3) Then MsgBox "Не пойдёть!"
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418124
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исходную форму я разрабатывал на основе рекордсета, а потом убрал его. Но что-то в памяти сохранилось. По-этому при попытке ввести вместо числа буквы, выводится ошибка. Это глюк или фича?
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418128
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предыдущий рисунок показывает, что никакое действие на события поля не прописаны.
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418167
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mds_worldJoss, вам ведь надо ввести с определенным количеством знаков. Тогда узнавать сколько их есть не требуется, достаточно сохранить разрешенное количество. С этим прекрасно справляется функция Round(число, точность)Наверно это наиболее здравая идея. Сейчас попробую.
...
Рейтинг: 0 / 0
Как установить точность вводимого числа (число знаков после запятой)
    #39418214
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверил. всё работает.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как установить точность вводимого числа (число знаков после запятой)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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