реклама на сайте
подробности

 
 
> Скрипт в AD
Nik0lay
сообщение May 19 2013, 14:28
Сообщение #1





Группа: Участник
Сообщений: 11
Регистрация: 17-02-07
Пользователь №: 25 454



Всем привет!
Используем Altium 9, заплюхался со скриптами уже, кто разбирается, прошу помочь.

Стоит задача синхронизации компонентов между разработчиками и сервером. Компоненты хранятся в виде DBLib, *.SCHLib, *.PCBLib, MySQL. Идея в том, что разработчики создают компоненты и запускают скрипт, который ищет созданные, пишет в отдельный SCHLib(PCBLib) и отправляет на сервер. Новые компоненты на сервере будут проверяться и записываться в базу MySQL.
Имеется "TR0126 DXP RTL Reference.pdf", конечно, некоторые моменты проясняет, но толку мало.
Сейчас пытаюсь синхронизировать хотя бы футпринты, могу получить список футпринтов в библиотеке PCBLib, могу создать новую библиотеку, но, хоть убейте, не могу скопировать их!
Есть такая конструкция
Код
CurrentLib.RegisterComponent(NewPCBLibComp);
но это для вновь созданного компонента, если я туда засуну компонент полученный из другой библиотеки (уже зарегистрированный), то у Альтиума происходит когнитивный диссонанс и выпадение в осадок )) Чего нибудь типа CopyTo или CopyFrom я не нашел.
Пробывал с момощью комманд серверу, аналог ручного копирования через контекстное меню
Код
ResetParameters;
RunProcess('PCB:CopyComponent');
переключиться на другую библиотеку
ResetParameters;
RunProcess('PCB:PasteComponent');
но у меня не получается переключаться между библиотеками.
Это первая проблема.
Есть еще одна, в возможности решения которой средствами скриптов я сильно сомневаюсь. Это касается проверки скинутых на сервер компонент и записи в базу.
Нужно создать форму в которой можно было бы из списка присланных *.SCHLib, *.PCBLib (с их превьюшками как на панели Libraries) формировать компоненты в базе MySQL. Причем запросы к базе меня не беспокоят, делаю через внешний exe`шник, а вот с панелями просмотра компонент на форме не уверен (а без них как то совсем плохо).

Посоветуйте спецы...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Nik0lay
сообщение May 22 2013, 13:00
Сообщение #2





Группа: Участник
Сообщений: 11
Регистрация: 17-02-07
Пользователь №: 25 454



Цитата(Владимир @ May 22 2013, 11:39) *
Угу. и стандартный называется Vault. Он включает и репозиторий, и то, что хотят скриптом сделать

Там же, вроде, авторизация через сервак Альтиума? Тогда сразу отпадает, выхода "наружу" нет и не будет.


Цитата(peshkoff @ May 22 2013, 11:53) *
как то я связь утерял...
т.е. получается каждый разработчик будет заходить и регулярно (по одному хотя бы разу в день) генерировать по 100000 компонентов?
потому что, как мне кажется, скрипт нужен для часто повторяющихся операций.
а нагородить тучу компонентов можно и средствами сторонними. я, например, это делаю в msAccess, иногда ексель использую...

да и не приходилось как то генерировать сразу тучу компонентов.
интересно. а ваши снабженцы в курсе, что вы собираетесь 100500 компонентов в базу поставить и их использовать?

100500 компонентов это шутка юмора если что ))
Сторонними средствами я и сам нагородить могу и програмку набросать можно, не в этом суть. Не имея в сторонней программе изображений выбираемых уго`шек и посадок, Вам придется одним глазом поглядывать на окно Альтиума и сверяться, что чревато ошибками. Поэтому, хотелось бы средствами AD провернуть.
Выполняемые операции скрипта могут быть не особо частыми, но весьма монотонными и чреватыми ошибками (человеческий фактор).

Кроме того, это не мне так захотелось, если проблема не имеет решения, то я долже убедиться в этом на 101%, что бы потом "на ковре" не мямлить, что "..я не знаю, у меня не получилось..", сами понимаете, позиция должна быть железобетонная. Поэтому и обращаюсь к знающим людям )))
Go to the top of the page
 
+Quote Post
Nik0lay
сообщение May 22 2013, 18:29
Сообщение #3





Группа: Участник
Сообщений: 11
Регистрация: 17-02-07
Пользователь №: 25 454



YYYYEEEESSSS!!! 08.gif 1111493779.gif 1111493779.gif

