Pular para o conteúdo principal

Postagem em destaque

BlackTDN NEWS :: 2025.02.13 :: 21:42:18

_Créditos das imagens: ChatGPT # Robótica Avançada: o que é, como funciona e quais os benefícios? **Fonte:** Tecmundo.com.br **Autor:** Maura Martins **Publicado em:** 2025-02-13T14:30:00Z ![Imagem](https://tm.ibxk.com.br/2025/01/02/02114816778102.jpg?ims=1200xorig) > Hoje as empresas vivenciam uma nova fase na tecnologia voltada à produção. A chamada fase da Indústria 4.0 também é apontada pelos especialistas como uma "Quarta Revolução Industrial". Nesse momento histórico, entre os destaques, está o desenvolvimento da rob… [Leia mais](https://www.tecmundo.com.br/mercado/401252-robotica-avancada-o-que-e-como-funciona-e-quais-os-beneficios.htm) --- # Ex-chefe da Activision Blizzard minimiza acusações de assédio e sugere que são conspirações de sindicatos **Fonte:** Tecmundo.com.br **Autor:** Gabriel Morais Silva de Oliveira **Publicado em:** 2025-02-13T17:30:00Z ![Imagem](https://tm.ibxk.com.br/2025/02/13/13142625239056.jpg?ims=1200xorig) > Durante uma entrevist...

BlackTDN :: ADVPL ~ TRY/CATCH/END Quando Utilizar?

 

Try-Catch

Tempos atrás “simulei” a instrução Try/Cacth/End usando “Comandos Definidos pelo Usuário”. Não pude usar TRY/CATCH pois, a partir de uma “Build” desconhecida, passou a integrar a lista de palavras reservadas da linguagem ADVPL.

Sabendo que existe, em ADVPL, a instrução TRY/CATCH/END quando utilizá-la?

 

U_TRYCATCH               18 Macro FC: cannot find function :TryTest
   1: User Function TryCatch
   2:  
   3:     Local x
   4:     Local y              := "TryTest"
   5:  
   6:     Local bError         := { |e| oError := e , Break(e) }
   7:     Local bErrorBlock    := ErrorBlock( bError )
   8:     
   9:     Local oError
  10:  
  11:     BEGIN SEQUENCE
  12:         TRY
  13:             x := &y.(,)    
  14:         CATCH e as IdxException
  15:             ConOut( ProcName() + " " + Str(ProcLine()) + " " + e:cErrorText )
  16:         END TRY
  17:     RECOVER
  18:         ConOut( ProcName() + " " + Str(ProcLine()) + " " + oError:Description )
  19:     END SEQUENCE 
  20:     ErrorBlock( bErrorBlock )    
  21:  
  22: Return( NIL )
Eis a questão!


[]s
иαldσ dj

Comentários

Postar um comentário

Postagens mais visitadas