powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / поиск
45 сообщений из 45, показаны все 2 страниц
поиск
    #32426207
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни как не могу организовать поиск.
есть кнопка "Показать все", под ней лежит следующий код
Private Sub Вк_Заказчик_AfterUpdate()
If Not Me![Вк_Заказчик] Then
Me![СпЗаказчик].Enabled = True
Else
Me![СпЗаказчик].Enabled = False
Me![СпЗаказчик] = Null
Me.Requery
End If
End Sub
Есть поле со списком СпЗаказчик. там след. код:
Private Sub СпЗаказчик_AfterUpdate()
Me.Requery
End Sub
потом код для главной формы
Private Sub Form_Load()
Me![SFD].Form.Requery
End Sub
Написан запрос где источник вся таблица + выражение
[Forms]![Фильтр Форма]![SFD]![Вк_Заказчик] Or [Forms]![Фильтр Форма]![SFD]![СпЗак]=[Заказчик]

При открытие формы-фильтра кнопка Показать все работает, но когда значение выбирается из списка Сп_Заказчик - результат нулевой.

Где же ошибка? Помогите
...
Рейтинг: 0 / 0
поиск
    #32426293
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где ж написано что при изменении поля со списком данные должны отбираться согласно содержимого этого поля...у тебя просто все обновляется...
...
Рейтинг: 0 / 0
поиск
    #32426316
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это надо написать в форме-фильтре After Update? Если можно напишите подробнее. Спасибо
...
Рейтинг: 0 / 0
поиск
    #32426326
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а разве это не правильно?
Private Sub СпЗаказчик_AfterUpdate()
Me.Requery
End Sub
...
Рейтинг: 0 / 0
поиск
    #32426336
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй...

Private Sub СпЗаказчик_AfterUpdate()
dim strSql as string
strSql = "select * from ТвояТаблица Where ТвояТаблица.ТвоеПоле = "
strSql = strSql & chr(32) & [Заказчик] & chr(32)
[Forms]![Фильтр Форма]![SFD].RecordSource = strSql
End Sub
...
Рейтинг: 0 / 0
поиск
    #32426387
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не работает. не проходит на последней строке
[Forms]![Фильтр Форма]![SFD].RecordSource = strSql
...
Рейтинг: 0 / 0
поиск
    #32426414
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что такое SFD
...
Рейтинг: 0 / 0
поиск
    #32426416
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это имя подчиненнй формы
...
Рейтинг: 0 / 0
поиск
    #32426420
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если подчиненная форма - то через "."
[Forms]![Фильтр Форма].[SFD].RecordSource = strSql
...
Рейтинг: 0 / 0
поиск
    #32426432
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
См.:\r
/topic/77707\r
мой пост от 12:56.
...
Рейтинг: 0 / 0
поиск
    #32426447
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что такое контрол? у меня SFD - это имя подчиненной формы.
...
Рейтинг: 0 / 0
поиск
    #32426451
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А с точкой не получилось что-ли ? Должно пойти...
...
Рейтинг: 0 / 0
поиск
    #32426452
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Подчиненная форма сидит в элементе управления типа Subform. В том самом, у которого SourceObject равен имени формы. Нам нужно имя этого элемента управления.
...
Рейтинг: 0 / 0
поиск
    #32426457
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SFD - это имя формы в твоей базе или это имя объекта в форме "Форма Фильтр" ?
...
Рейтинг: 0 / 0
поиск
    #32426458
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с точкой не идет.
у меня и имя, и SourceObject = SFD
...
Рейтинг: 0 / 0
поиск
    #32426465
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
[Forms]![Фильтр Форма]![SFD].Form.RecordSource = strSql
...
Рейтинг: 0 / 0
поиск
    #32426470
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А саму SQL проверил ? Какая ошибка ?
...
Рейтинг: 0 / 0
поиск
    #32426478
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
отстанов на том же месте.
...
Рейтинг: 0 / 0
поиск
    #32426480
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А ошибка-то какая?
...
Рейтинг: 0 / 0
поиск
    #32426483
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Случаем не Object Required ?
...
Рейтинг: 0 / 0
поиск
    #32426502
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ошибка
Run-time error '3075'
Syntax error (mising operator) in query expression '[Имя таблицы].[Поле]= "ОАО Чайка", где ОАО Чайка - это первая строка в таблице.
и еще она пишет что strSql всегда = этой первой строке таблицы
...
Рейтинг: 0 / 0
поиск
    #32426512
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А можно полностью весь селект?
...
Рейтинг: 0 / 0
поиск
    #32426538
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
извините за глупость, но что есть селект (я только начинаю с Access работать).
...
Рейтинг: 0 / 0
поиск
    #32426548
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Вот тот самый query expression, в котором ошибка.
[Имя таблицы].[Поле]= "ОАО Чайка" - это его кусок.
...
Рейтинг: 0 / 0
поиск
    #32426564
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"select * from [Договора2] Where [Договора2].[Закчик] = "
может в месть таблицы написать имя запроса, который в начале написан?
Написан запрос где источник вся таблица + выражение
[Forms]![Фильтр Форма]![SFD]![Вк_Заказчик] Or [Forms]![Фильтр Форма]![SFD]![СпЗак]=[Заказчик]
...
Рейтинг: 0 / 0
поиск
    #32426577
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А где ОАО Чайка?
...
Рейтинг: 0 / 0
поиск
    #32426587
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в таблице 57 строк (имена разных заказчиков, включая и Чайку), почему выбирается только Чайка не знаю. ОАО Чайка - первая запись в таблице.
...
Рейтинг: 0 / 0
поиск
    #32426592
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чайку пишет только в ошибке, в форм как показывало все записи так и показывает
...
Рейтинг: 0 / 0
поиск
    #32426612
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТАК, КОРОЧЕ...
У тебя есть форма (назовем - главная форма)...в ней - подчиненная форма...
Тебе нужно - выбирая имя предприятия в поле, находящемся в главной форме, вывести все записи в подчиненной форме, соответственно выбранному предприятию ? ТАК, ДА или НЕТ ?
...
Рейтинг: 0 / 0
поиск
    #32426627
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет, главная форма пустая (кроме подчиненной в ней нет нечего).
в подчиненной форме выбираю по Заказчику.так что бы показывала только поля этого заказчика
...
Рейтинг: 0 / 0
поиск
    #32426632
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять непонятки -
1. Зачем мутить с подчиненной формой, если главная пустая ?
2. Выводить нужно наверное записи, а не поля ?
...
Рейтинг: 0 / 0
поиск
    #32426642
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну да, записи. выбрать все записи у которых например Заказчик = Сбербанк.
а потом кликнуть на кнопку "показать все" - и опять все записи формы увидеть
...
Рейтинг: 0 / 0
поиск
    #32426644
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Секундочку. В сообщении об ошибке приведен кусок программы:
[Имя таблицы].[Поле]= "ОАО Чайка"
Я хочу увидеть этот кусок полностью. Там есть ошибка.
...
Рейтинг: 0 / 0
поиск
    #32426653
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Private Sub СпЗак_AfterUpdate()
Dim strSql As String
strSql = "select * from [Договора2] Where [Договора2].[Заказчик] = "
strSql = strSql & Chr(32) & [Çàêàç÷èê] & Chr(32)
[Forms]![форма Фильтр]![SFD].[Form].RecordSource = strSql
End Sub

