Показать сообщение отдельно
  #4  
Старый 16.02.2016, 14:27
-=#PupaJr#=- -=#PupaJr#=- вне форума
Новичок
 
Регистрация: 17.08.2010
Сообщения: 69
Репутация: 518
По умолчанию

У меня так и сделано на форме - один DDEClientConv и пять штук DdeClientItem1 и все привязаны на один интерфейс/сервис/топик но итемы как и положено разные.
Многострочные принять пока не могу - не знаю как сделать запрос многострочный, вроде делается через массив.
Фирменная утилита контроля DDE обмена показывает разделитель [|] так. Пробывал подставлять - не понимает сервер запроса и вообще никак не реагирует на него (((.
Устройство в принципе одно ЧПУ и вся информация для HMI/приводов передаётся с помощью BTSS переменных, которые являются итемами.

Сегодня пробывал через ОРС интерфейс (не на прямую DDE)- создаю группу, указываю итем и всё работает, CallBack и AdviceCallBack тоже работают, информацию получаю, в принципе то что нужно, но при записи в группу нескольких итемов CallBackOnChange вызывается каждый раз при смене параметра в группе ДВА раза, при этом в процедуре обработки НЕТ информации какой именно итем сейчас обрабатывается, может
лежит эта инфа в какой-то глобальной переменной - но я не нашёл.
Делфи OPCUtils скачал с открытого сайта.

Вообще Siemens рекомендует использовать VisualBasic, но от него меня тошнит ))) корявый интерфейс, нет хелпа и пр...

Интересно ещё то, что при проверке на ПК работает а на ЧПУ вылазят глюки иногда - видимо сказывается перегруженность запросов DDE

Во вложении проект. 1Мб . Естественно без сервиса работать не будет, но прошу просмотреть правильность задания условий/чтений/запросов/записей, короче саму идеологию работы с DDE и ОРС, может ФРИШНЫЙ компанент ОРС косячный и недоделанный.
Вложения
Тип файла: rar test_spindle.rar (1.02 Мбайт, 3 просмотров)
Ответить с цитированием