1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

WinCC 7.X доступ к архивным данных

Ответить

Автор темы
sKolpaschikov
Сообщения: 2
Зарегистрирован: 26 дек 2015, 05:46
Имя: Колпащиков Сергей Александрович
Страна: Россия
город/регион: Самара

WinCC 7.X доступ к архивным данных

Сообщение sKolpaschikov »

Добрый день,

Есть проект на WinCC 5.X, в котором осуществляется доступ к архивам по функциям ODK (из pdertcli.h - TLGGetArchivedata, TLGInsertArchiveData) и через базу данных.
Через базу данных осуществлялось удаление записей из архивов (PDE#...). Функция удаления редко вызываемая, но обязательная для реализации в проекте.

Решаем задачу переноса функционала на 7.Х.
По функциям ODK вопросов нет (Добавить запись, считать данные).

А вот как удалить значение из архива не понятно. (ODK и ранее не поддерживало функции удаления данных из архива), а
описание на WinCC OLEDB Provider (заменитель работы через базу) содержит только запрос на получение данных по openquery, изменение данных не описано.

Есть ли у кого-то такой опыт или где-то читал?

Заранее спасибо.
Аватара пользователя

DelSnos
не первый раз у нас
не первый раз у нас
Сообщения: 323
Зарегистрирован: 26 сен 2010, 10:18
Имя: Artur
Страна: Russia
Поблагодарили: 2 раза

Re: WinCC 7.X доступ к архивным данных

Сообщение DelSnos »

WinCC OLEDB Provider вещь довольно глючная... В свое время пришлось оказаться от нее. Однако, с задачей удаления данных, после выборки, не сталкивался (если я вас правильно понял).
А зачем удалять данные с базы? Это же архив- он должен храниться допустимое время :).Пусть данные пишутся, а циклический алгоритм архивации данных сам затрет их, либо по условию времени, либо по превышению выставленного размера сегментов.
Ну ок, можно еще подумать, как выставлять признак окончания выборки данных, который в свою очередь, будет запускать специальный запрос в БД на удаление нужных данных с селекцией по времени...

Автор темы
sKolpaschikov
Сообщения: 2
Зарегистрирован: 26 дек 2015, 05:46
Имя: Колпащиков Сергей Александрович
Страна: Россия
город/регион: Самара

WinCC 7.X доступ к архивным данных

Сообщение sKolpaschikov »

Наверное я витиевато объяснил - нужно править данные в архиве... периодическом архиве с периодом 1 час (ведомость работы оборудования)

Текущий вариант системы автоматически формирует часовые архивы (есть и другие, но к этой задаче они не имеют отношения).
Иногда есть проблемы с датчиками и в этом случае данные в часовой архив автоматически не пишутся (оператор устанавливает признак неисправности и запись отключается). Есть софт самописный который позволяет вручную вносить, (ну и поскольку работает человек, а он имеет свойство ошибаться) исправлять и удалять данные в часовом архиве. Ручной ввод, правка и удаление в WinCC 5 осуществлялись прямой работой с таблицей архива через SQL.
Этот самый софт и пытаемся притянут к WinCC 7.X.

Из самописного софта при работе с WinCC 7.X добавить значение можно через ODK, показать какое значение на данный час введено можно через ODK или WinCC OLEDB Provider. А вот как удалить уже записанное значение? Исправить (в принципе достаточно удалить)?
Аватара пользователя

DelSnos
не первый раз у нас
не первый раз у нас
Сообщения: 323
Зарегистрирован: 26 сен 2010, 10:18
Имя: Artur
Страна: Russia
Поблагодарили: 2 раза

WinCC 7.X доступ к архивным данных

Сообщение DelSnos »

Ручной ввод, правка и удаление в WinCC 5 осуществлялись прямой работой с таблицей архива через SQL.
Этот самый софт и пытаемся притянут к WinCC 7.X.
В WinCC 5 использовалась БД Sybase SQL Anywhere, наверное, поэтому приложение и не работает с версией MS SQL 2005, которая идет с WinCC 7.0.
Из самописного софта при работе с WinCC 7.X добавить значение можно через ODK, показать какое значение на данный час введено можно через ODK или WinCC OLEDB Provider. А вот как удалить уже записанное значение? Исправить (в принципе достаточно удалить)?
Я бы написал свой .net Control и "вживил" бы его в толстый клиент, а вот в нем уже можно делать, что угодно с БД. Своего рода отдельное приложение для отчета.

Andrey777
здесь недавно
здесь недавно
Сообщения: 12
Зарегистрирован: 11 авг 2016, 10:30
Имя: Казанцев Андрей Николаевич
Страна: Россия
город/регион: Москва
Благодарил (а): 1 раз

WinCC 7.X доступ к архивным данных

Сообщение Andrey777 »

Добрый день.
Как перетащить архив(тренды) с одной машины на другую, с одинаковым ПО и WinCC 12 pro, чтобы их воспроизвести. архив это графики, которые пишутся в реальном времени
Ответить

Вернуться в «WinCC»