[resolvido] Atualizar registros via SP

Moderador: Avelino Sampaio

Mauricio.Santos
Mensagens: 44
Registrado em: 13 Ago 2015, 14:59
Localização: São Paulo

[resolvido] Atualizar registros via SP

Mensagempor Mauricio.Santos » 28 Jun 2016, 17:27

Olá!

Possuo uma Stored Procedure para atualizar dados em uma tabela e tenho a seguinte linha de código VBA:

Código: Selecionar todos


Public Function AtualizaVistoria(strNomeForm As String)

    Dim rstSqlStored As ADODB.Recordset
    Dim formAberto As Form
    Dim cmdStoredUpdate As ADODB.Command
   
    Set formAberto = Forms(strNomeForm)
   
    ConexaoSQL (strTpSrvSQL)
       
    ' Inicia a transação
    cnSQL.BeginTrans
   
    ' Executa Stored Procedure
   
    Set cmdStoredUpdate = New ADODB.Command

    cmdStoredUpdate.ActiveConnection = cnSQL
    cmdStoredUpdate.CommandText = "SP_AtualizaVistoria"
    cmdStoredUpdate.CommandType = adCmdStoredProc

    cmdStoredUpdate.Parameters.Refresh

    cmdStoredUpdate.Parameters(1).Value = " & IDRegistro & "
    cmdStoredUpdate.Parameters(2).Value = formAberto![txtNumeroOS]
    .
    .
    .
    .
    .
   
    Set rstSqlStored = cmdStoredUpdate.Execute()
       
    ' Encerra a transação
    cnSQL.CommitTrans



Utilizei as linhas de código acima para passar parâmetros para uma Stored Procedure de inclusão.
Como passar parâmetros a uma Stored Procedure para atualizar dados?

Obrigado.
Última edição por Mauricio.Santos em 29 Jun 2016, 11:46, editado 3 vezes no total.

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.


Avatar do usuário
Jeferson
Mensagens: 22
Registrado em: 07 Jun 2015, 14:09
Localização: Belo Horizonte
Contato:

Re: Atualizar registros via SP

Mensagempor Jeferson » 28 Jun 2016, 18:45

Tente cmdStoredAddNew

sds
Suporte ao Desenvolvedor Ms Access: preços especiais para usuários da RedeAccess e UsandoAccess.
NFe, NFSe, NFCe, CFe, CTe, Boleto Bancário, SMS, integração Web, Android. Módulos em código fonte aberto. Access: http://www.kartoffel.com.br

Mauricio.Santos
Mensagens: 44
Registrado em: 13 Ago 2015, 14:59
Localização: São Paulo

Re: Atualizar registros via SP

Mensagempor Mauricio.Santos » 28 Jun 2016, 20:06

Jeferson,

Não entendi a sua resposta.
Poderia explicar melhor por favor?

Avatar do usuário
Jeferson
Mensagens: 22
Registrado em: 07 Jun 2015, 14:09
Localização: Belo Horizonte
Contato:

Re: Atualizar registros via SP

Mensagempor Jeferson » 28 Jun 2016, 21:59

Dim cmdStoredUpdate As ADODB.Command

para

Dim cmdStoredNewAdd As ADODB.Command

Sds
Suporte ao Desenvolvedor Ms Access: preços especiais para usuários da RedeAccess e UsandoAccess.
NFe, NFSe, NFCe, CFe, CTe, Boleto Bancário, SMS, integração Web, Android. Módulos em código fonte aberto. Access: http://www.kartoffel.com.br

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.


Mauricio.Santos
Mensagens: 44
Registrado em: 13 Ago 2015, 14:59
Localização: São Paulo

Re: Atualizar registros via SP

Mensagempor Mauricio.Santos » 29 Jun 2016, 10:36

Jeferson,

Ainda não entendi.
A variável cmdStoredUpdate recebe a classe Command da biblioteca ADODB.
Você está dizendo que se eu mudar o nome da variável de cmdStoredUpdate para cmdStoredNewAdd o código vai funcionar?

Mauricio.Santos
Mensagens: 44
Registrado em: 13 Ago 2015, 14:59
Localização: São Paulo

Re: [resolvido] Atualizar registros via SP

Mensagempor Mauricio.Santos » 29 Jun 2016, 11:46

Resolvido.....

Bastou colocar formato nos dados recebidos pelos parâmetros.

Obrigado.

Avatar do usuário
Dilson
Mensagens: 17
Registrado em: 08 Jun 2015, 13:11
Localização: Altamira-Pará

Re: [resolvido] Atualizar registros via SP

Mensagempor Dilson » 16 Set 2016, 02:45

Olá Mauricio, pode mostrar a sintaxe de como formatou os dados ?

Mauricio.Santos
Mensagens: 44
Registrado em: 13 Ago 2015, 14:59
Localização: São Paulo

Re: [resolvido] Atualizar registros via SP

Mensagempor Mauricio.Santos » 16 Set 2016, 15:42

Dilson,

A Stored Procedure deverá ficar assim:

Código: Selecionar todos

ALTER PROCEDURE [dbo].[SP_AtualizaDados]
@CampoID int,
@Parametro_01   nvarchar(50)

as
BEGIN

UPDATE [dbo].[NomeDaTabela] SET
[NomeDoCampo] = @Parametro_01

WHERE [NomeDoCampoChave] = @CampoID



Sucesso!!!

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.



Voltar para “Access x SqlServer”

Quem está online

Usuários neste fórum: Nenhum usuário registrado e 1 visitante