Árvore de páginas

Procedure

Produto:

ADVPL

Versões:

Todas

Ocorrência:

Como criar uma procedure?

Ambiente:

P12

Passo a passo:

#include 'protheus.ch'

#include 'parmtype.ch'

#include 'TBICONN.ch'

#include 'TOTVS.ch'


Execute script no banco para criar a procedure:


Create Procedure USRTESTE( @inValue int, @outStr char(64) OUTPUT, @outValue int OUTPUT) As

Begin

set @outStr = 'Teste'

set @outValue = @inValue + 3

End



user function TesteTCSPEXEC()


      Local cDBOra := "MSSQL/12117" //banco/ambiente

      Local cSrvOra := "localhost

      Local aResult := {}


      //crio a comunicação com o banco

      TcLink(cDbOra,cSrvOra,7890)

     

      //verifico se existe a procedure no banco

      lRet := TCSPExist("USRTESTE")


      if lRet == .F.

            conout("Store Procedure not exist!")

      endif


      //executo a procedure criada

      aResult := TCSPEXEC("USRTESTE", 100)


      IF empty(aResult)

            Conout('Erro na execução da Stored Procedure : '+TcSqlError())

      Else

            Conout("Retorno String : "+aResult[1])

            Conout("Retorno Numerico : "+str(aResult[2]))

            MsgInfo("Procedure Executada")

           

      Endif


Return



Observações:

TCSPExist

TCSQLExec