Незначительный вопрос

abysscope

Добрый день!открываю форму и передаю ей параметр
Private Sub Form_Open(Cancel As Integer)

Dim arg As String

arg = Me.OpenArgs
arg = "SELECT * FROM tblGoods WHERE GoodArticle = " & arg & ";"

If arg <> "new" Then
 Me.RecordSource = arg ' здесь выскакивет запрос
 
End If
до открытия формы выскакивает запрос что необходимо ввести значение и показано само значениепри вводе любого значение форма открывается с правильным источникомвопрос из за чего выскакивает запрос?
6 ответов

abysscope

abysscope,Очевидно из-за того, что выглядеть должно примерно так:
Private Sub Form_Open(Cancel As Integer)

Dim arg As String

arg = Me.OpenArgs
arg = "SELECT * FROM tblGoods WHERE GoodArticle = '" & arg & "';"

If arg <> "new" Then
 Me.RecordSource = arg ' здесь выскакивет запрос
 
End If
Внимательно строку формирования запроса гляньте. Текстовая же переменная, все-таки.


abysscope

спасибо не принял во внимание


abysscope

У Вас arg никогда не равен new, так что if не имеет смысла


abysscope

arg у меня принимает значение new при открытии формы через другие событияв связи с этим стоит условие


abysscope

arg у меня принимает значение new при открытии формы через другие событияв связи с этим стоит условие
Приведенный вами код этому противоречит.


abysscope

все понял нашел свою ошибку ))