GlobalVariablesDeleteAll

Entfernt globale Variablen des Client-Terminals.

int  GlobalVariablesDeleteAll(
   string     prefix_name=NULL      // alle globalen Variablen, deren Namen mit Praefix anfangen 
   datetime   limit_data=0          // alle globalen Variablen, die vor diesem Datum verändert wurden.
   );

Parameter

prefix_name=NULL

[in]  Praefixname der entfernten globalen Variablen. Wenn das Praefix NULL oder Leerzeile angegeben wird, werden alle globalen Variablen, die dem Datumkriterium entsprechen, entfernt.  

limit_data=0

[in]  Datum für Auswahl der globalen Variablen nach der Zeit der letzten Modifikation. Alle Variablen, die vor dem angegebenen Datum verändert wurden, werden entfernt. Wenn der Parameter gleich Null ist, werden alle Variablen, die dem ersten Kriterium entsprechen (Praefix), entfernt.

Rückgabewert

Anzahl der entfernten Variablen.

Hinweis

Wenn die beiden Parameter gleich Null sind (prefix_name=NULL und limit_data=0), werden alle globale Variablen des Client-Terminals entfernt. Wenn beide Parameter angegeben werden, werden globale Variablen, die beiden Parametern entsprechen, entfernt.  

Globale Variablen existieren im Client-Terminal innerhalb von 4 Wochen seit dem letzten Zugriffs, danach werden sie automatisch entfernt.

 

Beispiel:

#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."
 
//--- Eingabeparameter
input datetime InpLimitDate=  0;       // Limit-Zeitpunkt
input string   InpPrefix   =  NULL;    // Namenspräfix
 
//+------------------------------------------------------------------+
//| Skript Programm Start Funktion                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- die Gesamtzahl der globalen Variablen des Client-Terminals abrufen,
//--- Variablen gemäß den in den Skripteinstellungen ausgewählten Löschkriterien löschen und
//--- das Löschergebnis im Protokoll ausgeben
   int total=GlobalVariablesTotal();
   int deleted=GlobalVariablesDeleteAll(InpPrefixInpLimitDate);
   PrintFormat("Of %d global variables, %d have been removed. %d remain"totaldeletedtotal-deleted);
   /*
  Ergebnis:
   Of 21 global variables21 have been removed0 remain
   */
  }