GlobalVariablesDeleteAll

Apaga as variáveis globais do terminal do cliente.

int  GlobalVariablesDeleteAll(
   string     prefix_name=NULL,     // Todas as variáveis globais com nomes que começam com o prefixo
   datetime   limit_data=0          // Todas as variáveis globais que foram alteradas antes desta data
   );

Parâmetros

prefix_name=NULL

[in] Prefixo do nome de variáveis globais para remover. Se você especificar um prefixo NULL ou string vazia, então todas as variáveis que atendam o critério dados serão apagados.

limit_data=0

[in] Data para selecionar as variáveis globais no momento de sua última modificação. A função remove variáveis globais, que foram alteradas antes desta data. Se o parâmetro for zero, então todas as variáveis que atendam o primeiro critério (prefixo) são excluídos.

Valor do Retorno

O número de variáveis apagados.

Observação

Se ambas as opções são iguais a zero (prefix_name = NULL e limit_data = 0), então função exclui todas as variáveis globais da terminação. Se ambos os parâmetros são especificados, então ele elimina variáveis globais correspondentes a ambos os parâmetros.

As variáveis globais existem no terminal do cliente durante 4 semanas desde suas última utilização, então eles são excluídos automaticamente.

 

Exemplo:

#property copyright "Copyright 2025, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
 
#property script_show_inputs
 
#property description   "The script deletes global variables of the client terminal."
#property description   "Limit date: Variables before the specified date are deleted."
#property description   "If is zero, then variables that match the Name prefix criterion are deleted."
#property description   "Name prefix: Prefix of the variable name. If not specified, then variables are deleted based on the Limit date criterion."
#property description   "If all input parameters are zero, then all global variables are deleted."
#property description   "If both parameters are specified, then global variables corresponding to each of the specified parameters are deleted."
 
//--- input variables
input datetime InpLimitDate=  0;       // Limit date
input string   InpPrefix   =  NULL;    // Name prefix
 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- obtemos a quantidade total de variáveis globais do terminal de cliente,
//--- excluímos as variáveis de acordo com os critérios de exclusão escolhidos nas configurações do script e
//--- imprimimos no diário o resultado da exclusão
   int total=GlobalVariablesTotal();
   int deleted=GlobalVariablesDeleteAll(InpPrefixInpLimitDate);
   PrintFormat("Of %d global variables, %d have been removed. %d remain"totaldeletedtotal-deleted);
   /*
   Resultado:
   Of 21 global variables21 have been removed0 remain
   */
  }