Поле в запросе

Akim1974
Дата: 05.12.2015 16:05:26
Скажите пожалуйста, каким образом ограничить количество вводимых чисел после запятой в поле запроса? В конструкторе запроса в свойстве поля установлено: Формат поля - фиксированный, Число десятичных знаков - 3. В таблице, на основе которой построен запрос в свойствах поля стоят такие же параметры: Формат поля - фиксированный, Число десятичных знаков - 3. Но если в запросе вводить более 3-х знаков после запятой (к примеру 5), то при нажатии мышкой на этом поле эти 5 знаков и высвечиваются. Как жестко установить 3 знака после запятой даже если набрано больше 3-х знаков. (Работаю на Access 97, может это у него ошибка такая? И еще просьба, не советовать мне перейти на новый офис, попросили доработать программу и переходить на другой офис категорически отказались).
Заранее спасибо.
Akina
Дата: 05.12.2015 17:34:16
В поля запроса ничего "вводить" нельзя.

Akim1974
В конструкторе запроса в свойстве поля установлено: Формат поля - фиксированный, Число десятичных знаков - 3. В таблице, на основе которой построен запрос в свойствах поля стоят такие же параметры: Формат поля - фиксированный, Число десятичных знаков - 3.

Это - параметры отображения значения, а не ограничение на значение.
mds_world
Дата: 05.12.2015 18:17:00
Если в форме, а не в запросе, то можно на событии Change поля проверять значение и не допускать ввод лишних знаков в мантиссе. Например, если поле называется txt:
Private Sub txt_Change()
    Dim t, d, p, c
    t = Me.txt.Text
    If Len(t) = 0 Then Exit Sub
    c = Int(t)
    p = Format(0, ".") 'Узнать символ десятичного разделителя
    d = Mid(t, InStr(t, p) + 1)
    If Len(d) > 3 Then
        Me.txt.Text = Left(t, Len(c) + 4)
    End If
    Me.txt.SelStart = 1000
    Me.txt.SelLength = 0
End Sub
sdku
Дата: 05.12.2015 19:26:29
Akim1974,
Если введено более 3 знаков (естессно в таблицу)а это делается при помощи формы в поле которой можно задать маску ввода......
( в запросе поле отобразится как хранится в таблице,а в таблице оно хранится как введете)
Akim1974
Дата: 06.12.2015 12:22:13
Akina
В поля запроса ничего "вводить" нельзя.

Akim1974
В конструкторе запроса в свойстве поля установлено: Формат поля - фиксированный, Число десятичных знаков - 3. В таблице, на основе которой построен запрос в свойствах поля стоят такие же параметры: Формат поля - фиксированный, Число десятичных знаков - 3.

Это - параметры отображения значения, а не ограничение на значение.

И отображение тоже не такое, как должно быть. Я так понимаю, что если Формат поля - фиксированный, Число десятичных знаков - 3, то должно отображаться именно 3 знака, а когда вводишь 2 знака после запятой, то выводится 2 знака.