Перейти к содержанию
swell{d}

параметрические объекты СПДС

Рекомендуемые сообщения

То есть захожу в форму и там выбираю либо Manual - и ввожу вручную, либо Select и выбираю из таблицы? На каких то видео видел что при установке галочке на форме выплывает вот такая таблица выбора ну и далее... вот так же хочу.

Вот тут посмотри:

function OnRadobutton1()
{
If CheckP==1{
Form.Control_T1.Visible=TRUE;
Form.image1.Visible=TRUE;
Form.editbox31.Visible=FALSE;// Присвойте контролам значение
Form.editbox63.Visible=FALSE;// Присвойте контролам значение
};
If CheckP==0{
Form.Control_T1.Visible=FALSE;
Form.image1.Visible=FALSE;
Form.editbox31.Visible=TRUE;// Присвойте контролам значение
Form.editbox63.Visible=TRUE;// Присвойте контролам значение

};
};

 

Маркер КМД (Table Visible).zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть захожу в форму и там выбираю либо Manual - и ввожу вручную, либо Select и выбираю из таблицы? На каких то видео видел что при установке галочке на форме выплывает вот такая таблица выбора ну и далее... вот так же хочу.

Вот тут посмотри:

function OnRadobutton1()
{
If CheckP==1{
Form.Control_T1.Visible=TRUE;
Form.image1.Visible=TRUE;
Form.editbox31.Visible=FALSE;// Присвойте контролам значение
Form.editbox63.Visible=FALSE;// Присвойте контролам значение
};
If CheckP==0{
Form.Control_T1.Visible=FALSE;
Form.image1.Visible=FALSE;
Form.editbox31.Visible=TRUE;// Присвойте контролам значение
Form.editbox63.Visible=TRUE;// Присвойте контролам значение

};
};

 

Спасибо огромное, получилось.

Только я что выбираю в "таблица с фильтрами" что нет все равно IImin и IImax не меняются.

 

Вот что у меня получилось, при выборе в таблице с фильтром нужного автомата, IImin и max не меняются на графике

SCHEME_04_3_2_FUSE.rar

Изменено пользователем Ruyke

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только я что выбираю в "таблица с фильтрами" что нет все равно IImin и IImax не меняются.

Так в таблице нет таких параметров.

Добавил параметры в таблицу и контролы на форму (для проверки)

SCHEME_04_3_2_FUSE.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошо с этим понятно.

Ты не торопись сразу "Шашкой" махать. :-)

Посмотри, может в твоём случае проще составить таблицу, определить нужные параметры, а потом вставлять ССЫЛКУ НА ЭТУ ТАБЛИЦУ

img-2019-04-30-18-48-01.png

Безумное количество оборудования, по типам производителям и номенклатуре.

хотя тут можно немного схитрить, производителя предоставляют базы для АК электрик, можно оттуда надергать в свою базу.

Потом только распознавать нужную графику по шаблону, и меня название в

function OnMakeParameters {
strTheName = "SCHEME_04_3_2";
strTheType = "Electricia";
strTheSubType = "Electricia";

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошо с этим понятно.

Ты не торопись сразу "Шашкой" махать. :-)

Посмотри, может в твоём случае проще составить таблицу, определить нужные параметры, а потом вставлять ССЫЛКУ НА ЭТУ ТАБЛИЦУ

img-2019-04-30-18-48-01.png

Безумное количество оборудования, по типам производителям и номенклатуре.

хотя тут можно немного схитрить, производителя предоставляют базы для АК электрик, можно оттуда надергать в свою базу.

Потом только распознавать нужную графику по шаблону, и меня название в

function OnMakeParameters {
strTheName = "SCHEME_04_3_2";
strTheType = "Electricia";
strTheSubType = "Electricia";

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошо с этим понятно.

Ты не торопись сразу "Шашкой" махать. :-)

Посмотри, может в твоём случае проще составить таблицу, определить нужные параметры, а потом вставлять ССЫЛКУ НА ЭТУ ТАБЛИЦУ

img-2019-04-30-18-48-01.png

Безумное количество оборудования, по типам производителям и номенклатуре.

хотя тут можно немного схитрить, производителя предоставляют базы для АК электрик, можно оттуда надергать в свою базу.

Потом только распознавать нужную графику по шаблону, и меня название в

