Разное

Общие вопросы по оборудованию и программному обеспечению Компании ДЭП
Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 19 ноя 2009, 10:33

Разработчик. У блока dep_ArrayIndex входы:
-массив 3х4, FLOAT, для чтения;
-индекс - 4, WORD;
-выход FLOAT;
Проверка:неверны типы терминалов блока.
Вопрос: где ошибка?
С уважением, Б.Гаврилов
Теплосеть г. Королев.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 19 ноя 2009, 11:06

О копировании проектов.
Не секрет, что проекты готовят на одном компьютере (проектном),
а затем копируют на рабочий. Т.е. минимум два копирования:
проектный - врнеменный носитель - рабочий.
1. Конфигурация.Нельзя средствами типа эксплорер скопировать из одного
проекта в другой.
2. Исходники или EXE мнемосхемы с привязками - при копировании
можно потерять привязки, т.к. программа "теряет" рисунок SVG.
3. Разработчик. Копирую проект, блоки, глобальные. Но в скопированном
проекте ссылки на старое размещение блоков, а глобалные переменные
или теряют свою привязку, или вообще неизвестно, на какой файл
ссылаются и нередко две переменные с одним именем оказываются разными.
Считаю это большим недостатком ПО и достсточно легко устранимым.
С уважением, Б.Гаврилов

Теплосеть г. Королев.

galina
Сообщения: 79
Зарегистрирован: 03 дек 2007, 09:56
Откуда: Компания "ДЭП"

Сообщение galina » 19 ноя 2009, 11:20

Б.Е.Г. писал(а):Разработчик. У блока dep_ArrayIndex входы:
-массив 3х4, FLOAT, для чтения;
-индекс - 4, WORD;
-выход FLOAT;
Проверка:неверны типы терминалов блока.
Вопрос: где ошибка?

Отправьте проект на galina@dep.ru

Dino
Сообщения: 163
Зарегистрирован: 21 фев 2005, 13:18
Откуда: Компания ДЭП

Сообщение Dino » 19 ноя 2009, 15:52

Б.Е.Г. писал(а):2. Исходники или EXE мнемосхемы с привязками - при копировании
можно потерять привязки, т.к. программа "теряет" рисунок SVG.

При разработке мнемосхемы указываете относительные пути(относительно расположения исполняемого файла) к Svg файлам (свойство TdepSvgPanel.FileName).
С уважением Климов Александр
Компания ДЭП
г. Москва
(495) 995-00-12 доб. 150

pooh
Сообщения: 421
Зарегистрирован: 22 июл 2008, 11:50
Откуда: Дэп

Сообщение pooh » 19 ноя 2009, 15:54

По вопросу 1:
Через проводник всегда копируется вся папка проекта (со всеми контроллерами). Отдельно копировать папки контроллеров нельзя, Конфигуратор их не откроет. Корректно копировать контроллеры из одного проекта в другой в пределах компьютера можно только через конфигуратор.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 19 ноя 2009, 16:33

kl_alex писал(а):
Б.Е.Г. писал(а):2. Исходники или EXE мнемосхемы с привязками - при копировании
можно потерять привязки, т.к. программа "теряет" рисунок SVG.

При разработке мнемосхемы указываете относительные пути(относительно расположения исполняемого файла) к Svg файлам (свойство TdepSvgPanel.FileName).

Александр, Вы меня переоцениваете! Я указываю файл в браузере. А как указать относительное положение? ..\Images\Рис1.svg ???
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 20 ноя 2009, 05:20

О копировании. Извините меня, но я не спрашиваю как поступать, я предлагаю изменить программы и обеспечить грамотное копирование средствами Windows или специальными средствами, встроенными в соответствующую программу.
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 20 ноя 2009, 05:31

ОРС конструктор. Есть тип А и типы В, С..., в которых используется А.
При изменении А (например, названия типа) не происходит отслеживания в В, С. По моему, процесс отслеживания должен проводится молча и по всем типам без открывания их. По команде "Сохраеить проект" должны сохраняться все измененные блоки и библиотеки.
Прошу прощения, но думаю мое пожелание вполне обосновано: приходится отслеживать все вручную, а иногда и не в редакторе конструктора, а непосредственно в служебных файлах!
С уважением, Б.Гаврилов

Теплосеть г. Королев.

galina
Сообщения: 79
Зарегистрирован: 03 дек 2007, 09:56
Откуда: Компания "ДЭП"

Сообщение galina » 20 ноя 2009, 12:33

