Использование разделенной формы для обновления данных

#ms-access

#ms-access

Вопрос:

У меня есть 2 таблицы, Tbl_Store1 и Tbl_Store2

У меня есть одна форма (Frm_Data), которая будет заполняться из Tbl_Store1 или Tbl_Store2 на основе несвязанного текстового поля с именем Txt_TblToUse.

Txt_TblToUse — это выпадающее поле, которое предлагает пользователю только 2 варианта выбора. Хранилище 1 или хранилище 2.

После того, как пользователь выберет или изменит Txt_TblsToUse, я настроил программу на обновление источника данных до правильной таблицы, а затем обновил, запросил и перерисовал форму.

frm_Data имеет представление по умолчанию как «Разделенная форма», левая сторона формы — вид формы, Правая сторона формы — вид таблицы

Левая часть формы (вид формы) обновляется правильно, правая часть формы (вид таблицы) не обновляется до новых данных.

Если я щелкну правой кнопкой мыши по заголовку одного из полей представления таблицы, а затем выберу его сортировку, данные будут повторно заполнены правильными данными.

Есть ли способ последовательно обновлять данные в части таблицы данных формы?

Код***

 Call TableToUse 'This will look in the Module1 and determine which table to use
  

** Код TableToUse

 Public Function TableToUse()
Form_Frm_Data.RecordSource = ""
Dim M_Month As Integer
M_Month = Form_Frm_Data.Txt_Month

Select Case Form_Frm_Data.Txt_TblToUse

  Case Is = "Store1"
      Form_Frm_Data.RecordSource = "Qry_Store1"
      Form_Frm_Data.Requery
   
   Case Is = "Tbl_Store2"
      Form_Frm_Data.RecordSource = "Qry_Store2"
      Form_Frm_Data.Requery

End Select

Dim db As String
db = ""
db = Form_Frm_Data.RecordSource
Form_Frm_Data.OrderBy = "TransactionDate ASC"
Form_Frm_Data.OrderBy = "TransactionDate DES"
Form_Frm_Data.Txt_DB = db
Form_Frm_Data.Recalc
Form_Frm_Data.Refresh
Form_Frm_Data.Repaint
Form_Frm_Data.ID.ColumnHidden = True

End Function
  

Комментарии:

1. Зачем иметь 2 таблицы вместо одной таблицы с полем для StoreID и применять критерии фильтрации? Работает для меня. Таблица данных сразу отражает фильтр.

2. Я протестировал настройку RecordSource на другую таблицу, и таблица данных сразу же отражает изменения — без обновления, перерисовки, запроса.

3. Спасибо за ответы. Чтобы ответить на 1-й вопрос о том, почему две таблицы. На самом деле у меня 12 хранилищ, но я не хотел усложнять вопрос. Второй ответ. Я не уверен, почему ваш работает, я пробовал с тремя R и без них и со всеми их комбинациями. Кажется, я вспоминаю около 2 лет назад, когда я впервые написал небольшую программу, что в access была «ошибка», когда дело доходит до таблицы с разделенным представлением, но сегодня я не смог найти никакой информации при поиске. Возможно, тогда я сформулировал вопрос по-другому.

4. По-прежнему рекомендую только 1 таблицу. Поскольку не удается воспроизвести проблему, не могу посоветовать решение.