powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Введенное значение на подходит для поля
14 сообщений из 14, страница 1 из 1
Введенное значение на подходит для поля
    #32798717
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сообщение в общем-то понятное, а вот ситуация - нет


На обработку до обновления висит defaultvalue=value (небольшое наследование).

Формат поля - с разделителями разрядов (при любом другом формате все нормально).

Вводятся вполне нормальные понятные цифорки, все чин по чину. Если постаить обычный формат - то все проходит. Кто-нибудь знает в чем дело?
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32798727
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иногда все нормально, а иногда на пустом месте срабатывает "Введенное значение на подходит " в чем дело - непонятно.
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32798819
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А если в этот момент посмотреть в отладчике, чему равно value?
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32799939
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тому, чкму и должно быть равно.... Ничего не могу понять.

Есть наводка - текст в момент изменения дефаулт валуя становится форматированным (с пробелами между разрядами),
текст я стал выправлять на месте - ошибка стала возникать вроде бы реже (на 20%). но осталась.
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32799949
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vam911тому, чкму и должно быть равно....
И мы тут дружно поняли, сколько это.

vam911Есть наводка - текст в момент изменения дефаулт валуя становится форматированным
Так text или value???

vam911текст я стал выправлять на месте
И мы дружно угадали, как выглядит программа, в которой сделан баг.
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32800346
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В валуе получается то число, что и было введено юзером (он ввел 11000 и в валуе 11000)

Прога:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
           If frm(ctrl_name).Format = "Standard" Then
                Dim old_seltext As String
                Dim old_selstart As Integer
                If frm.ActiveControl.name = ctrl_name Then
                    old_seltext = frm(ctrl_name).SelText
                    old_selstart = frm(ctrl_name).SelStart
                End If
                frm(ctrl_name).DefaultValue = zamenit_zapituyu(CDbl(frm(ctrl_name).Value))
                If frm.ActiveControl.name = ctrl_name Then
                    On Error Resume Next
                        frm(ctrl_name).Text = Format(frm(ctrl_name).Value, "General Number")
                        frm(ctrl_name).SelText = old_seltext
                        frm(ctrl_name).SelStart = old_selstart
                    On Error GoTo  0 
                End If
           End If

функция zamenit_zapituyu меняет запятую на точку (несовпадение форматов в русском аксессе)
но от ее использования ошибка не зависит (если вводить целые числа, то она ничего не меняет, а ошибка выскакивает)
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32800503
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Блин, однако. Там еще и какая-то запитая функция. Что она возвращает, опять надо гадать? Какого типа ее значение? Хотя бы один пример значения можно ли увидеть?
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32801263
Фотография Finans
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня была такая же ерунда только с датой. По кнопке нужно было изменить дату в текстбоксе на 1 день. Маска ввода в текстбоксе стоит 00.00.00;0;
На работе значение в текстбоксе выглядит как 26.11.04, а дома как 26.11.2004.
Поэтому дома Me.Поле.Value даёт 26.11.2004, но устанавливать-то Me.Поле.Text нужно в формате 26.11.04, т.е. предварительно приводить данные к формату в соответствии с маской ввода:

Код: plaintext
1.
Me.Поле.SetFocus
Me.Поле.Text = Format(Me.Поле.Value +  1 , "d/m/yy")
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32824562
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FinansУ меня была такая же ерунда только с датой. По кнопке нужно было изменить дату в текстбоксе на 1 день. Маска ввода в текстбоксе стоит 00.00.00;0;
На работе значение в текстбоксе выглядит как 26.11.04, а дома как 26.11.2004.
Поэтому дома Me.Поле.Value даёт 26.11.2004, но устанавливать-то Me.Поле.Text нужно в формате 26.11.04, т.е. предварительно приводить данные к формату в соответствии с маской ввода:

Код: plaintext
1.
Me.Поле.SetFocus
Me.Поле.Text = Format(Me.Поле.Value +  1 , "d/m/yy")



Это просто - поменяй настроки даты в региональных настроках компа.
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32824563
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир СанычБлин, однако. Там еще и какая-то запитая функция. Что она возвращает, опять надо гадать? Какого типа ее значение? Хотя бы один пример значения можно ли увидеть?

Эта функция берет число "11,25" и вместо запятой ставит точку "11.25" результат возвращается в виде строки. Все это необходимо для дефаут валуя. Оно воспринимает тольктакой формат.
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32824569
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vam911Эта функция берет число "11,25" и вместо запятой ставит точку "11.25" результат возвращается в виде строки. Все это необходимо для дефаут валуя. Оно воспринимает тольктакой формат.
Можно увидеть заголовок этой функции?
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32824576
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Function zamenit_zapituyu(val As Double) As String
Dim k As Integer
Dim str As String
str = CStr(val)
zamenit_zapituyu = ""
k = InStr(1, str, ",")
If k <> 0 Then
str = Left(str, k - 1) + "." + Right(str, Len(str) - k)
End If
zamenit_zapituyu = str
End Function


Когда все делатся в таличной форме - Ок, а вот в ленточной...
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32831162
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Столько вопросов и хоть бы один советик.
...
Рейтинг: 0 / 0
Введенное значение на подходит для поля
    #32831232
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vam911Когда все делатся в таличной форме - Ок, а вот в ленточной...
Вот это наводит на мысль, что баг не в этой программе, а где-то у Билла...
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Введенное значение на подходит для поля
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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