TimeToStruct

Convierte un valor del tipo datetime (cantidad de segundos transcurridos desde 01.01.1970) a una variable del tipo de estructura MqlDateTime.

bool  TimeToStruct(
   datetime      dt,            // fecha y hora
   MqlDateTime&  dt_struct      // estructura para recibir valores
   );

Parámetros

dt

[in]  Valor de la fecha para la conversión.

dt_struct

[out]  Variable de estructura del tipo MqlDateTime.

Valor devuelto

Devuelve true en caso de éxito, de lo contrario devuelve false. Para obtener la información sobre el error, hay que llamar a la función GetLastError().

Ejemplo:

void OnStart()
  {
//---obtenemos la última hora conocida del servidor, declaramos la estructura fecha/hora y rellenamos los campos de la estructura
   datetime    time=TimeCurrent();
   MqlDateTime tm  ={};
   if(!TimeToStruct(time,tm))
      Print("TimeToStruct() failed. Error "GetLastError());
   
//--- registramos la hora del servidor obtenida y el resultado del rellenado de la estructura MqlDateTime utilizando TimeToStruct()
   PrintFormat("Server time: %s\n- Year: %u\n- Month: %02u\n- Day: %02u\n- Hour: %02u\n- Min: %02u\n- Sec: %02u\n- Day of Year: %03u\n- Day of Week: %u (%s)",
               (string)timetm.yeartm.montm.daytm.hourtm.mintm.sectm.day_of_yeartm.day_of_weekEnumToString((ENUM_DAY_OF_WEEK)tm.day_of_week));
   /*
  Resultado
   Server time2024.04.18 15:47:27
   - Year2024
   - Month04
   - Day18
   - Hour15
   - Min47
   - Sec27
   - Day of Year108
   - Day of Week4 (THURSDAY)
   */
  }