|
|
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Помогите разрешить проблему. (Access 2000) Задача такая: в некой форме необходимо вводить данные о компании (данные договора). При вводе в один из Editов (краткое название компании) необходиом проверить то, что данное название уже есть в базе данных. И если есть то переместится на данную record и проверить. Если нет то доьаляем новые данные и все (здесь проблем нет:) ) Открываю я форму (ленточный вид). В событии open делаю New. ТО есть нахожусь в режиме добавления новой записи. Перехватываю события Edita LostFocus и пытался FindRecord найти запись с таким названием. Но конечно не могу так как нахожусь в режиме добавления. И что делать? Первое как перейти в обычный режим чтобы use FindRecord? Но если нет компании то перейти обратно в режим new , чтобы не потерять данные которые уже ввели для данной компании (хотя это не важно). Какой-то замкнутый круг для меня. Только начал с Access разбираться так что простите :) Надеюсь на помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 23:40 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
1. Лучше использовать не LostFocus, а AfterUpdate. 2. Нет никакой необходимости искать в той же форме. Есть способы искать в таблице без всякой связи с тем фактом, что сама эта форма сидит на той же таблице. Способ первый - dlookup. Способ второй - через рекордсет. Первый способ проще сделать для начинающего, второй будет быстрее работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 23:45 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Спасибо, смысл понятен. Еще чего-то я не нашел: Как мне не позволить user перйти (например колесиком мыши на другую запись, то есть хочу это делать програмно ). Перехватывал событие CurrentRecord, но его не отменить. Видимто опять глупый вопрос:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 00:14 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Вопрос очень сложный. Вот длинное обсуждение по этому поводу:\r \r /topic/47269 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 00:18 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Мне показалось что DLookup работает только с латинскими буквами, а русские не ловит? В чем решение? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 10:14 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Пишу, типа, Код: plaintext 1. так если в AliasName (edit) русские буквы то varX = Null Ксати не нашел в описании DLookup регистронезависимый или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 10:18 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Насчет регистронезависимого - мне кажется, что это зависит от настроек модуля. Если в начале модуля стоит Option Compare Binary, то регистр учитывается, а если Option Compare Database, то нет. По крайней мере при простом сравнении строк это работает именно так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 11:27 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
Спасибо ВС! Поиск я сделал через Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Все Нормально если перед этим вызовом я нахожусь в режиме просмотра, но если в режиме добавления то на Me.Bookmark = .Bookmark возникает ошибка пытался CancelUpdatу перед эти но не помогает. Как вый ти из режима вставкиновой записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 12:06 |
|
||
|
Как правильно сделать? (проверить, что данное название уже есть в базе данных)
|
|||
|---|---|---|---|
|
#18+
А режим вставки делается через .AddNew или юзером через клавиатуру? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 13:38 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32388450&tid=1677001]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
188ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 491ms |

| 0 / 0 |
