Mira cómo descargar robots gratis
¡Búscanos en Twitter!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Visualizaciones:
944
Ranking:
(31)
Publicado:
2014.01.14 14:36
Actualizado:
2016.11.22 07:33
\MQL5\Files\SomeFolder\
data.txt (0.03 KB) ver
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

El script intenta mover el archivo de origen desde una subcarpeta de la carpeta local del terminal a un nuevo destino en una subcarpeta en la carpeta compartida de todos los terminales clientes. Los nombres de los archivos y subcapetas se especifican en los parámetros de entrada del script. La ubicación de la carpeta local del terminal puede obtenerse mediante la función TerminalInfoString().

PrintFormat("Ruta hasta la carpeta local del terminal: %s\\Files\\",TerminalInfoString(TERMINAL_DATA_PATH));
PrintFormat("Ruta hasta la carpeta compartida de todos los terminales: %s\\Files\\",TerminalInfoString(TERMINAL_COMMONDATA_PATH));

Inicialmente, el script utilizará la función FileIsExist() para determinar, si existe el archivo de origen en la ubicación indicada dentro de la carpeta local del terminal, si no es así, dará un mensaje de error. Después, comprobará si existe el archivo indicado como destino. Si el archivo destino no existe, el movimiento se realizará sin utilizar la bandera FILE_REWRITE. En caso contrario, se utilizará dicha bandera, o la operarción no será realizada.

Código:

//--- muestra la ventana con los parámetros de entrada al lanzar el script
#property script_show_inputs
//--- parámetros de entrada
input string InpSrcName="data.txt";
input string InpDstName="newdata.txt";
input string InpSrcDirectory="SomeFolder";
input string InpDstDirectory="OtherFolder";
//+------------------------------------------------------------------+
//| Función de inicio del script                                     |
//+------------------------------------------------------------------+
void OnStart()
  {
   string local=TerminalInfoString(TERMINAL_DATA_PATH);
   string common=TerminalInfoString(TERMINAL_COMMONDATA_PATH);
//--- receive file paths
   string src_path;
   string dst_path;
   StringConcatenate(src_path,InpSrcDirectory,"//",InpSrcName);
   StringConcatenate(dst_path,InpDstDirectory,"//",InpDstName);
//--- comprueba si existe el archivo origen (si no es así - salimos)
   if(FileIsExist(src_path))
      PrintFormat("Existe el archivo %s en la carpeta %s\\Files\\%s",InpSrcName,local,InpSrcDirectory);
   else
     {
      PrintFormat("Error, no existe el archivo %s",InpSrcName);
      return;
     }
//--- comprueba si existe el archivo destino
   if(FileIsExist(dst_path,FILE_COMMON))
     {
      PrintFormat("Existe el archivo %s en la carpeta %s\\Files\\%s",InpDstName,common,InpDstDirectory);
      //--- el archivo existe, la operación debe realizarse con la bandera FILE_REWRITE
      ResetLastError();
      if(FileMove(src_path,0,dst_path,FILE_COMMON|FILE_REWRITE))
         PrintFormat("El archivo %s ha sido movido",InpSrcName);
      else
         PrintFormat("Error! Código = %d",GetLastError());
     }
   else
     {
      PrintFormat("El archivo %s no existe en la carpeta %s\\Files\\%s",InpDstName,common,InpDstDirectory);
      //--- el archivo no existe, la operación debe realizarse sin la bandera FILE_REWRITE
      ResetLastError();
      if(FileMove(src_path,0,dst_path,FILE_COMMON))
         PrintFormat("Se ha movido el archivo %s",InpSrcName);
      else
         PrintFormat("Error! Código = %d",GetLastError());
     }
//--- el archivo se ha movido; vamos a comprobarlo
   if(FileIsExist(dst_path,FILE_COMMON) && !FileIsExist(src_path,0))
      Print("Operación realizada correctamente!");
   else
      Print("Error!");
  }

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/1614

iChartsSwitchSymbol iChartsSwitchSymbol

Cuando se cambia el símbolo gráfico, cambiará los símbolos para todas las otras gráficas.

Demo_FileFlush Demo_FileFlush

Este script muestra un ejemplo del uso de la función FileFlush()

Clase CDownLoadHistory Clase CDownLoadHistory

La clase CDownLoadHistory proporciona los métodos de descarga de datos históricos.

sToken sToken

El script contiene una clase, que puede utilizarse para resolver expresiones matemáticas y lógicas, definidas como string.