Не удаляются данные с даты автоопроса

Версия ЛЭРС УЧЁТ: 3.50.2
Сервер БД: SQL Server

Включил опцию “удалять данные с начала даты автоопроса”

Нужно перезаписать данные в точке, была не правильная настройка.

Ожидал, что повторно поставив на автоопрос точку, я получу новые данные. Но ничего не вышло.

1. Автоопрос назначил через групповую операцию “изменение параметров”

2 Настройки автоопроса. Ожидаемая дата начала перезаписи - 1 ноября 2022.

3 В системном журнале отразились мои действия. Начало нового автоопроса 17:12

4 Но первый сеанс после нового расписания не очистил данные и не начал опрашивать с 01/11/2022.

Это ошибка или я что-то делаю не так?

Уточните, пожалуйста, вы устанавливали точку учета на автоопрос? Или вы изменяли существующие настройки автоопроса? Другими словами рассматриваемая точка учета стояла на автоопросе во время запуска групповой операции или нет?


Я привел это скриншот в первом сообщении. Разве он не отвечает на ваш вопрос?
По этому логу из системного журнала видно что ЛЭРС снял и поставил на автоопрос (это изображение тоже есть в 1 посте)

Могу добавить, что до моих действий точка стояла на автоопросе.

Попробуйте снять рассматриваемою точку учета с автоопроса через ее свойства, сохранив изменения, а затем поставьте ее на автоопрос опять же через свойства, сохранив изменения. Уточните, пожалуйста, удалятся ли данные после этого?

Я уже решил вопрос:

  • удалил данные
  • снял с опроса
  • поставил на опрос

В таком порядке не используется заявленная особенность - возможность очистки данных с даты автоопроса.

Я обнаружил, что новое изменение не работает и описал это. Предложенный Вами эксперимент Вы можете сделать на своей системе.

Если точка учёта уже стояла на автоопросе и параметры обновляются, данные не будут удалены. Похоже, что именно это вы и сделали.

Да, стояла. Вроде ничего не меняется из-за этого.

Месяца два назад, Вы же Антон мне пояснили, что можно не снимать с автоопроса, чтобы применить новые параметры автоопроса. И я так и действовал.
В этот раз проверил по журналу.

.Все работало. Вроде не нужно устраивать “танцев с бубнами”, чтобы применить новые правила автоопроса.

Оказывается нужно танцевать?

В чем смысл?

Честно говоря, не совсем понял ваше сообщение. В чём именно заключается вопрос?

Данные не удаляются если точка уже стоит на опросе и вы просто меняете её параметры. Так сделали для того, чтобы случайно не удалить данные для точек, которые уже опрашиваются.

То, что в системном журнале пишется две записи это не совсем верно, но по-другому сделать трудно, так как фактически система так и работает. Если ТУ стоит на опросе, этот факт система запоминает, снимает с опроса, ставит заново. И удаляет данные только если ТУ ещё не стояла на опросе.

Поясняю.

Данные автоопроса меняются не часто. Но один из самых частых случаев, в моей практике, это переопросить данные со более ранней даты. Причины переопроса разные: сбой в приборе, изменение настройки прибора учета, сбой при обмене из-за которого не снялись данные, сбой ЛЭРСа и т.п.
Внести изменения о возможности переопроса данных, с даты начала автоопроса была моя инициатива, т.к. это сильно упрощало работу. [10065] При постановке на автоопрос имеющиеся данные не очищаются и не заменяютмя Ну и из описанного Вами изменения, в этой теме, не следовало доп.защиты от перезаписи.

  1. Не совсем понимаю, почем Вы пишете об удалении. Вы ведь перезаписываете данные? Т.е. делаете запрос данных с заменой. Если так, то почему есть риск “удалить данные для точек, которые уже опрашиваются”? Ведь не может быть ситуации, что данные удалились, а новых не появилось?
  2. Риск “удалить данные для точек, которые уже опрашиваются” есть если действовать не по-умолчанию, а осознанно выставить опцию “удалять данные с начала даты автоопроса”, и при настройке автоопроса осознанно выставить новую дату опроса. Эти действия не похожи на случайные.
  3. У вас в интерфейсе нет возможности изменить дату начала автоопроса, кроме как удалить расписание автоопроса и создать заново. Поэтому термины “параметры обновляются” и “просто меняете её параметры” до этой переписки были не применимы к дате начала автоопроса. О такой “фиче” знаете только Вы. Получается эта новая скрытая возможность? А зачем менять дату начала автоопроса у расписания, если не с целью опроса с этой даты?

Ну на мой взгляд это очень плохо. Ввести операции “изменение параметров автоопроса” и “добавить расписание автоопроса”, сделать опцию “удалять данные с начала даты автоопроса”. При описании использовать определения: “параметры обновляются”, “просто меняете её параметры”, “система запоминает, снимает с опроса, ставит заново”, “изменение существующих настроек автоопроса”, а в журнале писать “снята с опроса” и “поставлена на автоопрос”.

А т.к. “добавить расписание автоопроса” - это вроде про 2 и более расписание автоопроса, то все что я написал выше про команду “изменение параметров автоопроса”.

Тут как бы Вы не запутались, про пользователя уже молчу :slight_smile:

Не призываю изменить запись в журнале, но не вижу необходимости в дополнительной защите.