Б.Е.Г. писал(а):ОРС конструктор. Есть тип А и типы В, С..., в которых используется А.
При изменении А (например, названия типа) не происходит отслеживания в В, С. По моему, процесс отслеживания должен проводится молча и по всем типам без открывания их. По команде "Сохраеить проект" должны сохраняться все измененные блоки и библиотеки.
Прошу прощения, но думаю мое пожелание вполне обосновано: приходится отслеживать все вручную, а иногда и не в редакторе конструктора, а непосредственно в служебных файлах!

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

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 20 ноя 2009, 14:46

galina писал(а):Как только вы изменили какой-либо тип, то лучше всего нажать "Сохранить проект". И тогда если вы откроете тип, использующий измененный, то программа предложит обновиться.

Спасибо, Galina. Только мне пришлось много раз менять, а потом прощелкивать все типы. И не все проходило. Желательно, чтобы все молча отслеживалось.
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 21 ноя 2009, 17:18

В мнемосхеме имеется кнопка, при нажатии на которую вызывается функция, возврвщающа в зависимости от условий 0 (операцию не проволить) или 5000 (импульс команды 5 сек.
aWriteValue=0;
aWriting=false;
или
aWriteValue=5000;
aWriting=true;
В базу записывается 1000 в обеих случаях.
В чем ошибка?
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Баев Владимир
Сообщения: 108
Зарегистрирован: 15 мар 2007, 14:56
Откуда: Компания ДЭП

Сообщение Баев Владимир » 23 ноя 2009, 12:47

Цитата их helpa по ОРС-модели:
"После записи в wdDOutImp в дискрет записывается с битом динамики некоторое значение, называемое длительностью импульса. Длительность задается в миллисекундах. Длительность импульса вычисляется так: равна значению wdDOutImp, если Duration=0 или Duration*1000, если Duration не равно 0. Если полученная длительность не больше 8191, то в дискрет записывается эта длительность с битом динамики. Если длительность больше 8191, то она переводится в секунды (делится на 1000). Если полученная длительность в секундах больше 8191, то она считается равной 8191. Полученное значение записывается в дискрет с указанием того, что значение выражается в секундах."

Т.е. Вам надо при разработке модели установить Duration = 0.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 23 ноя 2009, 18:46

О длительности имульса wdOutImp.
Владимир, спасибо и прошу прощения - признаться иногда не знаешь, где искать, а все прочитать очень затруднительно.
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 27 ноя 2009, 06:24

kl_alex, здравствуйте. Вы писали:
"При разработке мнемосхемы указываете относительные пути(относительно расположения исполняемого файла) к Svg файлам (свойство TdepSvgPanel.FileName)."
но не ответили - как практически это сделать, что написать в свойстве FileName?
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Dino
Сообщения: 163
Зарегистрирован: 21 фев 2005, 13:18
Откуда: Компания ДЭП

Сообщение Dino » 27 ноя 2009, 13:50

Б.Е.Г. писал(а):kl_alex, здравствуйте. Вы писали:
"При разработке мнемосхемы указываете относительные пути(относительно расположения исполняемого файла) к Svg файлам (свойство TdepSvgPanel.FileName)."
но не ответили - как практически это сделать, что написать в свойстве FileName?

Например, если у Вас исполняемый файл расположен в c:\work\arm, a kp1.svg расположен в c:\work\arm\images, то в FileName указывете images\kp1.svg, если же svg-файл расположен в директории c:\work\arm, то указываете в FileName только имя svg-файла, если kp1.svg - в c:\work, то в FileName указываете ..\kp1.svg.
С уважением Климов Александр

Компания ДЭП

г. Москва

(495) 995-00-12 доб. 150

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 28 ноя 2009, 08:25

Спасибо, Александр.
Я пробовал варианты
1. Расположение рисунка в папке проекта С:\Pr1\ms1.svg
Варианты
а) ..\ms1.svg - в design time рисунок не найден
б) \ms1.svg - в design time рисунок найден, в run time
сообщение: Файл C:\Pr1\Debug\ms1.svg не найден.
в) ms1.svg - в design time рисунок найден, в run time
сообщение: Файл C:\Pr1\Debug\ms1.svg не найден.
2. Расположение С:\Pr1\Images\ms1.svg
Варианты
а) ..\images\ms1.svg - в design time рисунок не найден.
б) \images\ms1.svg - в design time рисунок найден, в run time
сообщение: Файл C:\Pr1\Debug\ms1.svg не найден.
в) images\ms1.svg - в design time рисунок найден, в run time
сообщение: Файл C:\Pr1\Debug\ms1.svg не найден.
Другое расположение рисунка нежелательно и, похоже, ситуацию не спасает.
Что же делать? Мне предстоит перегрузить отлаженную программу
из "проектного" ПК в рабочий, неужели придется привязки делать
с нуля? И так при дальнейших пополнениях модели, если использовать "проектный" ПК. "Рабочий" ПК, естественно, "на дежурстве". Для меня этот вопрос - срочный.
По моему, программа должна интегрировать рисунок, скажем, в файл ресурсов.
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Dino
Сообщения: 163
Зарегистрирован: 21 фев 2005, 13:18
Откуда: Компания ДЭП

