SetReturnError

Imposta il codice che restituisce il processo del terminale quando si completa l'operazione.

void  SetReturnError(
   int ret_code      // codice di completamento del terminale client
   );

Parametri

ret_code

[in] Il codice da restituire dal processo del terminale client al termine dell'operazione.

Valore di ritorno

Nessun valore di ritorno.

Nota

Impostazione dello specificato codice di ritorno ret_code usando la funzione SetReturnError() è utile per analizzare i motivi del completamento dell'operazione programmatica quando si lancia il terminale tramite la riga di comando.

Diversamente dalla funzione TerminalClose(), SetReturnError() non completa l'operazione del terminale. Invece, imposta solo il codice che restituisce il processo del terminale al suo completamento.

Se la funzione SetReturnError() viene chiamata più volte e/o da diversi programmi MQL5, il terminale restituisce l'ultimo codice di ritorno impostato.

Il codice impostato viene restituito al completamento del processo del terminale, ad eccezione dei seguenti casi:

  • un errore critico si è verificato durante l'esecuzione;
  • è stata chiamata la funzione TerminalClose(int ret_code) che ha emesso il comando di completamento dell'operazione terminale con un codice specificato.

 

Esempio:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   matrix matrix_a =
     {
        {-3.4745891.106384, -9.091977,-3.925227 },
        {-5.5221392.366887,-15.162351,-6.357512 },
        { 8.394926,-2.96006722.2921159.524129 },
        { 7.803242,-2.08028719.2177068.186645 }
     };
   matrix matrix_l(4,4);
   matrix matrix_u(4,4);
 
//-- decomposizione LU
   matrix_a.LU(matrix_l,matrix_u);
 
//--- controlla se A = L * U
   matrix matrix_lu=matrix_l.MatMul(matrix_u);
   int    compare_errors=(int)matrix_a.Compare(matrix_lu,1e-29);
   Print("MatrixCompare errors=",compare_errors);
 
//--- al completamento, il terminale client restituirà il numero di errori del confronto delle due matrici
   SetReturnError(compare_errors);
  }

Guarda anche

Esecuzione Programma, Errori di Runtime, Codici di Motivazione di Deinizializzazione, TerminalClose