Тема / Topic: Call.Writer Принудительная запись в архив.
ETM
Junior Member / Новичок
Участник № / Member № 5807
отправлено / posted
Здравствуйте. Подскажите, пожалуйста. Накапливаю в контроллере массив значений с меткой времени и передаю построчно в Трейс Моуд (при обрыве связи). Создала канал Call.Writer с параметром 3 (4 тоже пробовали), создала программу для передачи значений:
if Буффер_пуст_R==0 then CALL_15_R:=1; CALL_15_ARG01:=0; CALL_15_ARG00:=Дата_Время_Формат_R; end_if;
END_PROGRAM Вопрос 1: Что такое Аргумент 1 у канала Call.Writer и что туда надо передавать. Я так поняла, нужно только передавать номер СПАД архива (в реальное) и метку времени (в аргумент 0)? Вопрос 2: Приведенная программа не работает, при пересылке значений они записываются с текущей меткой времени, а в период, когда не было связи в контроллером (именно в этот период должны дозаписываться данные), на тренде отображается недостоверность канала.
Сообщения / Posts 4 | Из / From: Украина
| IP / IP: IP адрес / IP address |
ETM
Junior Member / Новичок
Участник № / Member № 5807
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342
отправлено / posted
1)если разность между Call.Writer.arg0 и 45 атрибутом канала с архивом=Call.Writer.R больше Call.Writer.arg1 то записать значение канала в архив с меткой времени=Call.Writer.arg0 2)можно и не одним способом
Сообщения / Posts 879 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. В режимах 3 и 4 с помощью канала WRITER осуществляется запись в выбранный архив ТЕКУЩИХ ЗНАЧЕНИЙ ВСЕХ КАНАЛОВ, для которых выполняется условие Writer.arg0 – <канал>.T > Writer.arg1.
2. Чтобы выдать рекомендации по записи в СПАД данных за прошедшее время, надо более точно представлять себе задачу. Обратитесь, пожалуйста, в службу техподдержки (hotline@adastra.ru) с более полным изложением задачи.
Сообщения / Posts 17336 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ETM
Junior Member / Новичок
Участник № / Member № 5807
отправлено / posted
Да, я поняла, однако 45 атрибут канала - это время его изменения. То есть, если при восстановлении связи я буду в канал последовательно передавать его старые значения, они никогда не запишутся со старой меткой времени, так как Call.Writer.arg0 - это время, например, за вчера, а <канал>.T - это сейчас(так как я сейчас передала его значение), и разность никогда не будет больше нуля.
Сообщения / Posts 4 | Из / From: Украина
| IP / IP: IP адрес / IP address |
отправлено / posted
По результатам анализа уточненной задачи по почте переданы рекомендации по способу восстановления информации.
Сообщения / Posts 17336 | Из / From: Россия
| IP / IP: IP адрес / IP address |