none
Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'. RRS feed

  • Pergunta

  • Que erro é esse??

    Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'.

    Preciso retornar uma pesquisa com separação da sessão do usuário, se for do Rio mostra somente Rio, se for de São Paulo mostra só são paulo e se o usuário não tiver estes critérios, a  Session("id_grupoAcesso") deverá ser nula e a pesquisa retorna todos os registros

     

    --ASP (página)

    --(página) inicio

     'Abre conexão

    Call fcn_abrirConexao()

    'Cria objeto para Proc

    Set vobj_command = Server.CreateObject("ADODB.Command")

    Set vobj_command.ActiveConnection = vobj_conexao

     

    'Iniciando Proc

    vobj_command.CommandText = "INT_SP_guiaDaSemana"

    vobj_command.CommandType = cint_adCmdStoredProc

    vobj_command.Parameters.Refresh

     

    'Passando os parametros para PROC

    vobj_command.Parameters("@vstr_tipoOper") = "SEL"

    vobj_command.Parameters("@vint_numOper") = 2

    vobj_command.Parameters("@id_categoria") = vint_link

    vobj_command.Parameters("@id_grupoAcesso") = Session("id_grupoAcesso")

     

    'Executa procedure e valoriza RecordSet com seu retorno

    set vobj_rs = vobj_command.Execute    'O Asp acusa o erro nesta linha

    --(página) fim

     

    --SQL

    --stored procedure (inicio)

    if @vstr_tipoOper= "SEL"

    begin

    if @vint_numoper = 2
     /*selecionando categorias*/
     begin


      Set @vstr_cmd = 'select id_evento,ds_titulo,ds_conteudo,a.dt_inclusao,ds_pasta,ds_nomeImagemBI
      from
      INT_TB_guiaDaSemanaEventos      a
      INNER JOIN INT_TB_guiaDaSemanaCategoria b
      ON a.id_categoria=b.id_categoria   
      Inner Join INT_TB_imagemBI     c
      ON a.id_imagem=c.ID_imagemBI
      Inner Join INT_TB_categoriaBcoImagem  d
      ON c.ID_categoriabcoImagem=d.ID_categoriabcoImagem
      where a.id_categoria=' + convert(varchar(50),@id_categoria)

      if len(@id_grupoAcesso)>0
       begin
        Set @vstr_cmd = @vstr_cmd + 'and FK_grupoAcesso=' + convert(varchar(50),@id_grupoAcesso)
       end
      Set @vstr_cmd = @vstr_cmd + 'order by a.dt_inclusao desc'
      
      --Executa SQL
      Exec sp_executeSql @vstr_cmd 

     end

    end

    --stored procedure (fim)

    sexta-feira, 13 de julho de 2007 16:31

Todas as Respostas

  • Olá Marcelo,

     

    A Stored Procedure está esperando que você informe o parâmetro @statement, olhe sua procedure e veja quais os parêmetros que faltam ser informados. Ex: vobj_command.Parameters("@statement") = ???

    segunda-feira, 16 de julho de 2007 17:00