function OnMakeParameters {
  strTheName = "SCHEME_04_3_2";
  strTheType = "Electricia";
  strTheSubType = "Electricia";

 

Заготовка и объект в пост #674

 

http://www.youtube.com/watch?v=xAfBzsT-rkE&list=PLxzNmJ3Maam7pWN5KD8NbMmYrZQbNRlhD&index=2&t=0s

MechWizard & DrawReference

Использование DrawReference позволяет объединить в одном «Исполнении» несколько разных, в том числе и непараметрических видов.

Открываем объект БД на редактировании в MechWizard

В объекте имеем несколько видов VFront

Исполнение «xRefSample» имеет , в качестве строки описания ссылки на другие исполнения

Верхняя часть «vVerh» и Нижняя часть «vNiz» непараметрические виды

Исполнение vidLine “vidLine” параметрический вид, который, в нашем случае просто соединяет два исполнения. Назовём их условно: «Круг» и «Прямоугольник»

Проверяем работу объекта.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

выше уже писал...

сделать фидер отходящей линии целиком..

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

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

а если сборная солянка? автомат шнайдер, пускатель авв, частотник данфос?

но....

коль очень хочется завязать графику на номенклатуру, то графика должна отображаться в соответствии.. 1Р 2Р 3Р, как минимум, плюс еще показываем это просто автомат, диф, с тепловой или отсечкой..

далее желательно, что бы это можно было применить не только однолинейных схемах, а еще и на принципиальных и иногда планах распол ожения.. порой и на НКУ..

не пускозащитной единой.. есть еще отходящая линия, кабель... поставщиков тьма..

еще нюанс .. внезапно не только шнайдер производит эл об.. есть еще всякие АВВ иеки сименнсы, вэланы, горэлтехи..

опять жэж не тупо пусковой едины.. есть еще и упп и ПЧ от того жэж шнайдера, симменса, авв, данфоса, вэспера и черт знает кого...

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

отличие именно в том, что пойдет в перечень оборудования на плане, схеме и в спецификацию

Изменено пользователем doctorraz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ну и куча мелочевки, которая на схемах иногда показывается иногда нетт..

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

глуповато автоматизировать в одной части, а в другой колотить это все руками..

вероятность чтото забыть возрастает по сравнению с без автоматизации многократно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

естественно не настаиваю и никого не агитирую, это всего лишь мой скромный опыт, который никому не нужен, у каждого свой путь, но рискну...

что общего у всех объектов электрики.. будь то несущая конструкция, провод или пускорегуллирующая?

это позиционное обозначение

и это позиционное обозначение можно показать по разному в зависимости от того где оно находится..

на плане расположения это выноска,

на схеме это просто позиция,

если это маркировка кабеля на схеме , то маркировка линейных....

это все очень просто реализовать в маркере, вернее там это все уже есть... он маркер.. маркировать)))

бонусом в маркер можно добавить таблицу параметров и форму по которой эти параметры выбирать, а также какую никакую логику его отображения в зависимости от того, что за объект...

ну и потом спокойно собираем все эти маркеры в таблицы-отчеты перечень элементов схем, спецификация на плане расположения, спецификация оборудования и материалов...

если внезапно возникло новое оборудование правим существующий маркер как надо добавляем в файл excel и когда изменений много загружаем базу из него в таблицу параметров маркера, не трогая логику работы самого маркера (на самом деле это прям тема для отдельной статьи в блог, но я ленив и бисера все меньше)

--------------

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

параметрика не маскирует тексты по умолчанию,

параметрика не умеет линии выносок

-----------------

в принципе все эти плюшки можно добавить скриптом.... но сойдет и так))

естественно разработчиков не прошу ни о чем ибо маркеру маркерово, а параметрике свое (да и ссыкотно мне опять просить... ипо желания они исполняют своеобразно... одно делают, два ломают... и так пойдет)

=====================

знаю, что мне никто не поверит и пойдет своим путем..

скатертью дорога, но по ней уже не одно поколение протопало... пришли все в одно место

Изменено пользователем doctorraz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хорошо с этим понятно.

Ты не торопись сразу "Шашкой" махать. :-)

Посмотри, может в твоём случае проще составить таблицу, определить нужные параметры, а потом вставлять ССЫЛКУ НА ЭТУ ТАБЛИЦУ

img-2019-04-30-18-48-01.png

Безумное количество оборудования, по типам производителям и номенклатуре.

хотя тут можно немного схитрить, производителя предоставляют базы для АК электрик, можно оттуда надергать в свою базу.

Потом только распознавать нужную графику по шаблону, и меня название в

