Создание модели: вопрсы и ответы.
Первый опыт, создание модели по HELP'у. При построении куча ошибок с жалобами на include файлы типа:
Error E2015 C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h 70: Ambiguity between 'clOPC::tQuality::tQuality(unsigned short) at C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h:61' and 'clOPC::tQuality::tQuality(bool) at C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h:62' in function clOPC::tQualityS::tQualityS()
Всего ошибок 20 штук и в Borland C ver. 6 и в BDE.
Error E2015 C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h 70: Ambiguity between 'clOPC::tQuality::tQuality(unsigned short) at C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h:61' and 'clOPC::tQuality::tQuality(bool) at C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h:62' in function clOPC::tQualityS::tQualityS()
Всего ошибок 20 штук и в Borland C ver. 6 и в BDE.
-
- Сообщения: 108
- Зарегистрирован: 15 мар 2007, 14:56
- Откуда: Компания ДЭП
Б.Е.Г. писал(а):Первый опыт, создание модели по HELP'у. При построении куча ошибок с жалобами на include файлы типа:
Error E2015 C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h 70: Ambiguity between 'clOPC::tQuality::tQuality(unsigned short) at C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h:61' and 'clOPC::tQuality::tQuality(bool) at C:\PROGRA~1\DEP\MODELB~1\INCLUDE\clOPC.h:62' in function clOPC::tQualityS::tQualityS()
Всего ошибок 20 штук и в Borland C ver. 6 и в BDE.
Видимо у Вас установлен дистрибутив "Конструктора модели" в котором была такая ошибка. Скачайте последнюю версию http://www.dep.ru/downloads/soft/Instal ... 1.4.16.exe
Б.Е.Г. писал(а):После установки Pack 3 в CodeGear должна появиться вкладка DEP.
Это получилось на стационарном компе и на ноутбуке. Но на стационарном вкладка исчезла и повторные установки Pack 3 результата не дали. На ноутбуке осталась. Что делать?
Убедитесь, что у Вас подгружен пакет DepD11D.bpl. Это можно проверить в опциях проекта(в дереве опций нужно выбрать пункт "Packages"). Если не стоит галочка напротив надписи "DEP Custom Components", то ее нужно поставить.
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
kl_alex писал(а):Убедитесь, что у Вас подгружен пакет DepD11D.bpl. Это можно проверить в опциях проекта(в дереве опций нужно выбрать пункт "Packages"). Если не стоит галочка напротив надписи "DEP Custom Components", то ее нужно поставить.
В пункте "Packages" опций проекта в CodeGear нет опции "DEP Custom Components" или к.л. ссылок на DEP. В компьютере нет файла DepD11D.bpl.
Поставил новую версию с сайта, все то же.
Последний раз редактировалось Б.Е.Г. 06 июл 2009, 15:35, всего редактировалось 1 раз.
Б.Е.Г. писал(а):В пункте "Packages" опций проекта в CodeGear нет опции "DEP Custom Components" или к.л. ссылок на DEP. В компьютере нет файла DepD11D.bpl.
Поставил новую версию с сайта, все то же.
Возможно требуется найти файл DepD12D.bpl, если Вы используете CodeGear RAD Studio 2009, для 2007 - DepD11D.bpl. Если совсем ничего не получается, удалите depComponentsPack 3.0 и снова установите.
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Б.Е.Г. писал(а):После установки Pack 3 в CodeGear должна появиться вкладка DEP.
Это получилось на стационарном компе и на ноутбуке. Но на стационарном вкладка исчезла и повторные установки Pack 3 результата не дали. На ноутбуке осталась. Что делать?
Можете точно ответить еще раз: файл DepD11D.bpl присутствует на диске (должен находится в %Program Files%\DEP\Components\depComponentsPack 3.0\BDS2007)?
Вкладка компонентов "DEP" исчезла после каких действий?
Какие компоненты Вам требуются с вкладки "DEP"?
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Пожалуйста, помогите разобраться.
Написал на С блок, в котором фигурируют глобальные переменные,
описанные в Status.glb. Обращение к ним выглядит так:
Status.GlobalItem1.
При сборке, естественно, ошибка: не определены переменные.
Добавил "#include "Status.h". Вылезла куча ошибок типа:
Status.h:44: error: `__LB0B5FPump_C(_tS_FPump_C*)::_t_Status'
uses local type `__LB0B5FPump_C(_tS_FPump_C*)::_t_Status'
Добавил "#include <zilog.h>". Ничего не изменилось.
Примечание:в компоненте имеется еще блок с глобальными
переменными, он ошибок не дает!
Написал на С блок, в котором фигурируют глобальные переменные,
описанные в Status.glb. Обращение к ним выглядит так:
Status.GlobalItem1.
При сборке, естественно, ошибка: не определены переменные.
Добавил "#include "Status.h". Вылезла куча ошибок типа:
Status.h:44: error: `__LB0B5FPump_C(_tS_FPump_C*)::_t_Status'
uses local type `__LB0B5FPump_C(_tS_FPump_C*)::_t_Status'
Добавил "#include <zilog.h>". Ничего не изменилось.
Примечание:в компоненте имеется еще блок с глобальными
переменными, он ошибок не дает!
Добрый день! Вы не правильно делаете. Для того, чтобы использовать глобальную переменную простого типа в С-блоке необходимо:
1)На вкладке "Инфо"->Файлы глобальных переменных добавить Status.glb
2)в блоке status.glb выделить необходимую переменную и кликнув правой кнопкой мыши на "Свойства" задать псевдоним. Это будет то имя, по которому вы будете обращаться в коде С.
Теперь вы можете использовать эту переменную в коде С.
1)На вкладке "Инфо"->Файлы глобальных переменных добавить Status.glb
2)в блоке status.glb выделить необходимую переменную и кликнув правой кнопкой мыши на "Свойства" задать псевдоним. Это будет то имя, по которому вы будете обращаться в коде С.
Теперь вы можете использовать эту переменную в коде С.
Создание модели: вопросы и ответы
Здравствуйте, также первый опыт построения модели по help. После установки Pack 3 в CodeGear RAD Studio 2007 вкладка “DEP” появилась. При создании нового проекта “File->New->VCL Forms Application - C++ Builder” в палитре компонентов возникает вкладка “DEP”, которая содержит следующие компоненты – “TdepSVGPanel, TdepWavePlayer, TdepShape TdepDateTimePanel”. В меню “DEP” становится активным пункт меню “OPC config”. В help в описании примера сказано, что после инсталляции Pack 3 должны появиться две новых закладки в палитре компонентов – “DEP” и “DEP OPC”. Как я понимаю, вкладка “DEP OPC” у меня не появилась. Что бы дальше рассматривать пример необходимо перенести на форму компонент “depOPCDesigner”, которого у меня нет.
Подскажите, пожалуйста, начинающему человеку, как сделать так, чтобы компонент “depOPCDesigner” появился, чтобы иметь возможность дальше рассматривать пример, файл DepD11D.bpl на компьютере есть, в CodeGear опция "DEP Custom Components" есть.
Подскажите, пожалуйста, начинающему человеку, как сделать так, чтобы компонент “depOPCDesigner” появился, чтобы иметь возможность дальше рассматривать пример, файл DepD11D.bpl на компьютере есть, в CodeGear опция "DEP Custom Components" есть.
Создание модели: вопросы и ответы
Спасибо за ответ. Мой ящик mshvp@mail.ru. Буду благодарен.
Создание модели: вопросы и ответы
Получил, большое спасибо.
Help подправили под данную версию компонентов. Нужно загрузить и установить дистрибутив depComponentsPack_RAD_Studio_2007_2009-3.0.282.exe со страницы http://www.dep.ru/page/updating_software/
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Создаю мнемосхему. Для определения цвета элемента схемы мне нужно учитывать значеня трех wdDin.
Я решил обратится к функции лля из анализа:
void __fastcall TForm1::RegCtrl(const AnsiString aFullRelativeOpcName,
TdepOpcListParUserFunc *aListParUserFunc, int aIndexParChange,
bool aAllConnected, bool aAllChanged, Variant &aValue, WORD &aQuality,
bool &aSetProperties)
{
if(aListParUserFunc[1])==0 aIndexParChange=0;
else aIndexParChange=1;
}
//тело функции написано упрощено
Выдана ошибка:
[BCC32 Error] Unit1.cpp(19): E2303 Type name expected
Кроме того хотелось бы знать назаначение всех параметров функции.
Я решил обратится к функции лля из анализа:
void __fastcall TForm1::RegCtrl(const AnsiString aFullRelativeOpcName,
TdepOpcListParUserFunc *aListParUserFunc, int aIndexParChange,
bool aAllConnected, bool aAllChanged, Variant &aValue, WORD &aQuality,
bool &aSetProperties)
{
if(aListParUserFunc[1])==0 aIndexParChange=0;
else aIndexParChange=1;
}
//тело функции написано упрощено
Выдана ошибка:
[BCC32 Error] Unit1.cpp(19): E2303 Type name expected
Кроме того хотелось бы знать назаначение всех параметров функции.
С уважением, Б.Гаврилов
Теплосеть г. Королев.
Теплосеть г. Королев.
В обоих случаях(определение пользовательской функции и доступ к свойствам gOpcApplication), если вы пишите какой-либо код, работающий с нашими компонентами, то требуется включение заголовочного файла depOpc.
Для С++Builder:
#include <depOpc.hpp>
Для Delphi:
uses depOpc;
Для С++Builder:
#include <depOpc.hpp>
Для Delphi:
uses depOpc;
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Александр, здравствуйте.
Опять об использовании функции для привязки в мнемосхеме.
Создал функцию с тремя параметрами (OPC элементы wdDin).
Выдается ошибка о превышении индекса ...Items[3]... (cnt=3).
Если в for ставлю cnt-1, параметры 1 и 2 определяются четко (3-й, естественно, не определяется.
Опять об использовании функции для привязки в мнемосхеме.
Создал функцию с тремя параметрами (OPC элементы wdDin).
void __fastcall TForm1::RegCtrl(const AnsiString aFullRelativeOpcName,
TdepOpcListParUserFunc *aListParUserFunc, int aIndexParChange,
bool aAllConnected, bool aAllChanged, Variant &aValue, WORD &aQuality,
bool &aSetProperties)
{
int cnt,par[4],rez;
cnt=aListParUserFunc->Count;
Label4->Caption=cnt;
for(int i=1;i<=cnt;i++) {
par[i]=aListParUserFunc->Items[i]->Value; }
Label1->Caption=par[1];
Label2->Caption=par[2];
Label3->Caption=par[3];
aValue=0;
}
Выдается ошибка о превышении индекса ...Items[3]... (cnt=3).
Если в for ставлю cnt-1, параметры 1 и 2 определяются четко (3-й, естественно, не определяется.
С уважением, Б.Гаврилов
Теплосеть г. Королев.
Теплосеть г. Королев.
В depComponentsPack3.chm в разделе "Пользовательские функции" написано:
Следовательно, нумерация в списке начинается с нуля.
aListParUserFunc - список объектов класса TdepOpcParUserFunc, в котором находится описание параметров, заданных в редакторе аргументов пользовательской функции, и их текущие значения. Список представляет собой типизированный список класса TList;
Следовательно, нумерация в списке начинается с нуля.
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150
В ОРС имеется тип со свойством wdOUT в виде массива из 4-х элементов.
При привязке кнопки создал 4 действия для соотвктственно 4-х элементовэ
При запуске и нажатии кнопки в 3 адреса записываются, как и положено, "1", а в 4-й НИЧЕГО не записывается. Аналогично при сбросе в "0" лругой кнопкой.
Может кто-нибудь объяснить?
При привязке кнопки создал 4 действия для соотвктственно 4-х элементовэ
При запуске и нажатии кнопки в 3 адреса записываются, как и положено, "1", а в 4-й НИЧЕГО не записывается. Аналогично при сбросе в "0" лругой кнопкой.
Может кто-нибудь объяснить?
С уважением, Б.Гаврилов
Теплосеть г. Королев.
Теплосеть г. Королев.
-
- Сообщения: 108
- Зарегистрирован: 15 мар 2007, 14:56
- Откуда: Компания ДЭП
1. Вопрос по wdAOut.
В help'е:
В программе параметры: wdNoA, int, float, float, float, float, tString
Так откуда запишется в wdNoA цифра?
2. По организации уставок (ввод уставок диспетчером) хотелось бы узнать по-подробнее и по-понятнее, чем в help'е.
В help'е:
Запись аналога с пересчетом осуществляется типом wdAOut. Тип содержит следующие поля:
· No(wdNoD) - Номер элемента в базе.
· Err(iWord) - Код ошибки.
· ErrStr(iString) -Текст ошибки в зависимости от кода Err.
· Type(int) - тип пересчета. По умолчанию 1 – линейный пересчет.
· X1,X2,Y1,Y2(float) - граничные условия. По умолчанию X1=Y1=0, X2=Y2=1.
Если в wdAOut было записано значение или стартовал контроллер Windecont, то оно пересчитывается по параметрам пересчета и записывается в Windecont.
В программе параметры: wdNoA, int, float, float, float, float, tString
Так откуда запишется в wdNoA цифра?
2. По организации уставок (ввод уставок диспетчером) хотелось бы узнать по-подробнее и по-понятнее, чем в help'е.
С уважением, Б.Гаврилов
Теплосеть г. Королев.
Теплосеть г. Королев.
-
- Сообщения: 108
- Зарегистрирован: 15 мар 2007, 14:56
- Откуда: Компания ДЭП
В элемент указанного типа запишется то, что Вы в нее запишете из ОРС-клиентского приложения (например, из ДЭП ОРС проводника). Потом оно пересчитывается по параметрам пересчета и пересчитанное записывается в базу параметров WD-контроллера.
Значение элемента уставки должно быть проинициализировано каким-то значением при разработке модели, т.к. оно должно быть определено.
После запуска можеди видно, что у элемента уставки есть подэлементы NewValue и Control. При старте модели значение подэлемент NewValue становится равным значению уставки.
Чтобы изменить уставку сначала пишете в NewValue новое значение, потом в подэлемент Control пишете 1.
Если записать в Control - 0, то NewValue сбросится, если оно было изменено, и станет равно значению уставки.
В helpe так и написано.
Значение элемента уставки должно быть проинициализировано каким-то значением при разработке модели, т.к. оно должно быть определено.
После запуска можеди видно, что у элемента уставки есть подэлементы NewValue и Control. При старте модели значение подэлемент NewValue становится равным значению уставки.
Чтобы изменить уставку сначала пишете в NewValue новое значение, потом в подэлемент Control пишете 1.
Если записать в Control - 0, то NewValue сбросится, если оно было изменено, и станет равно значению уставки.
В helpe так и написано.
Баеву
Здравствуйте.
1. Вы не объяснили разницу Help и конструктор ОРС, и что значат парматры
int, float, float, float, float.
2. Мне нужно записать не из ОРС проводника, а из мнемосхемы.
3. По уставке я вообщк ничего не понял. Значение уставки д.б.
передано в WinDecont,а я не вижу в молели даже адреса. Как и в п. 2,
как взять из мнемосхемы значение?
Здравствуйте.
1. Вы не объяснили разницу Help и конструктор ОРС, и что значат парматры
int, float, float, float, float.
2. Мне нужно записать не из ОРС проводника, а из мнемосхемы.
3. По уставке я вообщк ничего не понял. Значение уставки д.б.
передано в WinDecont,а я не вижу в молели даже адреса. Как и в п. 2,
как взять из мнемосхемы значение?
С уважением, Б.Гаврилов
Теплосеть г. Королев.
Теплосеть г. Королев.