П.С. Предполагаю в журнале опечатка. Точка ставится на автоопроса, но почему-то снимется с опроса

  1. В вашем предложении речь шла именно об удалении данных, начиная с постановки на автоопрос. То есть этот параметр действует именно при постановке точки учета на автоопрос и данные именно удаляются во время постановки на автоопрос.
  2. При изменении параметров автоопроса, как в вашем случае, данные не удаляются как раз потому, что есть риск случайного удаления данных, когда пользователь просто решил изменить параметры автоопроса.
  3. Удаление данных в рамках функционала по опции “удалять данные с начала даты автоопроса” произойдет при постановке точки учета на автоопрос. При изменении существующих параметров автоопроса удаления не произойдет. В данном случае все предельно открыто.

В вашем случае вам нужно сначала выполнить групповую операцию снятия точек с автоопроса, а затем групповую операцию постановки на автоопрос этих же точек.

Удивлен. Даже посмотрел специально тему. Слово “удалить” использовал там Антон, я уже дальше комментировал его предложение. Но я писал всегда с точки зрения замены старых данных новыми, иными словами переопроса. Да и тема называется соответственно.
Т.е. до Вашего уточнения фраза “Есть предложение - добавить системный параметр для того, чтобы удалять данные, начиная с постановки на автоопрос” для меня звучит как чтение данных с заменой с даты постановки на автоопрос. Идея: удалять данные и только потом пытаться их получить с прибора, мне в голову не приходило.

И если ЛЭРС реально удаляет данные, а потом займется установкой связи с приборов и получением данных, то это проблема. И Ваша защита тут не помогает никак. Т.к. данные можно не получить из-за неисправности оборудования, проблем со связью и т.д. И случаи, когда данные должны быть сейчас получены, но что-то случается и их нет, возникают регулярно. И предусмотреть это нельзя.

Повторюсь, если Вы сделали именно такой алгоритм, то это очень опасный инструмент. И я им, даже осмысленно, пользоваться не буду. Удалить данные вручную проще и безопаснее. Да и настройка в системных параметрах, работает для всех пользователей.

Печально, но еще один случай, когда каждый слышит и читает, то что хочет :slight_smile:
Нам нужно из этого делать вывод.

Я бы предложил либо вообще убрать эту опцию, либо доработать, чтобы она была безопасной. Иначе такая реализация - потенциальная проблема.

Я предложил, вы согласились с этим предложением, в таком виде оно и было сделано. Честно говоря, не понимаю ваше удивление.

Исходную задачу нельзя был сделать никак кроме удаления данных. Если предлагаете убрать эту опцию, с радостью это сделаю. Удалять код проще, чем его добавлять :smiley:

Как я и написал. В таком виде это опасно.

Ну мне такой вариант не приходил в голову, так как он опасен. И я его даже не рассматривал.

Это и вызвало удивление.

Ну я бы предложил доделать изменение так, чтобы эта опция была безопасна.
В ручном же опросе такое же возможно.

Если можете сделать только так, то лучше удалить, чем объяснять клиенту, почему у него потерялись данные. Ваше изменение не описано в док-ции, интуитивно это не понятно, да и просто и понятно это описать проблематично. Не надо такого

Позволю включиться в ваше обсуждение:
Честно два раза перечитал данную тему с начала и до конца, пытаясь понять что же все таки за функционал появился в системных параметрах в последнем обновлении. И честно говоря так до конца и не понял.
Понял только что если этим функционалом неосторожно воспользоваться - можно потерять данные, которых уже нет в устройстве, с которого производится съем данных (например времени прошло больше, чем глубина архива, либо устройство было заменено на другое).
А например часовые данные за 2-3 года назад иногда бывают нужны, и мы их храним в системе по тем точкам, где это необходимо. Соответственно эти данные есть только в ЛЭРС, и больше нигде.
В связи с этим предлагаю этот функционал или убрать совсем, или убрать его из формы системных параметров куданибудь поглубже вроде конфиг файла сервера (как вы собственно всегда и делаете с неоднозначным функционалом).

Это вроде противоречивое требование.

Вроде Вы хотите что-бы этот функционал не включил, кто по недомыслию и при этом если включил, то это было как-то максимально безопасно.

Тогда если убрать его еще глубже “вроде конфиг файла сервера”, то при необходимости найти концы будет еще сложно, особливо если админ системы уволится.

В моей практике, специально посчитал, с 20-ых чисел сентября порядка 20% систем потеряли ответственных лиц. Считал только значимые системы.

Мне жаль труд разработчиков, которые пилили фичу, а потом это оказалось не совсем то, что требовалось :grinning:
Отсюда и предложение не удалять совсем.

Действительно если настройка будет находится в конфиг файле - никто кроме того, кто её туда прописал знать о ней не будет, что тоже опасно в какой то степени…

Я же его прямым текстом предложил.

Ручной опрос работает по-другому. Перезаписывать можно только все данные в рамках одного задания на опрос (ручного или автоматического). Сейчас нет возможности сказать “вот тут сначала перезапиши, а потом уже не перезаписывай”. Единственный способ это сделать без больших трудозатрат - это удалить данные при постановке на автоопрос.

Если эта функция опасна, могу только порекомендовать ей не пользоваться. К сожалению, сейчас я не смогу предложить другого способа сделать такую функции, который не растянется на годы работ.

Как я уже писал. Для меня фраза “Есть предложение - добавить системный параметр для того, чтобы удалять данные, начиная с постановки на автоопрос” не содержит реализованного алгоритма.

Иногда Вы склонны упрощать фразы, к сожалению. И сейчас я бы попросил Вас уточнить что значит “… удалять данные, начиная с постановки на автоопрос

Впредь - наука мне.