2015-07-31 2 views
-1

У меня есть эта хранимая процедура, которую я запускаю в Access.Сохраненная процедура с параметрами в Access

Private Sub ReviewTrns_Click() 
    Dim cdb As DAO.Database, qdf As DAO.QueryDef 
     Set cdb = CurrentDb 
     Set qdf = cdb.CreateQueryDef("") 

     qdf.Connect = cdb.TableDefs("dbo_FreeShipping").Connect 
     qdf.SQL = "EXEC dbo.UpdateTrns" 

     qdf.ReturnsRecords = False 
     qdf.Execute dbFailOnError 
     Set qdf = Nothing 
     Set cdb = Nothing 
MsgBox "Records Updated!" 

End Sub 

Он отлично работает. dbo_FreeShipping является связанной таблицей, dbo.UpdateTrns является хранимой процедурой. Я также хочу добавить входное значение для параметра @variable1

Может ли это быть сделано с вводом сообщения?

ответ

0

Просто соедините результат ввода пользователем с вашим вызовом sql. Попробуйте что-то вроде:

Private Sub ReviewTrns_Click() 

    Dim input As String 
    input = InputBox("Enter variable1") //get the user input 

    Dim cdb As DAO.Database, qdf As DAO.QueryDef 
    Set cdb = CurrentDb 
    Set qdf = cdb.CreateQueryDef("") 

    qdf.Connect = cdb.TableDefs("dbo_FreeShipping").Connect 
    qdf.SQL = "EXEC dbo.UpdateTrns @variable1='" & input & "'" // concatenate parameter 

    qdf.ReturnsRecords = False 
     qdf.Execute dbFailOnError 
     Set qdf = Nothing 
     Set cdb = Nothing 

    MsgBox "Records Updated!" 

End Sub 
0

моего метод Гота для получения входных переменных из окна предупреждения в УВЕ InputBox(). например,

Public myStr as String 

public sub GetInputStr() 
    myStr = InputBox("Enter your variable here") 
end sub 

Вы должны затем использовать myStr в других устройствах вашего модуля. надеюсь это поможет!

Смежные вопросы