Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / источник записей поля со списком фильтруемый для каждой записи отдельно / 7 сообщений из 7, страница 1 из 1
04.07.2019, 14:03
    #39833840
AM_ufu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
источник записей поля со списком фильтруемый для каждой записи отдельно
Добрый день,

Подскажите пожалуйста, как сделать источник записей поля со списком фильтруемый для каждой записи отдельно на основе значения другого поля этой же записи. То есть если в текущей записи в одном поле со списком выбран Материал1, то в другом поле со списком будут выбиратся только куски материалла, код которого соответствует коду Материала1.
Пробовал поставить приведенный ниже код на событие вход в поле со списком, но при в ходе в поле со списком - список пустой.

Private Sub BusinessPcsId_Enter()

Dim dbCurrent As Database
Dim sq As String
Dim iMatId As Integer
Dim rstBPfiltered As Recordset

On Error GoTo lerr
iMatId = Me.MatID

sq = "SELECT [Material].[MaterName] FROM Material INNER JOIN " & _
"BusinessPieces ON Material.IDMater=BusinessPieces.MaterID " & _
"WHERE BusinessPieces.MaterID = " & iMatId & _
" ORDER BY Material.Thikness, Material.MaterName "
Set dbCurrent = CurrentDb
Set rstBPfiltered = dbCurrent.OpenRecordset(sq)
If Not rstBPfiltered.EOF Then
Set Me.BusinessPcsId.Recordset = rstBPfiltered
End If



End Sub
...
Рейтинг: 0 / 0
04.07.2019, 14:29
    #39833857
источник записей поля со списком фильтруемый для каждой записи отдельно
В условии отбора запроса-источника строк укажите ссылку на поле формы "MatID", а на событии Form_Current и MatID_AfterUpdate выполняйте Requery поля со списком.
Условие может выглядеть так:
WHERE BusinessPieces.MaterID = Forms![Имя формы]![MatID]
или так (для источника списка или поля со списком)
WHERE BusinessPieces.MaterID = Form![MatID]

Имейте ввиду, что фильтрация источника строк хороша для обычной формы. В ленточной/табличной форме значения поля со списком в других записях могут исчезать (если связанный столбец скрыт).
...
Рейтинг: 0 / 0
04.07.2019, 15:48
    #39833892
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
источник записей поля со списком фильтруемый для каждой записи отдельно
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub Form_Current() ' если  форма ленточная обновление необходимо иначе
'проблемы с отображением. В одиночной форме обновление не нужно
'для поля "вид"(родительское) источник задан в окне свойств 
Me.подвид.RowSource = "select кодПВ,подвид from подвид"
Me.товар.RowSource = "select кодТ,наименование from товары"
Me.подвид.Requery
Me.товар.Requery
End Sub

Private Sub вид_AfterUpdate()
Me.подвид.RowSource = "select кодПВ,подвид from подвид where вид=" & Me.вид
End Sub

Private Sub подвид_AfterUpdate()
Me.товар.RowSource = "select кодТ,наименование from товары where вид=" & Me.вид & " and подвид=" & Me.подвид
End Sub
...
Рейтинг: 0 / 0
04.07.2019, 16:02
    #39833904
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
источник записей поля со списком фильтруемый для каждой записи отдельно
Вдогонку:свойства combo:
число столбцов-2
ширина: 0см;3см
...
Рейтинг: 0 / 0
04.07.2019, 16:29
    #39833930
AM_ufu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
источник записей поля со списком фильтруемый для каждой записи отдельно
Кривцов АнатолийИмейте ввиду, что фильтрация источника строк хороша для обычной формы. В ленточной/табличной форме значения поля со списком в других записях могут исчезать (если связанный столбец скрыт).

Это не есть гуд. Форма ленточная. Я делал такую ссылку на поле формы в источнике строк в свойствах поля со списком (через конструктор). Значения исчезают. Думал может если через рекордсет задать рекорд сорс то оно поможет. Но очевидно что нет.

А может есть еще какие нибудь идеи как реализовать данное задание.

То есть задача такая - в одном поле со списком пользователь выбирает материал, а в другом выбирает куски именно данного материала. Понимаю, что можно поставить проверку отвечает ли выбранный кусок основному материалу, но хотелось сделать фильтр кусков именно данного материала чтоб поменьше листать в комбобоксе.
...
Рейтинг: 0 / 0
04.07.2019, 16:59
    #39833961
AM_ufu
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
источник записей поля со списком фильтруемый для каждой записи отдельно
sdku,

Спасибо, попробую.
...
Рейтинг: 0 / 0
04.07.2019, 17:14
    #39833970
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
источник записей поля со списком фильтруемый для каждой записи отдельно
Вдогонку:был не прав-даже в одиночной надо обновлять Combo:
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / источник записей поля со списком фильтруемый для каждой записи отдельно / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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