Форум Zentec

Программное обеспечение => Вопросы по zWorkbench => Частые вопросы => Тема начата: mike от 23 февраля 2016, 20:51:00

Название: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 20:51:00
Здравствуйте коллеги!
В этой ветке буду периодически делиться маленькими хитростями ЗВБ, которые существенно упрощают работу над проектами.
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 20:59:58
Первый праздничный выпуск посвящен автоматизации именования пинов.
Суть проблемы:
Есть два макроса: МАКРОС-1 и МАКРОС-2. Эти макросы нужно вставить в МАКРОС-3.
В МАКРОСЕ-3 есть еще пять переменных. Названия выходов макросов 1 и 2, а так же всех пяти переменных, должны соответствовать названиям выходов макроса 3.
В сторонних пакетах проектирования данная работа вызывает исключительное уныние, т.к. предстоит рутинная работа по копированию/вставке названий.

ЗВБ позволяет облегчить задачу и свести рутинный процесс к минимуму.

Поехали:
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:08:00
Создаем МАКРОС-1 и МАКРОС-2
Что будет внутри находиться не имеет значения. Я сделаю по 4 выхода.
Внутренний вид макросов показан на картинке.
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:15:43
Создаю МАКРОС-3, внутри этого макроса создаю необходимые переменные и устанавливаю на сцену переменные и макросы 1 и 2
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:21:45
Кстати, что бы вытащить все переменные на сцену, достаточно выделить первую переменную, нажать Shift и выделить последнюю переменную и потянуть выделенный блок на сцену. Для произвольного выделения нескольких переменных вместо Shift необходимо использовать Ctrl

Должно получиться, как на картинках.
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:28:21
Теперь выставим на сцену выход макроса и размножим его (ctrl+c / ctrl+v) в необходимом количестве.
Порядок представления и тип данных не имеет значения.

Снаружи макрос выглядит ужасно.
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:36:28
Приведем его в порядок.
Выделяем пин выхода макроса 1 и нажимаем ctrl+c (то есть копируем пин макроса).
Затем выделяем необходимый выход в макросе 3 и нажимаем ctrl+shift+v
Название выхода макроса 3 изменится.
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:41:45
Если типы данных отличаются, то при вставке свойств будет выведено окно с запросом на действие.
Название: Re: Знаете ли Вы?
Отправлено: mike от 23 февраля 2016, 21:46:35
Соглашаемся с изменением названия и типа данных.

Таким образом бОльшая часть рутинной работы выполнена в полуавтоматическом режиме.

В качестве заметки:
в ЗВБ реализован механизм копирования свойств. Поэтому, данным методом можно копировать свойства других объектов.

Творческих вам успехов, коллеги!
Надеюсь, этот инструмент сэкономит вам значительное количество времени.
Название: Re: Знаете ли Вы?
Отправлено: Max от 24 февраля 2016, 08:36:34
Предлагаю оформить это все не в виде темы на форуме а в виде документации... и выложить на сайте. Так будет правильнее (ИМХО)... на форум нужно "лезть" в последний момент... когда в документации нет ответа на этот вопрос...
Название: Re: Знаете ли Вы?
Отправлено: mike от 24 февраля 2016, 09:00:23
Конечно же это стоит в планах.
Почему сначала это пишется на форуме? Потому что хотим критики.
Нам важно знать ваши предложения и пожелания.
Название: Re: Знаете ли Вы?
Отправлено: VoronovMaksim88 от 25 февраля 2016, 04:52:14
Вытаскивать все переменные на поляну разом - это удобно, отлично придумали!!!

Насчёт копирования свойств:
Думаю было бы удачнее сделать так: при создании выхода(входа) внутри макроса он не имеет ни типа ни имени и не отображается при выходе из макроса, если теперь к нему зацепить связь, то он автоматически приобретает её тип и её имя. Или же тип и имя можно задать вручную в свойствах входа. При таком подходе нет необходимости копировать свойства горячими клавишами.
Название: Re: Знаете ли Вы?
Отправлено: Artem от 25 февраля 2016, 08:41:26
Цитата: VoronovMaksim88 от 25 февраля 2016, 04:52:14
Или же тип и имя можно задать вручную в свойствах входа.

Так не получится. Может сложится ситуация, когда будут вытащены две или больше копий макросов. И появится возможность устанавливать им разные типы данных и имена для одних и тех же ножек.
Макрос это по сути тот же блок и поэтому у него должны жестко определены типы и названия входов/выходов уже на этапе, когда его вытаскивают на схему.
Кстати, такой вариант мы уже пробовали пол года назад. Но возникла куча проблем и пришлось от этой идеи отказаться.
Название: Re: Знаете ли Вы?
Отправлено: mike от 18 июля 2016, 22:14:58
Продолжу про работу с пинами.
Есть маленькая хитрость.
Например, нужны одинаковые названия пинов входов одного макроса и выходов другого.
На помощь приходит копирование свойств пинов.
Пример в двух скриншотах.
На первом я копирую свойства входа макроса №1, затем переключаюсь в макрос №2 и вставляю свойства выхода. Получается быстро.
Название: Re: Знаете ли Вы?
Отправлено: VoronovMaksim88 от 19 июля 2016, 03:48:31
Ух ты.  Прикольно!
Название: Re: Знаете ли Вы?
Отправлено: serge197a от 13 января 2017, 13:24:52
Не знаю как расширить окно для программы.
Подскажите, плиз.
Название: Re: Знаете ли Вы?
Отправлено: mike от 13 января 2017, 13:54:48
Дайте скрин, пожалуйста
Название: Re: Знаете ли Вы?
Отправлено: serge197a от 13 января 2017, 14:40:50
Я все ПРГ Вам в личку отправил