Por que o indicador de notícias não está funcionando no Windows 7? - página 3

 
ver meu e-mail pessoal, mas é só para esta semana
 

é assim que deve ser?

Arquivos anexados:
news_1.mq4  18 kb
 
Abzasc:

é assim que deve ser?


Bem, mais ou menos ) Apenas parece que você tem etiquetas de linha duplicadas em cada subjanela.
 
alexx_v:
Bem mais ou menos ) Somente você parece ter letras de linha duplicadas em cada subjanela.

Então é mais fácil abrir uma janela separada para o indicador :) Eu não sei onde mudar, vou tentar amanhã.

Também pensando como a Mischek. O arquivo agora se chama Calendário-08-01-2010.csv, então terei que copiar um novo endereço aqui toda semana

e mudança no código desta peça

// -----------------------------------------------------------------------------------------------------------------------------
string LoadNews(datetime curr_time)
{ 
  bool reload = false;
  int pos = 0, pos1 = 0;
  int file = 0, file2 = 0;
  string str = "", str2 = "";
// ---------- название ФАЙЛА
  file = FileOpen("Calendar-08-01-2010.csv", FILE_BIN|FILE_READ);
  if(file!=-1)
  {
    FileClose(file); 
// ---------- название ФАЙЛА
    str2 = ReadFile("Calendar-08-01-2010.csv");
        
    pos = StringFind(str2, "\n");
    int cache_time = StrToTime(StringSubstr(str2, 0, pos));
    str2 = StringSubstr(str2, pos+2);

    if(cache_time<=curr_time-update*60) reload = true;
  }
  else reload = true;

  LastUpdate = curr_time;
  if(reload)
  {
// ---------- АДРЕС
    str = ReadWebPage("http://cdn.dailyfx.com/files/Calendar-08-01-2010.csv?week=&sort=dateDesc&timezone=&currency=|&importance=|&time="+curr_time);
    if(str == "") return(0);
    Str_Replace("\n\n", "\n", str);
    str = StringTrimRight(str);

// ---------- название ФАЙЛА
    WriteFile("Calendar-08-01-2010.csv", TimeToStr(curr_time, TIME_DATE|TIME_SECONDS)+"\n"+str);
  }  
  else
    str = StringTrimRight(str2);
  return (str);  
}

// -----------------------------------------------------------------------------------

atualização

Faltou em um lugar, apesar de ter funcionado :)

Arquivos anexados:
news_2.mq4  18 kb
 

Não, não, não...

// -----------------------------------------------------------------------------------------------------------------------------
string LoadNews(datetime curr_time)
{ 
  bool reload = false;
  int pos = 0, pos1 = 0;
  int file = 0, file2 = 0;
  string str = "", str2 = "";
// ---------- название ФАЙЛА
  file = FileOpen("news.csv", FILE_BIN|FILE_READ);
  if(file!=-1)
  {
    FileClose(file); 
// ---------- название ФАЙЛА
    str2 = ReadFile("news.csv");
        
    pos = StringFind(str2, "\n");
    int cache_time = StrToTime(StringSubstr(str2, 0, pos));
    str2 = StringSubstr(str2, pos+2);

    if(cache_time<=curr_time-update*60) reload = true;
  }
  else reload = true;

  LastUpdate = curr_time;
  if(reload)
  {
// ---------- АДРЕС
    str = ReadWebPage("http://cdn.dailyfx.com/files/Calendar-08-01-2010.csv?week=&sort=dateDesc&timezone=&currency=|&importance=|&time="+curr_time);
    if(str == "") return(0);
    Str_Replace("\n\n", "\n", str);
    str = StringTrimRight(str);
    WriteFile("news.csv", TimeToStr(curr_time, TIME_DATE|TIME_SECONDS)+"\n"+str);
  }  
  else
    str = StringTrimRight(str2);
  return (str);  
}

// -----------------------------------------------------------------------------------
Acho que é isso que devemos fazer, senão lemos os dados e os escrevemos no news.csv, e depois tentamos ler no Calendar-08-01-2010.csv, mas será que os salvamos em algum lugar?
 
Aí, é bom que eu tenha perdido ). Pois acho que não vale a pena mudar, porque agora seria mais fácil fazer uma "muleta" - uma variável externa, onde escrever a nova data no início da nova semana e substituí-la no endereço de consulta à mão
 
alexx_v:

Não, não, não...

Acho que é isso que devemos fazer, senão lemos os dados e os escrevemos no news.csv, e depois tentamos ler no Calendar-08-01-2010.csv, mas será que os salvamos em algum lugar?
Não é assim que funciona, foi assim que comecei :)
 
alexx_v:
Aí, é bom que eu tenha perdido ). Pois acho que não vale a pena mudar, porque agora seria mais fácil fazer uma "muleta" - uma variável externa, onde escrever a nova data no início da nova semana e substituí-la no endereço de consulta à mão
Sim, provavelmente a opção mais fácil.
 
Abzasc:
Não é assim que funciona, foi onde eu comecei :)
Hmm. Notícias retornadas.csv - reiniciadas - funcionou... Maravilhoso :)
 

aqui vamos nós:

extern string кастыль= "08-01-2010";

e o endereço de consulta de acordo:

str = ReadWebPage("http://cdn.dailyfx.com/files/Calendar-"+кастыль+".csv?week=&sort=dateDesc&timezone=&currency=|&importance=|&time="+curr_time);

parece estar funcionando, desde que consigamos sobreviver com isto.

---

Agora ele está fazendo todas as notícias para todas as moedas, o velho filtro não está funcionando.

Razão: