GlobalVariablesDeleteAll

Elimina variables globales del terminal de cliente.

int  GlobalVariablesDeleteAll(
   string     prefix_name=NULL      // todas las variables globales cuyos nombres se empiezan con el prefijo
   datetime   limit_data=0          // todas las variables globales que han sido cambiadas antes de esta fecha
   );

Parámetros

prefix_name=NULL

[in]  Prefijo del nombre de las variables globales que se eliminan. Si se trata del prefijo NULL o cadena vacía, entonces todas las variables globales que cumplen con el criterio de la fecha serán eliminadas.

limit_data=0

[in]  Fecha para la selección de variables globales según el momento de su última modificación. Las variables globales que se han modificado antes de la fecha indicada serán eliminadas. Si el parámetro es igual a cero, se eliminan todas las variables globales que cumplen con el primer criterio (según el prefijo).

Valor devuelto

Número de variables eliminadas.

Nota

Si ambos parámetros son iguales a cero (prefix_name=NULL y limit_data=0), se eliminan todas las variables globales del terminal. Si los dos parámetros están especificados, se eliminan las variables globales correspondientes a cada uno de los parámetros especificados.

Las variables globales se guardan en el terminal de cliente durante 4 semanas desde el último acceso, luego se eliminan automáticamente.

 

Ejemplo:

#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()
  {
//--- obtenemos el número total de variables globales en el terminal del cliente,
//--- eliminamos las variables según los criterios de eliminación seleccionados en la configuración del script
//--- e imprimimos el resultado de la eliminación en el registro
   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
   */
  }