Private Sub Вк_Заказчик_AfterUpdate()
If Not Me![Вк_Заказчик] Then
Me![СпЗаказчик].Enabled = True
Else
Me![СпЗаказчик].Enabled = False
Me![СпЗаказчик] = Null
Me.Requery
End If
End Sub
...
Рейтинг: 0 / 0
поиск
    #32426655
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автори еще она пишет что strSql всегда = этой первой строке таблицы
автор[Forms]![Фильтр Форма]![SFD].RecordSource = strSql
авторselect * from [Договора2] Where [Договора2].[Закчик] = "


Итого: склей (как предлагал Деминик), только аккуратней

strSql = "select * from ТвояТаблица Where ТвояТаблица.ТвоеПоле = "
strSql = strSql & chr(32) & [СпЗаказчик] & chr(32)



если связанный столбец другой, то [СпЗаказчик].Column(n)
...
Рейтинг: 0 / 0
поиск
    #32426660
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы сделал так...

dim strSQL as string
strSQL = "select * from MyTable Where MyTable.MyField = "
strSQL = strSQL & chr(34) & FieldNameInForm & chr(34)
me.recordsource = strSQL

И повешал бы на AfterUpdate поля...

И то при условии лишь одной главной формы (добавить подчиненную поди уже сможешь)...
И кстати - я накосячил с CHR(32) - надо CHR(34)...Может это и есть ошибка ?
...
Рейтинг: 0 / 0
поиск
    #32426670
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно попробовать CHR(39), хотя я всегда ставил 34
...
Рейтинг: 0 / 0
поиск
    #32426684
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dim strSQL as string
strSQL = "select * from Договора2 Where Договора2.Заказчик = "
strSQL = strSQL & chr(34) & [ИмяПоляВКоторомВыбираетсяЗаказчик] & chr(34)
me.sfd.recordsource = strSQL

В твоем варианте...
Вешай в AfterUpdate поля [ИмяПоляВКоторомВыбираетсяЗаказчик]...
Работает или нет...?
...
Рейтинг: 0 / 0
поиск
    #32426752
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
останавливается в том же месте (последняя сторка), пишет что не может найти форму SFD
...
Рейтинг: 0 / 0
поиск
    #32426767
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как у тебя называется объект "Подчиненная форма"...?
Это понятно, что SFD - это у тебя имя формы БД, а так же ObjectSource подчиненной формы...так вот сам-то объект как именуется ? (Возможно, что-нибудь типа "ПодчиненнаяФорма237")...В этом загвоздка...
Нажми один раз мышкой на подчиненную форму в режиме конструктора и посмотри в свойствах не ObjectSource (Там по-любому будет SFD), а имя объекта...
...
Рейтинг: 0 / 0
поиск
    #32426778
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ObjectSource, и Name SFD
...
Рейтинг: 0 / 0
поиск
    #32426789
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Subform/Subreport:SFD
...
Рейтинг: 0 / 0
поиск
    #32426838
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напиши - какая ошибка вылазит...убери брейкпоинты...
...
Рейтинг: 0 / 0
поиск
    #32426864
nov1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft Access can't find the field 'Forms' referred to in your expression
...
Рейтинг: 0 / 0
поиск
    #32426918
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробуй обнаружить подчиненную форму...(в отладчике подсчитай Count и т.п.)...как то она же должна проявиться...я как понимаю - на данном этапе VBA понять не может к чему ты обращаешься...(SFD в частности)...
...
Рейтинг: 0 / 0
45 сообщений из 45, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / поиск
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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