Usando a função UserException
Força um erro, na linguagem AdvPL, para que possa ser tratado posteriormente. Para isso, esta função recebe uma string com a descrição do erro que será apresentada de acordo com o ambiente que está executando.
UserException ( < cDescricao> ) –> Nil
Nome | Tipo | Descrição | Obrigatório | Referência |
cDescricao | Caracter | Indica a string que contém a descrição do erro forçado através da função. | X |
Nil (Nulo)
Caso a função seja executada em tela, a descrição será apresentada em uma janela de erro. Mas, se for executada via console (modo texto), será apresentada uma descrição na tela.
Exemplificando na prática:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
//Cria uma view No Banco de Dados User Function MakeView(cNomeView,cView) // Se For SqlServer //Dropa a View se Existir If "MSSQL" $ Upper(Trim(TcGetDb())) // Verifica se existe a view BeginSql Alias "QVIEW" SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = %Exp:cNomeView% EndSql If QVIEW->(EOF()) //Criar a View cMkView := "CREATE VIEW " + cNomeView cMkView += " AS " cMkView += cView TCSQLEXEC(cMkView) If TcSqlExec(cMkView) <> 0 UserException('ERRO AO CRIAR A VIEW ' + cNomeView + CRLF + TCSqlError() ) Endif Endif QVIEW->(dbCloseArea()) Endif // Se For Oracle If "ORACLE" $ Upper(Trim(TcGetDb())) //Criar a View cMkView := "CREATE OR REPLACE VIEW " + cNomeView cMkView += " AS " cMkView += cView Memowrit(cNomeView+'.sql',cMkView) if TcSqlExec( cMkView ) <> 0 UserException('ERRO AO CRIAR A VIEW ' + cNomeView + CRLF + TCSqlError() ) Endif Endif Return |
ou
1 2 3 4 |
If Empty(cPadrao) .or. ValType(cPadrao) <> "C" UserException("Parametro Invalido - RetRecnoLP()") Return(0) EndIf |