Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version » Ошибка Calc loop is big

   
Автор / Author Тема / Topic: Ошибка Calc loop is big
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте!
Я создал проекта по вашему примеру из 5-го занятия "Учебный проект. Создания SQL-запроса для работы с внешней реляционной базой данных", я его изменил так, что бы значения записывались постоянно, записывает он данные с генератора синусоиды. Вопросы следующие:
1) При записи в Access интервал записи всегда разный, от полу минуты, до 7 минут и на оборот, почему так?
2) Лог проекта выдает ошибку Calc loop is big через минут 10 работы проекта, проект от этого не завершается, а продолжает нормально работать, может быть эта причина разного интервала записи и как это исправить?

Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Для SQL-эапросов период пересчета idle. ТМ не предназначен для быстрой записи в базы данных. Необходимо контролировать окончание запроса и только после этого инициировать следующий.

[ 08.06.2012, 13:34: Сообщение отредактировал / Message edited by AdAstra Technical Support ]

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В какое поле узла RTM выстовлять период пересчета idle?
Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Нужно открыть канал вызова SQL-запроса на редактирование и в качестве единицы периода пересчета выставить "цикл IDLE".
Сообщения / Posts 17114 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Теперь попробовал перенести ваш пример создания базы данных в свой проект и в новосозданную базу данных нечего не вносится, не знаю что делать. Лог трассировщика прилогаю http://narod.ru/disk/52687763001.18f82740e8925c2af2a7b107ff9bf0a0/SQL.LOG.html
Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Так же если пройти в базу данных access и ввести любое значения вручную, то видно, что инентификатор изменился в соотведствии с количеством отправленных запросов. Получается что запрос проходит, но нечего не вводит в базу
Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Проект в МРВ работает, но сигнала от ком порта не получает так, как сейчас нет возможности подключить программу в месте применения. Запустил проект и вручную изменил все входные параметры с датчиков, значения в базу данных записались. Может быть так, что из-за отсутствия сигнала от ком порта значения в базу данных не записываются или же из-за настроек множителя и смещения в минусовое значение в каналах привязанных к базе данных?
Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В файле трассировщика ошибка несоответствия типа данных.

Вероятней всего проблема в различие разделителе дробной и целой части числа в базе данных и Trace Mode. В Trace Mode в качестве разделителя используется точка. Убедитесь, что в базе данных разделителем тоже является точка.

Сообщения / Posts 17114 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо, помогло.

И появился еще один вопрос, как ограничить количество записей в базу данных? Нужно что бы после записи допустим id=65536, значения в базу данных прекращались записываться, а просто обновляли старые записи, все как в СПАД архиве или есть другие варианты?

Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
после достижения нужного числа записей(INSERT)
работать через другой SQL шаблон (UPDATE)

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
И все таки не пойму как этого добиться. Запись в базу данных при достяжении определенного числа записей остановить удалось.
Запустить обновления вроде как тоже удалось, но не работает, шаблон такой:

UPDATE tab1
SET
mktime=#mktime#,
pila=#Пила_1_R#,
sinus=#Синусоида_3_R#,
treug=#Треугольник_2_R#

Для всего этого используется 2 канала вызова базы данных и опять стало вылазить сообщение Calc loop is big

Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
а какая запись в базе при этом обновися ?
Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
да по плану старые по порядку дожны начать обновляться
Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
если mktime - это время текущей записи
где указание какую запись нужно обновить

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Мне нужно что бы обновлялась каждая запись по порядку при подачи запроса на обновления, нет смысла обновлять одну строчку или одно значение
Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
может ошибаюсь а WHERE где ?
Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Константинов Сергей
Junior Member / Новичок
Участник № / Member № 5626


Icon 1 отправлено / posted      Профиль для / Profile for Константинов Сергей           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
функция WHERE в том что бы сузить круг изменений производимых функцией UPDATE, т.е. допустим
моя функция:

UPDATE tab1
SET
mktime='#mktime#',
pila='#Пила_1_R#',
sinus='#Синусоида_3_R#',
treug='#Треугольник_2_R#'

обновит все что косается выше перечисленных полей, а функция:

UPDATE tab1
SET
mktime='#mktime#',
pila='#Пила_1_R#',
sinus='#Синусоида_3_R#',
treug='#Треугольник_2_R#'
WHERE
pila=5

обновит только те поля где будут совпадения колонки pila со значением 5.

Я же в свою очаредь приследую такую цель:
Нужно произвести запись в базу данных за неделю с интервалом между записью в 1 минуту итого 10080 записей за недель. После достижения 10080 строк нужно прекратить записывать новые, а начать обновлять старые и так в цикле.
Остановить запись мне удалось, обнавить старые данные тоже удалось, но обнавление проходит криво. Вместо обновления одной строки по порядку с каждым запросом, происходит одновременное обновления всех строк итого во всех 10080 записях одно и тоже время и значения.

Вопрос в следующем как правильно составить запрос на обновления или же какой другой вариант есть по реализации данной задачи

Сообщения / Posts 25 | Из / From: Казахстан  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
сами же себе ответили
UPDATE tab1
SET
mktime='#mktime#',
pila='#Пила_1_R#',
sinus='#Синусоида_3_R#',
treug='#Треугольник_2_R#'

обновит все что косается выше перечисленных полей, во всех записях

1.
Проще всегда INSERT и иногда вызывать DELETE (старые по времени)
2 или иметь номер записи = F(time) и UPDATE по нему
3 Да и INSERT не нужен при старте создать недостоверные записи и только UPDATE

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2