function OnMakeParameters {
  strTheName = "SCHEME_04_3_2";
  strTheType = "Electricia";
  strTheSubType = "Electricia";

 

Заготовка и объект в пост #674

 

http://www.youtube.com/watch?v=xAfBzsT-rkE&list=PLxzNmJ3Maam7pWN5KD8NbMmYrZQbNRlhD&index=2&t=0s

MechWizard & DrawReference

Использование DrawReference позволяет объединить в одном «Исполнении» несколько разных, в том числе и непараметрических видов.

Открываем объект БД на редактировании в MechWizard

В объекте имеем несколько видов VFront

Исполнение «xRefSample» имеет , в качестве строки описания ссылки на другие исполнения

Верхняя часть «vVerh» и Нижняя часть «vNiz» непараметрические виды

Исполнение vidLine “vidLine” параметрический вид, который, в нашем случае просто соединяет два исполнения. Назовём их условно: «Круг» и «Прямоугольник»

Проверяем работу объекта.

 

Спасибо большое!

По поводу таблицы. Да там нет параметра IImin max но там есть параметр Curve_code, который в диапазоне (A,B,C,D) вот. И я его хотел либо таблицой задавать, либо если нету автомата в таблице, то в ручную, ранее описаной дополнительной функцией пользовательской. В этом был вопрос, почему не получается Curve_code считать с таблицы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В этом был вопрос, почему не получается Curve_code считать с таблицы?

Для начала попробуйте в SelectInCache добавить "IImin", "IImax":

SelectInCache( "kFirst", "CURVE_CODE", "~", "B", "IImin", "~", "5", "IImax", "~", "10" );

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В этом был вопрос, почему не получается Curve_code считать с таблицы?

Для начала попробуйте в SelectInCache добавить "IImin", "IImax":

SelectInCache( "kFirst", "CURVE_CODE", "~", "B", "IImin", "~", "5", "IImax", "~", "10" );

Не срабатывает :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так попробуй?

Если табличных данных для IImin, IImax, то они сбрасываются на ближайшие табличные

SCHEME_04_3_2_FUSE.zip

Изменено пользователем MCAD

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так попробуй?

Если табличных данных для IImin, IImax, то они сбрасываются на ближайшие табличные

 

Так в этом файле это так же не работает, в форме отображается, а в тексте на графике нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так в этом файле это так же не работает, в форме отображается, а в тексте на графике нет.

Меняется вроде. Но если ручной ввод, то сейчас подбирается (из кеша) табличное значение

2019_05_06_16_08_56_1308x764.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

млин накрутили вы уважаемые(((

Product_code или Product_description уникальные либо ключевые поля, соответственно выборку в базе SelectInCache и надо делать по ключам.. (хотя варианты возможны, но не в этом случае

kFirst хватает первое похожее значение)

 

в OnMakeParameters селект...

SelectInCache( "kFirst", "CURVE_CODE", "~", "B", "IImin", "~", "5", "IImax", "~", "10" );

очевидно, что результат будет один и тот же, хоть обвыбирайся в форме

--------------

а вот OnChangeParameters я бы запретил для выбора оборудования, несколько значений в свойства одновременно не ввести, соответственно выбор будет или по току или по количеству полюсов или по кривой отсечки...

соответственно для изменения каждого параметра должен быть свой SelectInCache

по крайней мере до выяснения как это работает))

---------------

ну и коль ручками правишь исполнение повнимательнее к именам переменных... язык СПДС регистрозависимый, IN и In это две разные переменные

-----------

по диагонали глянул, но что ты хотел теперь работает

ЗЫ Product_description в описании исполнения не прописан.

SCHEME_04_3_2_FUSE.zip

Изменено пользователем doctorraz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для разбора как этим пользоваться

ЗЫ кстати в этой трубе поправлен косяк с отрывом прицепленых объектов при ортогональном смещении, если объектов больше двух)))

(этот косяк присущ всем стандартным из базы)

Труба ГОСТ 8732-78, 8734-75, 550-75.zip

Изменено пользователем doctorraz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прикрепленные файлы

 

Кудесник :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

