Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [MS Access] Зависимость выборки запроса от списка


Автор: Neivin 1.10.2009, 14:48
Есть база оборудования, где каждый тип оборудования в своей табличке. У каждого из низ есть поле "местонаходение". Нужно сделать отчет где бы пользователь из списка смог выбрать местонаходение и ему бы в отчет помещалась выборка всей техники расположенной по этому местонахождению. Такие же отчеты нужно сформировать с критерием "статус", "ответственное лицо" и пр. 
Я сделала запрос где с помощью Union обьединила все таблички, а вот как сделать такие отчеты не знаю  smile 

Автор: Akina 1.10.2009, 17:19
Цитата(Neivin @  1.10.2009,  15:48 Найти цитируемый пост)
каждый тип оборудования в своей табличке.

Бардак.
Надо собрать все эти таблицы в одну, добавив поле "Тип оборудования". И потом уже строить запросы.

Автор: Neivin 2.10.2009, 07:35
Их нельзя собирать в одну табличку. Начальник поставил 2 условия: сделать это в Access и именно разделить все по разным табличкам. =( Чтобы как-то это решить я и написала запрос который вы сводил все в одно "представление".

Автор: Akina 2.10.2009, 07:45
Цитата(Neivin @  2.10.2009,  08:35 Найти цитируемый пост)
Начальник поставил 2 условия: сделать это в Access и именно разделить все по разным табличкам

Он идиот?

Цитата(Neivin @  1.10.2009,  15:48 Найти цитируемый пост)
Нужно сделать отчет где бы пользователь из списка смог выбрать местонаходение и ему бы в отчет помещалась выборка всей техники расположенной по этому местонахождению. Такие же отчеты нужно сформировать с критерием "статус", "ответственное лицо" и пр. 

Делаешь отчёт нужного вида.
Делаешь форму. На ней листбоксы с выбором критериев отбора.
По нажатию кнопки изменяешь источник данных отчёта в соответствии с заданными критериями либо задаёшь фильтр отчёта и выводишь полученный отчёт на экран.

Автор: Neivin 2.10.2009, 08:18
Цитата

По нажатию кнопки изменяешь источник данных отчёта в соответствии с заданными критериями 


Когда изменяешь источник данных там пишешь where и дальше надо указать то место которое было выбрано пользователем, как?
where значение списка=[запрос на обьенинение].место
я не знаю как обозначить значение выбранное из списка  smile 

Автор: Akina 2.10.2009, 08:29
Цитата(Neivin @  2.10.2009,  09:18 Найти цитируемый пост)
я не знаю как обозначить значение выбранное из списка    

А в текстовую переменную ты скопировать его можешь?

Автор: Neivin 2.10.2009, 08:31
Каким образом и где все это прописывать?

Автор: Akina 2.10.2009, 09:48
Код

If ListBox0.ItemsSelected.Count > 0 Then
    BoundColumnValue = ListBox0.Selected(ListBox0.ItemsSelected.Item(0))
Else
    BoundColumnValue = ""
End If


А дальше
Код

 Reports("ReportName").Filter = "[FieldName] = '" & BoundColumnValue & "'"

Автор: Neivin 2.10.2009, 12:51
ListBox - это список из элементов управления?
Это все вставлять в процедуру обработки при нажатии кнопки?
Там где Report name там вставить как называется имя отчета?

Автор: Akina 2.10.2009, 12:59
Для домашних заданий, курсовых и вопросов типа "Сделайте за меня" существует раздел "Центр Помощи".

Тема перенесена.

Автор: Neivin 6.10.2009, 10:07
Справилась =))


Private Sub Button_Filter_Place_Click()
    Dim ID As Byte
    Dim sql, s As String
    s = "Запрос_на_Соединение"
    ID = Me.List_Place.Column(0)
    sql = "Select * From " & s & " Where место =" & ID
    Me.PodchinForm1.Form.RecordSource = sql
End Sub


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)