This is topic Интервал выборки из архива in forum SIAD/SQL. Архивирование в TRACE MODE / SIAD/SQL. Data Logging in TRACE MODE at Форум TRACE MODE: техническая поддержка.
Здравствуйте. Имеется системная переменная @Data_from_SIAD привязанная к каналу. Параметр настроен на SIAD2. Как мне организовать выборку с интервалом типа 27 (27 – OFFSET секунд от текущего времени . Тоесть я на вход даю 27, а как задать этот самый OFFSET в секундах? С остальными интервалами вроде понятно, дали на вход например 13 и получили текстовой файл с параметрами с начала суток, а здесь как? Заранее спасибо.
Posted by Майборода Алексей (Участник № / Member № 1701) on :
Ну вроде разобрались. В аппаратное надо записывать OFFSET правильно? Только пишу я туда 120 тоесть 2 минуты, а в итоге получаю файлв котором больше 2х минут. Поясните пожалуйста как выбрать из архива все данные за например два месяца назад по текущее время?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Это описано в теме "Временной интервал выборки" - OFFSET, есть аппаратное значение канала.
Posted by Дмитрий Юрьевич М. (Участник № / Member № 1930) on :
Алексей, не могли бы Вы подсказать... Что то не пашет @Data_from_SIAD. Явно от кривых рук.
Я подаю в значение VALUE этой переменной (посредством привязки к некоторому каналу) некоторую величину (ну пусть это будет даже 0, тогда в соответствии со спецификацией младший байт = 0, значит выборка за последний час, snap=0, a=0, b=0) - всё валидно, файл хотя бы должен создаться! Но он не создаётся . Что не так? Может я неверно настроил младший байт, временной интервал?
В общем, может кто-нибудь дать совет, в чём я заблуждаюсь? И можно ли задать этой @Data_from_SIAD OFFSET или нет?
Posted by Майборода Алексей (Участник № / Member № 1701) on :
Здравствуйте. Если передавать 0 то у вас ничего не получится, в TM если в канале задано число и мы пытаемся опять задать это же самое число то реакция нулевая (видимо это особенность такая) поэтому на 0 не реагирует. А вот если передать например 13 то все нормально. Главное подождать минимум 300 секунд чтобы данные скинулись в архив (это время задается в редакторе узла). А offset задается посредством записи нужного значения в "Аппаратное значение" канала. Могу выслать тестовый проектик, только что сделал, проверил, у меня все работает.
Posted by Дмитрий Юрьевич М. (Участник № / Member № 1930) on :
Я побился ещё n минут/часов, и, видимо, просто чего-то не понимаю. Алексей, пришлите, пожалуйста, ваш тестовый проектик (primat (at) ergosolo.ru).
И ещё, мог бы мне кто-нибудь пояснить следующие вещи: 1) в хелпе есть отсыл к утилите SIAD_util.exe. Где её можно найти/скачать? Ибо её просто нет. 2) в хелпе сказано, что добавив в тренде график канала, значения которого архивируются, при запуске там отобразятся и значения из архива. Не выходит! Отображаются значения только полученные после старта монитора. Может, это признак того, что я что-то делаю не так? 3) А что происходит в течение этих 300 секунд до того, как данные скидываются в архив? А если комп вырубится, данные пропадут совсем?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
1. Из документации "В состав регистратора TRACE MODE 6 входит утилита SIAD_Util.exe". В ИС и МРВ этой утилиты нет. Однако профайлер без поддержки графической базы RTMG32.EXE может осуществлять экспорт данных из архива в текстовый файл (см. "Экспорт с помощью профайлера"). 2. Отображение архивных данных на тренде (если эти данные в архиве имеются) определяется размером буфера тренда (задается при настройках тренда) и видимым диапазоном временной шкалы. Если буфер мал, а диапазон временной шкалы соответствует временному диапазону буфера реального времени, то архивные данные не будут отображаться. 3. Поток записей в СПАД буферизируется дважды - кэшируется внутри сервера и передается затем в буферизированный поток ОС. При остановке МРВ все потоки закрываются корректно и потерь данных не будет. Если ПК "вырубится", данные незакрытых потоков будут потеряны. Файл архива сохранится неповрежденным. 4. В @Data_from_SIAD OFFSET передать нельзя.