powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
9 сообщений из 9, страница 1 из 1
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505528
Rimbombo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть две таблицы, и в той и в другой есть поля отвечающие за название организации: Название организации и НазвОрг . Сами таблицы хранят данные от разных процессов и иметь именно 2 таблицы удобнее чем одну.
Но! Начальству вдруг захотелось, чтобы при вводе (через форму ввода ессно) в поле Название организации и нажатии кнопки отвечающей за "Проверку наличия записей об организации с таким названием" выскакивала форма (или отчет), где списком бы выдавались записи, где в поле НазвОрг (вторая табличка) есть такое же название.
Т.е при совпадении названий выскакивало цитирую "что-то" об этом говорящее.
help!!!
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505570
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не касаясь, почему организовано так, хотя странно.
Поля Название организации и НазвОрг берем что текстовые.
Код: plaintext
1.
2.
3.
4.
5.
Private Sub Название_организации_BeforeUpdate(Cancel As Integer)
If Not IsNull(DLookup("НазвОрг", "t2", "[НазвОрг]='" & [Название организации] & "'")) Then
    MsgBox "Такое есть в t2!"
    Cancel = True
End If
End Sub

Если хочется все таки показывать записи из t2 тут возможны варианты.
К примеру сделать формочку с источником t2 и открывать ее
Код: plaintext
DoCmd.OpenForm "frmt1", acNormal, , "[НазвОрг]='" & [Название организации] & "'" 
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505585
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Только в поле [Название организации] надо удвоить все апострофы.
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505616
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч, в общем случае, безусловно, верно, все время об этом забываю.
Держу для названий предприятий 2 поля - краткое и полное. Длинное для внешнего примения - отчеты и письма (Обчество с неограниченной безответственностью "Производственный кооператив "Артель старателей Пипетка" (название почти реальное). Краткое для внутреннего потребления - Пипетка ПК АС ОНБ, и при его вводе - каких кавычек и апострофов.
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505692
Rimbombo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо. Все отлично работает!
В сухом остатке получилось:
Код: plaintext
1.
2.
3.
4.
5.
Private Sub Название_организации_AfterUpdate()
If Not IsNull(DLookup("НазвОрг", "Простынь1", "[НазвОрг]='" & [Название организации] & "'")) Then
    DoCmd.OpenReport "ИзОбслед", acPreview, , "[НазвОрг]='" & [Название организации] & "'"
    Cancel = True
    End If
End Sub


Сделал все-таки отчет вместо формы. Да! Поставил на AfterUpdate, а то если на BeforeUpdate - отчет вызывается, но увести курсор на другое поле не получается - отчет всякий раз вновь появляется. Нужна какая то команда, но поскольку не знаю какая, то просто поставил на AfterUpdate и все заработало. А еще вместо acNormal поставил acPreview , а то отчет сразу на печать идет :))
Еще раз спасибо!
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505693
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Чтобы увести курсор на другое поле, надо нажать Esc.
А в AfterUpdate стал лишним Cancel.
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505694
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если Аксесс не кричит на неописанную переменную Cancel, значит в начале модуля нет Option Explicit. Это очень нехорошо.
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505698
Rimbombo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Владимир Саныч
В начале модуля формы стоит только Option Compare Database. Opinion Explicit автоматом я так понимаю не ставится (поставлю вручную). Для чего, кстати он нужен?
...
Рейтинг: 0 / 0
Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
    #32505704
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Он нужен как раз для того, чтобы было нельзя пользоваться неописанными переменными. Пример программы:

dim zfdhgdfjgb
zfdhgdfjgb=5
msgbox zfdhgbfjgb

Если есть Option Explicit (кстати, именно Option, а не Opinion ), то выдастся ошибка компиляции о том, что переменная zfdhgbfjgb не описана. А если нет, то просто программа не будет работать и куча времени уйдет на то, чтобы понять почему.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделать отчет, информирующий о совпадении названий организации в полях из разных таблиц?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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