Сообщение Dino » 30 ноя 2009, 13:52

В последующих версиях мы учтем Ваши пожелания. Да, действительно есть проблема с относительным расположением svg файлов, если файл проекта(cbproj) и исполняемый файл(exe), находятся в разных директориях. На данный момент Вам всех проще поступить следующим образом. Установите папку вывода, туда где располагается проект, для этого в опциях проекта("Paths and Defines") в поле "Final Output" задайте путь ".". И далее можете располагать svg файлы так как описано в предыдущем сообщении. В DesignTime и RunTime при этом расхождений быть не должно.
С уважением Климов Александр

Компания ДЭП

г. Москва

(495) 995-00-12 доб. 150

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 09 янв 2010, 11:35

Пытался программно создать запись в оперативный журнал, написал небольшой код:
tOLPars pars;
pars.Disp="asd";
int id = gOperLog->add(pars);
Линкер выдал ошибки:
[ILINK32 Error] Error: Unresolved external 'mlSupprt::tOLPars::~tOLPars()' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
[ILINK32 Error] Error: Unresolved external 'mlSupprt::tOLPars::tOLPars(mlBase::tBase *, const System::WideString&)' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
[ILINK32 Error] Error: Unresolved external 'mlSupprt::gOperLog' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
[ILINK32 Error] Error: Unresolved external 'mlSupprt::tOperLog::add(const mlSupprt::tOLPars&)' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
В чем я неправ?
С уважением, Б.Гаврилов

Теплосеть г. Королев.

Аватара пользователя
Б.Е.Г.
Сообщения: 169
Зарегистрирован: 20 май 2009, 07:48
Откуда: Королев

Сообщение Б.Е.Г. » 12 янв 2010, 15:32

Здравствуйте.
Я разработал в Developer некий проект
XXX
MainLib
YY (главный блок)
z1
......
Я бы хотел использовать блок YY как любой блок, предоставляемый системой. Можно ли это сделать?
С уважением, Б.Гаврилов

Теплосеть г. Королев.

galina
Сообщения: 79
Зарегистрирован: 03 дек 2007, 09:56
Откуда: Компания "ДЭП"

Сообщение galina » 13 янв 2010, 16:39

Б.Е.Г. писал(а):Пытался программно создать запись в оперативный журнал, написал небольшой код:
tOLPars pars;
pars.Disp="asd";
int id = gOperLog->add(pars);
Линкер выдал ошибки:
[ILINK32 Error] Error: Unresolved external 'mlSupprt::tOLPars::~tOLPars()' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
[ILINK32 Error] Error: Unresolved external 'mlSupprt::tOLPars::tOLPars(mlBase::tBase *, const System::WideString&)' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
[ILINK32 Error] Error: Unresolved external 'mlSupprt::gOperLog' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
[ILINK32 Error] Error: Unresolved external 'mlSupprt::tOperLog::add(const mlSupprt::tOLPars&)' referenced from C:\PUMP\MSP\DEBUG\MSP.OBJ
В чем я неправ?

На первый взгляд кажется, что все правильно. Поставьте Конструктор ОРС модели из тестового и попробуйте на нем. Каким инструментом собираете?
Если опять не получится, вышлите проект на galina@dep.ru

galina
Сообщения: 79
Зарегистрирован: 03 дек 2007, 09:56
Откуда: Компания "ДЭП"

Сообщение galina » 13 янв 2010, 16:42

Б.Е.Г. писал(а):Здравствуйте.
Я разработал в Developer некий проект
XXX
MainLib
YY (главный блок)
z1
......
Я бы хотел использовать блок YY как любой блок, предоставляемый системой. Можно ли это сделать?

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