У меня есть RTD-сервер, который получает значения из источника в реальном времени. Проблема в том, что у пользователей есть довольно большие листы excel, близкие к 20 000 формулам RTD. Поэтому, когда пользователь открывает лист, все формулы RTD увольняются, что приводит к отправке 20 000 запросов на сервер. Это работает пока, но сервер может работать намного лучше, если я могу сгруппировать запросы и отправить их на сервер.Как объединить все вызовы RTD при запуске excel?
Моя идея состояла в том, чтобы поддерживать флаг. Когда начнется вычисление, флаг будет установлен на false, а когда закончится вычисление, я смогу его сбросить. Когда вызывается формула RTD, если флаг не установлен, я не буду отправлять запрос на RTD-сервер, а пул его. Когда для флага установлено значение true, я могу комбинировать объединенные запросы и отправлять их на сервер.
Я не уверен, как получить уведомление, когда Excel начинается и останавливается. Пожалуйста помоги. Также, если вы знаете какой-либо другой подход для решения этой проблемы, было бы здорово. Я использую Excel 2007, C# 3.5
Пожалуйста, помогите. Большое спасибо. Rashmi
Спасибо,
Расчет Поскольку RTD обновляет данные, когда Excel находится в режиме ожидания, он продолжает получать информацию, если Excel находится в режиме ручных вычислений. В этом случае новые данные кэшируются, а текущие значения используются, когда выполняется ручной расчет. – 2010-11-27 04:02:50