Кому интересно:
PCBServer.PaintFootprintThumbnail
SCHServer.PaintComponentThumbnail
а уж дальше сама, сама... )
зы
В референс файле этого НЕТ!!! Что за угоды писали...

зыы
Еще бы найти как отдельные футпринты (и уго) записывать в файл библиотек. Я об этом уже писал выше..

Сообщение отредактировал Nik0lay - May 22 2013, 18:33
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
peshkoff
сообщение May 23 2013, 05:16
Сообщение #4


люблю бегать и орать
*****

Группа: Свой
Сообщений: 1 685
Регистрация: 28-04-07
Из: ЮБутово@Москва.ru
Пользователь №: 27 376



Цитата(Nik0lay @ May 22 2013, 22:29) *
YYYYEEEESSSS!!! 08.gif 1111493779.gif 1111493779.gif

Кому интересно:
PCBServer.PaintFootprintThumbnail
SCHServer.PaintComponentThumbnail
а уж дальше сама, сама... )
зы
В референс файле этого НЕТ!!! Что за угоды писали...

зыы
Еще бы найти как отдельные футпринты (и уго) записывать в файл библиотек. Я об этом уже писал выше..


круто!
это круто, что найдено решение! т.к. я обычно упираюсь во что-нибудь и действительно, команду фиг найдешь.

Референс написан поди лет 5 назад по типу "директорсказалдаидитынафикдиректордавайзарплатуявсесделал"
после этого не правили.
Например, в pcb (не помню с какой, но вроде с 10-ой версии) ввели поддержку 32 механических слоев. и появилась новая команда для обработки их
так эту команду я только на гугло-аддонах откопать смог, в документации - 0.
Вопрос откуда эти ребята знают? возможно они в альтиуме подрабатывают...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Nik0lay   Скрипт в AD   May 19 2013, 14:28
- - Nik0lay   Похоже никто не зает, а кто знал забыл )) На данны...   May 20 2013, 15:49
- - peshkoff   да скрипты вещь такая вроде и должно работать, но ...   May 21 2013, 05:42
|- - Владимир   Цитата(peshkoff @ May 21 2013, 08:42) а в...   May 21 2013, 06:45
- - Nik0lay   По документации согласен, вроде и есть референс фа...   May 21 2013, 06:34
- - peshkoff   Цитата(Владимир @ May 21 2013, 10:45) Так...   May 21 2013, 07:54
|- - Владимир   Цитата(peshkoff @ May 21 2013, 10:54) воо...   May 21 2013, 08:37
- - peshkoff   Где говорю? что-то я подзабыл. Но в принципе я сог...   May 21 2013, 10:08
|- - Владимир   да смените в панели, например, класс или тип, а за...   May 21 2013, 10:29
- - Nik0lay   Интересно послушать умных людей ) А есть какое ниб...   May 21 2013, 13:01
- - peshkoff   Цитата(Владимир @ May 21 2013, 14:29) да ...   May 21 2013, 13:35
|- - Nik0lay   Цитата(peshkoff @ May 21 2013, 18:35) Фор...   May 21 2013, 16:16
- - peshkoff   мы контроль версий для таких задач используем. пра...   May 22 2013, 05:31
- - Nik0lay   Эмм.. а зачем тут svn? Что я хочу: есть, к примеру...   May 22 2013, 06:36
|- - peshkoff   Цитата(Nik0lay @ May 22 2013, 10:36) Эмм....   May 22 2013, 06:53
- - Владимир   Цитата(Nik0lay @ May 19 2013, 17:28) Стои...   May 22 2013, 06:39
- - Nik0lay   Наверное так и находят, методом научного тыка. Вот...   May 23 2013, 06:35
- - Nik0lay   Ну, в общем то, большенство проблем решено, остало...   May 28 2013, 14:53
- - peshkoff   может ExtractFilePath()? только в скобках надо пра...   May 29 2013, 07:01
- - Nik0lay   Хорошо бы еще знать, что в скобках писать )) То ес...   May 29 2013, 13:07
- - peshkoff   а. ExtractFilePath работает тупо со строкой. на са...   May 29 2013, 13:24
- - Aleksey Roubtsov   А кто-нибудь умеет хэндлер назначить создаваемому ...   Jul 2 2013, 11:58
- - Master of Nature   Цитата(Aleksey Roubtsov @ Jul 2 2013, 15...   Jul 2 2013, 13:02


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th June 2025 - 02:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01415 секунд с 7
ELECTRONIX ©2004-2016