млин накрутили вы уважаемые(((

Product_code или Product_description уникальные либо ключевые поля, соответственно выборку в базе SelectInCache и надо делать по ключам.. (хотя варианты возможны, но не в этом случае

kFirst хватает первое похожее значение)

 

в OnMakeParameters селект...

SelectInCache( "kFirst", "CURVE_CODE", "~", "B", "IImin", "~", "5", "IImax", "~", "10" );

очевидно, что результат будет один и тот же, хоть обвыбирайся в форме

--------------

а вот OnChangeParameters я бы запретил для выбора оборудования, несколько значений в свойства одновременно не ввести, соответственно выбор будет или по току или по количеству полюсов или по кривой отсечки...

соответственно для изменения каждого параметра должен быть свой SelectInCache

по крайней мере до выяснения как это работает))

---------------

ну и коль ручками правишь исполнение повнимательнее к именам переменных... язык СПДС регистрозависимый, IN и In это две разные переменные

-----------

по диагонали глянул, но что ты хотел теперь работает

ЗЫ Product_description в описании исполнения не прописан.

 

Спасибо но почему то в Вашем файле не работает "Manual" редакция (когда пытаюсь выбрать A, B, C, D.

 

По поводу Product_description в описании исполнения я вообще хотел как бы вписывать там переменные FUSE_NAME_1 и 2 как там и есть (это если вручную), а если по таблице выбора, то FUSE_NAME_1 и 2 принимают какие то параметры из таблицы (например Pruduct_description+"х-ка"+CURVE_CODE. Ну что то наподобии.

То есть смысл такой, если стаит Manual, то я вбиваю параметры один, если стоит Select то параметры из Manual копируют значения из таблицы.

Изменено пользователем Ruyke

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо но почему то в Вашем файле не работает "Manual" редакция (когда пытаюсь выбрать A, B, C, D.

А у вас точно проходит импорт mcd в базу?

Какое сообщение при импорте?

img-2019-05-13-16-14-40.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

>>Спасибо но почему то в Вашем файле не работает "Manual" редакция (когда пытаюсь выбрать A, B, C, D

​это не наш файл, а Ваш и там мы не смотрели)))

----------

>>То есть смысл такой, если стаит

см. как сделано в базе "Оборудование офисных помещений"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо но почему то в Вашем файле не работает "Manual" редакция (когда пытаюсь выбрать A, B, C, D.

А у вас точно проходит импорт mcd в базу?

Какое сообщение при импорте?

img-2019-05-13-16-14-40.png

Нет я перед этим полностью его удалил и новый загрузил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

>>Спасибо но почему то в Вашем файле не работает "Manual" редакция (когда пытаюсь выбрать A, B, C, D

​это не наш файл, а Ваш и там мы не смотрели)))

----------

>>То есть смысл такой, если стаит

см. как сделано в базе "Оборудование офисных помещений"

Я имел ввиду, который Вы прислали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

.............

Я имел ввиду, который Вы прислали.

я понял,

выше написал жэж, что глянул по диагонали, что в глаз попало поправил

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Хорошо с этим понятно.
Ты не торопись сразу "Шашкой" махать. :-) Посмотри, может в твоём случае проще составить таблицу, определить нужные параметры, а потом вставлять ССЫЛКУ НА ЭТУ ТАБЛИЦУ img-2019-04-30-18-48-01.png
Безумное количество оборудования, по типам производителям и номенклатуре. хотя тут можно немного схитрить, производителя предоставляют базы для АК электрик, можно оттуда надергать в свою базу.
Потом только распознавать нужную графику по шаблону, и меня название в
 function OnMakeParameters { strTheName = "SCHEME_04_3_2"; strTheType = "Electricia"; strTheSubType = "Electricia";

Заготовка и объект в пост #674 http://www.youtube.com/watch?v=xAfBzsT-rkE&list=PLxzNmJ3Maam7pWN5KD8NbMmYrZQbNRlhD&index=2&t=0s MechWizard & DrawReference Использование DrawReference позволяет объединить в одном «Исполнении» несколько разных, в том числе и непараметрических видов.

Открываем объект БД на редактировании в MechWizard
В объекте имеем несколько видов VFront
Исполнение «xRefSample» имеет , в качестве строки описания ссылки на другие исполнения
Верхняя часть «vVerh» и Нижняя часть «vNiz» непараметрические виды
Исполнение vidLine “vidLine” параметрический вид, который, в нашем случае просто соединяет два исполнения. Назовём их условно: «Круг» и «Прямоугольник»
Проверяем работу объекта.
Спасибо большое! По поводу таблицы. Да там нет параметра IImin max но там есть параметр Curve_code, который в диапазоне (A,B,C,D) вот. И я его хотел либо таблицой задавать, либо если нету автомата в таблице, то в ручную, ранее описаной дополнительной функцией пользовательской. В этом был вопрос, почему не получается Curve_code считать с таблицы?

Я попробовал объединить исполнения, частично получилось, но неполучается реализовать смену исполнений в суммарном виде ( то есть у меня низ и середина одна, а верхушки могут меняться).

Я попытался в форме добавить переключатель с текстовым параметром присвоенным, а в самом суммарном исполнении реализовать их смену через (if) но у меня кудато пропадает вторая верхушка, то есть не хочет отображаться.

Что я делаю не так?

Файл приложил в письме.

SCHEME_04_3_2_FUSE.rar

Изменено пользователем Ruyke

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...