Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Приставка (префикс) в поле формы / 10 сообщений из 10, страница 1 из 1
18.10.2016, 23:11
    #39329383
Suheski55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Прошу помочь в решении задачи.
Задача состоит в том, чтобы при вводе значения в поле "Префикс" он добавлялся к значению, вводимому в поле "Артикул".
К примеру предстоит ввести несколько артикулов типа "К18957, К54787, К15584 и тд", чтобы облегчить ввод значений и необходим префикс, который логично ввести равным "К", оператору остается вводить только цифры. Прилагаю фотографию формы
...
Рейтинг: 0 / 0
18.10.2016, 23:46
    #39329403
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Suheski55,
на событие "После обновления" поля префикс повесьте изменение свойства format поля Артикул
...
Рейтинг: 0 / 0
18.10.2016, 23:50
    #39329408
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Suheski55,

не format, а "Маска ввода" (описка) :)
...
Рейтинг: 0 / 0
19.10.2016, 10:03
    #39329577
Suheski55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
guest_rusimport, Можно чуть подробней, пробую так, но это ужасно некрасиво получается
Видел в другой БД, там все было кашерно, ввел значения, ушел с поля и к нему добавился префикс

Me.Reference.InputMask = Me.Prefix.Text + "######"
...
Рейтинг: 0 / 0
19.10.2016, 10:13
    #39329582
Suheski55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Прилагаю БД
...
Рейтинг: 0 / 0
19.10.2016, 10:59
    #39329616
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Suheski55,

формат accdb смотреть нечем, есть акс 2003, понимает только mdb
...
Рейтинг: 0 / 0
19.10.2016, 12:50
    #39329733
Приставка (префикс) в поле формы
Suheski55Видел в другой БД, там все было кашерно, ввел значения, ушел с поля и к нему добавился префикс Для этого достаточно на AfterUpdate поля Reference выполнить:
Код: vbnet
1.
2.
3.
If Len(Me!Prefix) > 0 And Me!Reference Like Me!Prefix & "*" Then
   Me!Reference = Me!Prefix & Me!Reference
End If


Еще один вариант - на AfterUpdate поля Prefix присвоить его значение св-ву DefaultValue поля Reference.
Код: vbnet
1.
  Me!Reference.DefaultValue = Me!Prefix & ""

При переходе на новую запись это значение будет появляться в поле.
...
Рейтинг: 0 / 0
19.10.2016, 13:24
    #39329789
Suheski55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Анатолий ( Киев ), Все получилось, спасибо огромное!
Я понял в чем моя ошибка, пытался работать в BeforeUpdate, а надо было в AfterUpdate.
Остановился на варианте (для поля Reference, событие AfterUpdate):
Код: vbnet
1.
2.
3.
If Len(Me!Prefix) > 0 Then
   Me!Reference = Me!Prefix & Me!Reference
End If


Что касается условия
Код: vbnet
1.
Me!Reference Like Me!Prefix & "*"


то я видимо ввел в замешательство неправильной формулировкой задачи.
Еще раз спасибо всем кто не остался равнодушным!
Прилагаю БД, на случай если кому понадобится.
...
Рейтинг: 0 / 0
19.10.2016, 14:19
    #39329861
Приставка (префикс) в поле формы
Suheski55Остановился на варианте (для поля Reference, событие AfterUpdate):
Код: vbnet
1.
2.
3.
If Len(Me!Prefix) > 0 Then
   Me!Reference = Me!Prefix & Me!Reference
End If

Если вы внесли Артикул - ушли с поля (Префикс добавился) - вернулись, чтобы исправить Артикул - ушли с поля - и префикс добавится еще раз.
Для того и добавлено условие с Like, но оно неправильное. Вот правильное:
Код: vbnet
1.
2.
3.
4.
5.
6.
If Len(Me!Prefix) > 0 And Me!Reference Like Me!Prefix & "*" Then
'Префикс уже добавлен
ELse Len(Me!Reference) > 0
'Префикс добавляется к непустому артикулу
   Me!Reference = Me!Prefix & Me!Reference
End If
...
Рейтинг: 0 / 0
19.10.2016, 21:21
    #39330178
Suheski55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Приставка (префикс) в поле формы
Анатолий ( Киев ), абсолютно верно, этот вариант я не учел.
Единственное поправлю Вас в ElseIF

Код: vbnet
1.
2.
3.
4.
If Len(Me!Prefix) > 0 And Me!Reference Like Me!Prefix & "*" Then
  ElseIf Len(Me!Reference) > 0 Then
    Me!Reference = Me!Prefix & Me!Reference
End If
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Приставка (префикс) в поле формы / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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