|
Overflow при использовании dlookup
|
|||
---|---|---|---|
#18+
Доброго времени суток всем. Уважаемые знатоки, подскажите пожалуйста, решение. Есть образец базы, mdb, ещё формата Access 2000 (в прицепе). У клиента есть реестр дисконтных карточек, причём их номера состоят из 12-ти символов. Необходимо, что бы при вводе номера новой карточки программа проверяла его уникальность, и если такой номер уже введён, то, допустим, выдавала сообщение "Номер занят". А если такого номера в реестре ещё нету - появлялось сообщение "Номер свободен". Таблица с номерами карточек "ТСкидкаРег", поле с номерами - "КодКарты" (тип поля - Числовой, размер - Действительное, точность - 18, с запасом). В форме с реестром карточек FDiscontSpisok по нажатию кнопки "Новая карточка" открывается форма FRegDiscontKDir с полем для ввода нового номера Штрихкод (поле свободное). Вводим новый номер, жмём кнопочку "Регистрировать". И по нажатию выполняется: Private Sub Рег_Click() Код& = Nz(DLookup("[КодКарты]", "ТСкидкаРег", "[КодКарты] =" & [Forms]![FRegDiscontKDir]![Штрихкод]), 0) If Код = 0 Then MsgBox "Номер свободен", vbOKOnly, "Предупреждение" Else MsgBox "Номер занят", vbOKOnly, "Предупреждение" End If End Sub Этот способ отлично работает при числах до десяти цифр включительно. Но если вводим номер из 12-ти символов (по условию) - новый номер обрабатывает правильно (Номер свободен). А если такой номер из 12-ти символов уже существует - выдаёт ошибку Overflow. Пробовал изменить тип поля для номера карточки на текстовый и, соответственно, менял строку на Код& = Nz(DLookup("[КодКарты]", "ТСкидкаРег", "[КодКарты] ='" & [Forms]![FRegDiscontKDir]![Штрихкод]& "'"), 0) Результат - точно такой же, Overflow. Перерыл кучу справок, форум, подозреваю, что как то надо явно указать тип данных - но ничего пока не получилось. Спасите, просветите... С уважением. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2016, 03:20 |
|
Overflow при использовании dlookup
|
|||
---|---|---|---|
#18+
Tarasios, Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2016, 03:47 |
|
Overflow при использовании dlookup
|
|||
---|---|---|---|
#18+
Спасибо огромное! Работает! ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2016, 03:56 |
|
Overflow при использовании dlookup
|
|||
---|---|---|---|
#18+
Tarasios, лучше текст если имееются в первой позиции нули ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2016, 15:07 |
|
|
start [/forum/topic.php?fid=45&tid=1613801]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 326ms |
total: | 456ms |
0 / 0 |