GRAVACAO DE DADOS NO SQL SERVER

M.SOTTI 30/09/2004 13:26:14
#44051
Galera!!!

Para variar estou com mais um problema. Estou tentando fazer um cadastro em VB com banco SQL Server e estou inserindo os dados por Procedures (abaixo está o código). Porém não estou conseguindo inserir os dados e está gerando a seguinte mensagem:
The connection cannot be used to perform this operation. It is either closed or invalid in this context .

Código da Procedure:
[txt-color=#ff0000]CREATE PROCEDURE Inserir_Fornecedor
(@Razao_Forn nvarchar(60),
@Nome_Forn nvarchar(60),
@Insc_Forn nchar(14),
@CNPJ_Forn nchar (14),
@Endereco_Forn nvarchar(70),
@Complemento_Forn nvarchar(30),
@Numero_Forn numeric(9),
@CEP_Forn nvarchar (9),
@Cidade_Forn nvarchar (20),
@UF_Forn nvarchar (2),
@Tel_Forn nvarchar (13),
@Ramal_Forn nvarchar(5),
@Tel_2_Forn nvarchar(13),
@Ramal_2_Forn nvarchar (5),
@Fax_Forn nvarchar (13),
@Ramal_Fax_Forn nvarchar(5),
@Email_Forn nvarchar(70),
@Contato_Forn nvarchar (50),
@Setor_Forn nvarchar (50),
@Obs_Forn nvarchar (500))

AS
SET NOCOUNT ON

INSERT INTO TB_Fornecedores (Razao_Forn, Nome_Forn, Insc_Forn, CNPJ_Forn, Endereco_Forn, Complemento_Forn, Numero_Forn, CEP_Forn, Cidade_Forn, UF_Forn, Tel_Forn, Ramal_Forn, Tel_2_Forn, Ramal_2_Forn, Fax_Forn, Ramal_Fax_Forn, Email_Forn, Contato_Forn, Setor_Forn, Obs_Forn)
VALUES (@Razao_Forn, @Nome_Forn, @Insc_Forn, @CNPJ_Forn, @Endereco_Forn, @Complemento_Forn, @Numero_Forn, @CEP_Forn, @Cidade_Forn, @UF_Forn, @Tel_Forn, @Ramal_Forn, @Tel_2_Forn, @Ramal_2_Forn, @Fax_Forn, @Ramal_Fax_Forn, @Email_Forn, @Contato_Forn, @Setor_Forn, @Obs_Forn)

GO[/txt-color]

Código do módulo (no VB)

[txt-color=#0000ff]Private Sub Main()

Dim StrArquivo As String
Dim StrLocal As String
Dim ConectaSQL_Server As String

Load mdiCont_Adm
mdiCont_Adm.Show

Set CN = CreateObject("ADODB.Connection")
ConectaSQL = "Driver={SQL Server};" & _
"Server=SERV-01;" & _
"Database=Gestao_Adm;" & _
"Uid=sa;Pwd=intersic;"

CN.Open ConectaSQL_Server



End Sub

Public Function Inserir_Forn(ByVal strRazao_Forn As String, _
strNome_Forn As String, _
strInsc_Forn As String, _
strCNPJ_Forn As String, _
strEnd_Forn As String, _
strComplemento_Forn As String, _
strNum_Forn As String, _
strCEP_Forn As String, _
strCidade_Forn As String, _
strUF_Forn As String, _
strTel_Forn As String, _
strRamal_Forn As String, _
strTel_2_Forn As String, _
strRamal_2_Forn As String, _
strFax_Forn As String, _
strRamal_Fax_Forn As String, _
strEmail_Forn As String, _
strContato_Forn As String, _
strSetor_Forn As String, _
strObs_Forn As String) As Variant

Dim cmdI As ADODB.Command
Set cmdI = New ADODB.Command
With cmdI
.ActiveConnection = CN
.CommandText = "SP_Inserir_Fornecedor"
.CommandType = adCmdStoredProc
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 60, strRazao_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 60, strNome_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 14, strInsc_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 14, strCNPJ_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 70, strEnd_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 30, strComplemento_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 9, strNum_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 9, strCEP_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 20, strCidade_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 2, strUF_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 13, strTel_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 5, strRamal_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 13, strTel_2_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 5, strRamal_2_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 13, strFax_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 5, strRamal_Fax_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 70, strEmail_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 50, strContato_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 50, strSetor_Forn)
.Parameters.Append .CreateParameter(, adVarChar, adParamInput, 500, strObs_Forn)
.Execute
End With
Set cmdI = Nothing

Inserir_Forn = True

End Function[/txt-color]

Código do botão

[txt-color=#ff0000]Novo_Registro = Inserir_Forn(txtRazao_Forn.Text, _
txtNome_Forn.Text, _
txtInsc_Forn.Text, _
txtCNPJ_Forn.Text, _
txtEnd_Forn.Text, _
txtComplemento_Forn.Text, _
txtNum_Forn.Text, _
txtCEP_Forn.Text, _
txtCidade_Forn.Text, _
txtUF_Forn.Text, _
txtTel_1_Forn.Text, _
txtRamal_1_Forn.Text, _
txtTel_2_Forn.Text, _
txtRamal_2_Forn.Text, _
txtFax_Forn.Text, _
txtRamal_Fax_Forn.Text, _
txtEmail_Forn.Text, _
txtContato_Forn.Text, _
txtSetor_Forn.Text, _
txtObs_Forn.Text)[/txt-color]


Desde já agradeço a ajuda
USUARIO.EXCLUIDOS 30/09/2004 13:54:02
#44060
Resposta escolhida
INSERT INTO TB_Fornecedores Values (Razao_Forn, Nome_Forn, Insc_Forn, CNPJ_Forn, Endereco_Forn, Complemento_Forn, Numero_Forn, CEP_Forn, Cidade_Forn, UF_Forn, Tel_Forn, Ramal_Forn, Tel_2_Forn, Ramal_2_Forn, Fax_Forn, Ramal_Fax_Forn, Email_Forn, Contato_Forn, Setor_Forn, Obs_Forn)
VALUES (@Razao_Forn, @Nome_Forn, @Insc_Forn, @CNPJ_Forn, @Endereco_Forn, @Complemento_Forn, @Numero_Forn, @CEP_Forn, @Cidade_Forn, @UF_Forn, @Tel_Forn, @Ramal_Forn, @Tel_2_Forn, @Ramal_2_Forn, @Fax_Forn, @Ramal_Fax_Forn, @Email_Forn, @Contato_Forn, @Setor_Forn, @Obs_Forn)
Tópico encerrado , respostas não são mais permitidas