[SERVICE DESK] Zamanlayıcıda kıdemli TF'nin zamanı alınırken hata oluştu! - sayfa 11

 
Alexey Kozitsyn :

Ne kapanışı? Bir açılış saatine ihtiyacım var...

Son çubuğun açılış saatini kontrol etmek için her yerde çekleriniz var, böylece anladınız. Terminali açtıktan hemen sonra, çubuk henüz OnInit'te oluşmadı.

 
Konstantin Nikitin :

Son çubuğun açılış saatini kontrol etmek için her yerde çekleriniz var, böylece anladınız. Terminali açtıktan hemen sonra, çubuk henüz OnInit'te oluşmadı.

...yorum yok, seninle görüşmeyi bitirdim.

 
Alexey Kozitsyn :

Soru! Sunucuyla bağlantı kurulduktan sonra neden önceki verileri veriyor, OnInit()'te bir veri ön talebi vardı, CheckCurren..() işlevlerinin her birinde veri yükleme kontrolü yapıldı. Her şeyin yolunda gitmesi için kaç tane, kahretsin, kontrol yapılması gerekiyor ...

Çok sayıda sembol ve nokta vardır, eğer terminal uzun süre çevrimdışıysa, çok fazla veri indirmeniz gerekir.
İnternetin ve aracının sunucusunun hızına bağlı olan bu indirmeyi beklememek için, terminal hemen önceki verileri görüntüler.
Zaten stokta olanlar.

Bu nedenle, bu bir "koltuk değneği çözümü" değil, son mumun yüklenmesinin gerekli bir kontrolüdür.

not. Gelecekte yeni bir çubuğun görünümünü nasıl kontrol edersiniz?

 
Taras Slobodyanik :

Çok sayıda sembol ve nokta vardır, eğer terminal uzun süre çevrimdışıysa, çok fazla veri indirmeniz gerekir.
İnternetin ve aracının sunucusunun hızına bağlı olan bu indirmeyi beklememek için, terminal hemen önceki verileri görüntüler.
Zaten stokta olanlar.

Bu nedenle, bu bir "koltuk değneği çözümü" değil, son mumun yüklenmesinin gerekli bir kontrolüdür.

Mantık sorununu hissediyor musun? Geçmiş henüz yüklenmediyse, "bir şey" yazdırıp veriler güncellenene kadar beklememe izin verin. Ve verilerin doğru olup olmadığına bakma...

Artı, terminal 5-10 dakika çevrimdışı olsa bile - aynı saçmalık. Veri penceresinde sadece 3 karakter olsa bile - aynı saçmalık. Tüm kontroller karşılandı - aynı saçmalık.

Geliştiricilerin doğru yüklemeyle ilgili tavsiyelerinin ÇALIŞMADIĞINI anlıyorsunuz. Bu sana bir şey söylemiyor mu?

 
Şimdi 1126 güncellemesi MQDemo'ya geldi... Pazartesi günü bu sürümde tekrar kontrol edeceğim.
 
Alexey Kozitsyn :

Mantık sorununu hissediyor musun? Geçmiş henüz yüklenmediyse, "bir şey" yazdırıp veriler güncellenene kadar beklememe izin verin. Ve verilerin doğru olup olmadığına bakma...

Bu mantık sadece karakterin ilk çalıştırma-açılışındadır.
Terminal daha fazla mum olup olmayacağını bilmiyor, olanı veriyor.

Sonra son mum belirir.

 
Taras Slobodyanik :

Bu mantık sadece sembolün ilk çalıştırma-açılışındadır.
Terminal daha fazla mum olup olmayacağını bilmiyor, olanı veriyor.

Sonra son mum belirir.

Gönderim güncellendi.

Söylesene, bu tür nüansları bulmak için her seferinde saatlerce çalışmak mı istiyorsun, yoksa belgeleri bir kez okuyup her şeyi anlamak mı istiyorsun? "Ön yüklemeler" ile uğraşmak mı istiyorsunuz yoksa veriler henüz güncellenmemişse bir hata mı almak istiyorsunuz?

 
Taras Slobodyanik :

Bu arada, hangi terminal sürümüne sahipsiniz?

 
Taras Slobodyanik :

not. Gelecekte yeni bir çubuğun görünümünü nasıl kontrol edersiniz?

 //+------------------------------------------------------------------+
//| Проверяем образование нового часа                                |
//+------------------------------------------------------------------+
bool CheckNewHour()     
        {
         //--- Сбрасываем код последней ошибки
         ResetLastError ();
         //--- Получаем время открытия текущего часа
         const datetime hOpenTime = iTime ( _Symbol , PERIOD_H1 , 0 );
         //--- Проверяем корректность полученного времени
         if ( hOpenTime == 0 || GetLastError () != 0 )             // Если возникла ошибка или время не получено
                 return ( false );                                                                               // Возвращаем ложь
         //--- Сравниваем полученное время с сохраненным
         if ( hOpenTime == _hourOpenTime )                                       // Если время совпадает
                 return ( false );                                                                               // Возвращаем ложь
         //--- Запоминаем время нового часа
         _hourOpenTime = hOpenTime;
         //--- Возвращаем истину
         return ( true );
        }
 

Bir sorun görmüyorum, yeni bir mum ortaya çıktı - göstergenin / danışmanın son mumunu yeniden hesaplıyoruz.
Birden fazla yeni mum ortaya çıktı - göstergenin / danışmanın tam bir yeniden hesaplamasını yapıyoruz.
Aynı - yeni bir mum belirir.

Yine de - güncellenmeleri için gerekli sürelerin sürekli olarak "çekilmesi" gerekir.
Nokta sembolü üzerinde kimse çalışmıyorsa (tırnak işaretleri kontrol edilmez, gösterge çalışmıyor), o zaman gereksiz olduğu düşünüldüğü için "uykuya dalar".