MS Access 2010 теперь запрашивает параметры при загрузке формы - PullRequest
1 голос
/ 31 декабря 2011

Я давно пишу приложения MS Access.Я только что перешел на Access 2010 и теперь, где бы я ни открывал форму, в которой я создаю InputParameters в коде, приложение предлагает мне ввести параметры.Я сбит с толку и не могу понять это.

Следующий код работал на всех предыдущих версиях MS Access до Access 2010:

  Dim strRS As String
  Dim lngID as Long
  Dim intSomethignElse as Integer

  strRS = "dbo.StoredProcedureName"
  lngID = 1
  intSomethignElse = 2

  Forms!SomeFormName.InputParameters = "@parameter1 = " & lngID  & ", @parameter2  = " & intSomethignElse

 'Verify the parameters do indeed exist and they do:
  Debug.Print Forms!SomeFormName.InputParameters

  Forms!SomeFormName.RecordSource = strRS

Теперь, когда форма загружается, я получаюпредложено ввести @ параметр1 и @ параметр2.Как мне заставить это работать снова в MS Access 2010?Любая помощь приветствуется.

Ответы [ 2 ]

1 голос
/ 04 февраля 2012

У меня был похожий код VBA.До недавнего времени в Access 2010 все работало нормально, и у меня возникла та же проблема, что и во всплывающем окне с запросом параметров.

После того, как я изменил код на simliar на

Forms!SomeFormName.RecordSource = "exec dbo.StoredProcedureName @parameter=" & lngID

, как предложил Рему вкомментарии, мое приложение снова работает.

1 голос
/ 02 января 2012

Может быть RecordSource не пуст.Убедитесь, что он пуст в представлении конструктора.


РЕДАКТИРОВАТЬ:

msdn говорит: Хранимая процедура должна быть выполнена с использованием командной строки, содержащей {call}Синтаксис с одним?маркер для каждого параметра не по умолчанию в списке InputParameters.

Я не знаю синтаксис вызова, но я бы попробовал что-то вроде этого:

strRS = "exec dbo.StoredProcedureName ?, ?"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...