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

Скрипты и API

Обсуждение и решение проблем в работе с Eplan.

Модератор: специалисты по Eplan

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Скрипты и API

Сообщение Satyr » 08 авг 2012, 20:54

Автоматизация Eplan при помощи C#

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 08 авг 2012, 21:08

Для начала темы хочу посоветовать посетить сайт наших немецких коллег
http://www.suplanus.de/
если есть люди програмирующие в C# откликнитесь, скрипты очень сильно повышают производительность работы и облегчают жизни проектировщиков(это факт сам проверял) )))

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Re: Скрипты и API

Сообщение AGorskiy » 09 авг 2012, 08:24

Рад приветствовать одного из продвинутых пользователей Еплана! К сожалению пока на данном форуме самые актвивные пользователи-новички (3-4 человека максимум), остальные сидят тихо (чел. 10 максимум), как говорится "чукча не писатель, чукча читатель" - исключение Оксана.
Данная часть форума открылась в апреле.
Программирующих на Си Шарпе два, о которых я знаю, при чем один это вы Изображение. С сайта Йохана я периодически выкладываю скрипты порой делаю локализацию, для простоты.
Видел мульт как на АПИ делают расчет кабелей по трассам.
Так же очень интересен вариант использования АПИ без самой лицензии, видел один скрипт. Происходит регистрация дллки и вуаля. Лицензия на АПИ хоть сейчас и подешевела, все равно стоит немало.

Satyr, а что вы реализовывали используя АПИ? Можно поподробнее. Какие скрипты использовали? Что делали под свои задачи? Очень интересно!
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 09 авг 2012, 21:42

На АПИ пока сделал один пробный проект, создание новых страниц с описанием из нисподающего меню. .... В основном пользуюсь скриптами. Для затравочки небольшой скриптик записываюший в текстовый документ исполняемые команды...

[spoiler=Код]using System.IO;


public class SimpleEventHandler
{
[Start]
[DeclareEventHandler("onActionStart.String.*")]
public long MyEventHandlerFunction2(IEventParameter iEventParameter)
{

try
{
//File.Create(@"C:\События.txt"); ..Создание файла
EventParameterString oEventParameterString = new EventParameterString(iEventParameter);
String strActionName = oEventParameterString.String;
StreamWriter sw;
FileInfo fi = new FileInfo(@"C:\События.txt");
sw = fi.AppendText();
sw.WriteLine("oCLI.Execute(\"{0}\");", strActionName);
sw.Close();

}

catch (System.InvalidCastException exc)
{

String strExc = exc.Message;

System.Windows.Forms.MessageBox.Show("Parameter error: " + strExc, "MyEventHandler");

}



return 0;

}

}[/spoiler]
Последний раз редактировалось Satyr 09 авг 2012, 22:04, всего редактировалось 1 раз.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 09 авг 2012, 22:01

После чего нужные команды можно ипользовать в следующем коде (предварительно создав кнопку с параметром "выполнить")...

[spoiler=Следующий код]public class MyRun
{
[DeclareAction("Выполнить")]
public void MyRunAction()
{
CommandLineInterpreter oCLI = new CommandLineInterpreter();
// Нужные команды...

}

}[/spoiler]

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Re: Скрипты и API

Сообщение AGorskiy » 10 авг 2012, 08:23

создание новых страниц с описанием из нисподающего меню

В свое время Оксана хотела реализовать Создание окна Combobox. Это как то связать можно? Жаль она сейчас в отпуске, уверяю, она бы вас потерзала.

Потом попробую ваш скрипт применить, отпишусь о впечатлениях.
=======================================
[spoiler=Бегло впечатления]1) при копировании данного кода в Блокнот нужно сохранить в Юникоде, иначе при создании файла "Событие.txt" имя формируется из ромбов, без отображения кириллицы
2) при выполнении команды Выполнить в версии 2.1 SP1 вылетает окно с ошибкой
Отсутствует ожидаемый параметр вызова iEventParameter.
Однако при этом скрипт выполняется и команды записываются в указанный файл.
Все работоспособно.[/spoiler]
Вот теперь думаю как это применить, да, можно создать список команд с порядком их выполнения, но что можно выполнить под это пока не представляю.
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 10 авг 2012, 09:58

На пример нумерацию одним кликом

Страниц
Устройств
Клемм
И сортировку клемм
Последний раз редактировалось Satyr 10 авг 2012, 10:00, всего редактировалось 1 раз.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 10 авг 2012, 09:59

По поводу ComboBox http://files.mail.ru/5B66W2
посмотри может пригодится

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Re: Скрипты и API

Сообщение AGorskiy » 10 авг 2012, 11:38

2 Satyr
Данный скрипт, в свое время, для версии 1.9 он был у Джонни, а эту версию я взял от Гишеля. Суть скрипта проста она делает вид, допустим ОУ кабеля =РУ+ВВ1-W1 к виду
=РУ
+ВВ1
-W1
что порой удобно, но сейчас не об этом скрипте речь, точнее даже дллки. По сути используется АПИ, так как прикручивается дллка, однако в архиве есть два скрипта один из них регистрирует дллку и есть возможность не использовать лицензию АПИ.
В аттаче приложенный архив с дллкой и скриптами, которые кстати сразу экспортируют и сам файл и панель, что удобно.
Нужно компетентное мнение. Так как ты об этом лучше всех знаешь, не анализировал это? Как думаешь это связано с конкретной задачей или такое возможно с другими?

2_0_DLL_Install.7z
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Командная строка

Сообщение Satyr » 21 авг 2012, 15:18

В данном скрипте реализована командная строка, во вкладке сервисные программы появляется пункт "ВЫПОЛНИТЬ".
При нажатии на этот пункт появляется окошко с командной строкой и если можно эту команду выполнить строка становиться зеленой и активируется кнопка "OK"

Можно попробовать данный скрипт на команде
StartOfflineNumeration
[spoiler=Код]using System.Drawing;
using System.Drawing;
using System.Windows.Forms;
using Eplan.EplApi.ApplicationFramework;
using Eplan.EplApi.Scripting;

public partial class frmExecuteEplanAction : System.Windows.Forms.Form
{
private Button btnCancel;
private Button btnOk;
private TextBox txtAction;
private CommandLineInterpreter oCLI = new CommandLineInterpreter();

private System.ComponentModel.IContainer components = null;

protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}

private void InitializeComponent()
{
this.btnCancel = new System.Windows.Forms.Button();
this.btnOk = new System.Windows.Forms.Button();
this.txtAction = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// btnCancel
//
this.btnCancel.Location = new System.Drawing.Point(262, 87);
this.btnCancel.Name = "btnCancel";
this.btnCancel.Size = new System.Drawing.Size(120, 23);
this.btnCancel.TabIndex = 1;
this.btnCancel.Text = "Отмена";
this.btnCancel.UseVisualStyleBackColor = true;
this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
//
// btnOk
//
this.btnOk.Enabled = false;
this.btnOk.Location = new System.Drawing.Point(136, 87);
this.btnOk.Name = "btnOk";
this.btnOk.Size = new System.Drawing.Size(120, 23);
this.btnOk.TabIndex = 0;
this.btnOk.Text = "OK";
this.btnOk.UseVisualStyleBackColor = true;
this.btnOk.Click += new System.EventHandler(this.btnOk_Click);
//
// txtAction
//
this.txtAction.BackColor = System.Drawing.Color.LightSalmon;
this.txtAction.Location = new System.Drawing.Point(12, 37);
this.txtAction.Name = "txtAction";
this.txtAction.Size = new System.Drawing.Size(370, 20);
this.txtAction.TabIndex = 2;
this.txtAction.TextChanged += new System.EventHandler(this.txtAction_TextChanged);
//
// frmExecuteEplanAction
//
this.AcceptButton = this.btnOk;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btnCancel;
this.ClientSize = new System.Drawing.Size(394, 122);
this.Controls.Add(this.txtAction);
this.Controls.Add(this.btnOk);
this.Controls.Add(this.btnCancel);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "frmExecuteEplanAction";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Выполнить";
this.Load += new System.EventHandler(this.frmExecuteEplanAction_Load);
this.ResumeLayout(false);
this.PerformLayout();

}

public frmExecuteEplanAction()
{
InitializeComponent();
}



[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu();

oMenu.AddMenuItem(
"Выполнить",
"ExecuteEplanAction"
);

return;
}

[DeclareAction("ExecuteEplanAction")]
public void Function()
{
frmExecuteEplanAction frm = new frmExecuteEplanAction();
frm.ShowDialog();

return;
}

private void btnCancel_Click(object sender, System.EventArgs e)
{
this.Close();

return;
}

private void frmExecuteEplanAction_Load(object sender, System.EventArgs e)
{
txtAction.Select();


return;
}

private void btnOk_Click(object sender, System.EventArgs e)
{
oCLI.Execute(txtAction.Text);
this.Close();

return;
}

private void txtAction_TextChanged(object sender, System.EventArgs e)
{
bool bRet = oCLI.IsExecutable(txtAction.Text);
if (bRet)
{
txtAction.BackColor = Color.LightGreen;
btnOk.Enabled = true;
}
else
{
txtAction.BackColor = Color.LightSalmon;
btnOk.Enabled = false;
}

return;
}
}


}[/spoiler]
Satyr_Run.cs
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Re: Скрипты и API

Сообщение AGorskiy » 21 авг 2012, 15:44

Подправил сообщения. В коде последняя строка лишняя.
Добавил подправленный файл.
[spoiler=Ошибки]S046006 (21.08.2012 / 16:34:33) Ошибки или предупреждения компилятора в сценарии C:\Users\gas\Desktop\new.cs :
S000000 (21.08.2012 / 16:34:33) CS1022 (Строка:154, Столбец:1): Ожидалось определение типа или пространства имен, либо признак конца файла
S046007 (21.08.2012 / 16:34:33) Не удалось скомпилировать сценарий C:\Users\gas\Desktop\new.cs.[/spoiler]
Без списка возможных команд, пользователю этот скрипт будет неинтересен, ИМХО.
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 21 авг 2012, 16:01

У меня компилируется без ошибок

Попробуй этот файл
Выполнить.cs
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 21 авг 2012, 16:11

Satyr писал(а):На АПИ пока сделал один пробный проект, создание новых страниц с описанием из нисподающего меню. .... В основном пользуюсь скриптами. Для затравочки небольшой скриптик записываюший в текстовый документ исполняемые команды...


на диске c:\\ в файле события.txt можно посмотреть выполняемые команды
и в хелпе можно посмотреть Eplan.EplApi.CommandLineActions Namespace

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Re: Скрипты и API

Сообщение AGorskiy » 21 авг 2012, 16:16

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

Полезная информация. Хелп по АПИ находится тут
Хелп по АПИ древний, версия 1.0 2006 года. В Новостях они периодически, что то добавляют-убавляют и прочее. Но, даже он сойдет.
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 21 авг 2012, 19:55

Более свежего хелпа не существует, я знаком с программистом Eplan'а, даже он пользует этот документ. Замечания в дальнейшем учту, в виду того, что пока, код примитивный, расписывать не стал. Хотелось бы услышать какие нибудь не тривиальные задачи для воплощения, и форумчанам хорошо и мне тренировка. Решил упростить работу с точками разрыва, пишите, с удовольствием рассмотрю все пожелания.

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Re: Скрипты и API

Сообщение AGorskiy » 21 авг 2012, 21:22

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

Задача №1
Как известно из новостей, Еплан выпустил новое расширение EPLAN FieldSys, смысл этого аддона, что он считает длину кабеля исходя из плана размещения оборудования и кабельных трасс, а так же учитавает, что возможнен подъем кабеля по высоте. Так же знаю, что сам Еплан ранее выполнил это на АПИ, дэлэлькой или скриптом не знаю. Вещь полезная, накидали план помещения в масштабе, а то и просто экспортировали из Автокада и проложили кабели, в итоге получили длину. Более подробно, напишу в личку.

Задача №2
Есть такая почти мертвая тема РЗА. Клеммник. Кабель. Отчет. Если коротко (потом подцеплю скрины для ясности), то Еплан не умеет создавать отчет, в котором показы и клеммы и кабели, а кабели еще и в кружочках должны быть. Внешний вид таких отчетов должен соотвествовать требованию ГОСТ 21.408-93 ПРАВИЛА ВЫПОЛНЕНИЯ РАБОЧЕЙ ДОКУМЕНТАЦИИ АВТОМАТИЗАЦИИ ТЕХНОЛОГИЧЕСКИХ ПРОЦЕССОВ.
Скрин под спойлером.

Задача №3
Выполнить схему подключения кабеля, но особую, условно как бы однолинейную, от шкафа к шкафу. Обрисую после...
====================
Satyr, все желательно выполнить, чтобы можно было подцепить в программу без дополнительного модуля API, то есть скриптами, если конечно возможно. Кстати, про комменты в коде, я имел ввиду, чтобы писал, чей код, авторское право, как у Джонни.
Последний раз редактировалось AGorskiy 22 авг 2012, 09:14, всего редактировалось 1 раз.
Причина: добавил сообщение
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.

Аватара пользователя

AGorskiy
знаток Eplan
знаток Eplan
Сообщения: 2273
Зарегистрирован: 05 мар 2012, 14:00
Ф.И.О.: Горский Андрей Сергеевич
Откуда: Санкт-Петербург
Благодарил (а): 18 раз
Поблагодарили: 21 раз
Контактная информация:

Скрипты и API

Сообщение AGorskiy » 03 сен 2012, 15:38

Если все еще в силе, то
Задача №3
Хотелось бы видеть возможность исполнения схемы кабельных проводок, такой в Еплане нет, но есть отчет типа "Спецификация кабеля", на основе которого и предлагаю это осуществить. На рис.1 есть многополюсное исполнение кабеля, задействован в схеме, на рис.2 этот же кабель в однополюсной схеме (это и есть схема подключения проводок). Хотелось бы работу вести так: в навигаторе кабелей выделяем один или несколько кабелей перетаскиваем их в однополюсную схему, выполняю скрипт появляется отображение цели и источника (в данном случае Х1 и 2X), но они в ЧЯ, следовательно их полное ОУ. Если же они в ЧЯ =ОРУ-Q и П38 то только сам клеммник.
В идеале конечно, чтобы они сразу в ЧЯ и помещались, чтобы потом отредактировать трассу с помощью интеллектуального соединения, для того чтобы кабель не пересекал чужую панель.
рис1.jpg

рис2.jpg

=================================================================================
Satyr, ты возьмешься за это или....напиши ответ.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось AGorskiy 12 сен 2012, 16:25, всего редактировалось 1 раз.
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.


AGerasimov
знаток Eplan
знаток Eplan
Сообщения: 47
Зарегистрирован: 20 сен 2012, 13:51
Ф.И.О.: Герасимов Александр Евгеньевич

Re: Скрипты и API

Сообщение AGerasimov » 07 окт 2012, 21:26

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

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 12 окт 2012, 13:00

AGorskiy писал(а):Satyr, ты возьмешься за это или....напиши ответ.


Привет. Я возьмусь за это, но когда реализую затрудняюсь ответить. Меня сейчас работой закидали по самое "неболуй")))


Spac80101
новенький
новенький
Сообщения: 2
Зарегистрирован: 12 окт 2012, 16:01
Ф.И.О.: Журавлев Сергей Викторович

Re: Скрипты и API

Сообщение Spac80101 » 13 окт 2012, 11:26

Приветствует, коллеги. Давно использую Eplan и не всегда хватает его функционала в части вывода различных отчетов и автоматизации работы. Хотел бы научится созданию скриптов., а в последствии и API. Подскажите, пожалуйста, с чего начать и какой язык лучше использовать, какое программное обеспечение. Буду благодарен за совет.

[spoiler=от модератора]Сергей, внимательно читайте сообщения темы. Ответ на Ваш вопрос в первом сообщении. Без обид.[/spoiler]

Аватара пользователя

Автор темы
Satyr
знаток Eplan
знаток Eplan
Сообщения: 24
Зарегистрирован: 08 авг 2012, 20:33
Ф.И.О.: Satyr

Re: Скрипты и API

Сообщение Satyr » 13 окт 2012, 15:48

Привет.

C# или VB.net. Для этого будет очень полезна Microsoft Visual Studio .
Последний раз редактировалось AGorskiy 13 окт 2012, 15:57, всего редактировалось 1 раз.
Причина: оверквотинг - зло

Аватара пользователя

Madwolf
знаток Eplan
знаток Eplan
Сообщения: 890
Зарегистрирован: 17 окт 2012, 10:24
Ф.И.О.: Виталий
Благодарил (а): 4 раза
Поблагодарили: 15 раз

Re: Скрипты и API

Сообщение Madwolf » 05 ноя 2012, 12:55

Satyr писал(а):Более свежего хелпа не существует, я знаком с программистом Eplan'а, даже он пользует этот документ. Замечания в дальнейшем учту, в виду того, что пока, код примитивный, расписывать не стал. Хотелось бы услышать какие нибудь не тривиальные задачи для воплощения, и форумчанам хорошо и мне тренировка. Решил упростить работу с точками разрыва, пишите, с удовольствием рассмотрю все пожелания.



Есть задачка, вроде бы простенкая на мой взгляд. Как известно из ГОСТ, перекрестные ссылки которые переходят со страницы на страницу должны быть без стрелочек, тогда как в Еплане со стрелочками по умолчанию. Как бы сделать скрипт, которые меняет символы точек разрыва, которые находятся на разных страницах с "BP" на "BPOL"

Аватара пользователя

aranea
знаток Eplan
знаток Eplan
Сообщения: 519
Зарегистрирован: 21 сен 2012, 21:45
Ф.И.О.: Воробьев Александр
Поблагодарили: 12 раз
Контактная информация:

Re: Скрипты и API

Сообщение aranea » 05 ноя 2012, 14:48

символ точки разрыва хранится в свойстве <20168> Номер символа и скриптом его сходу у меня не получилось изменить
как вариант попробуйте через навигатор точек разрыва, но тогда слетает форматирование и направление
Изображение


AGerasimov
знаток Eplan
знаток Eplan
Сообщения: 47
Зарегистрирован: 20 сен 2012, 13:51
Ф.И.О.: Герасимов Александр Евгеньевич

Re: Скрипты и API

Сообщение AGerasimov » 07 ноя 2012, 20:30

Satyr писал(а):Более свежего хелпа не существует, я знаком с программистом Eplan'а, даже он пользует этот документ. Замечания в дальнейшем учту, в виду того, что пока, код примитивный, расписывать не стал. Хотелось бы услышать какие нибудь не тривиальные задачи для воплощения, и форумчанам хорошо и мне тренировка. Решил упростить работу с точками разрыва, пишите, с удовольствием рассмотрю все пожелания.


Добрый вечер!

А как Вам такая задача: В любом из дополнительных свойств любой страницы проекта требуется автоматически либо по нажатию кнопки получить текстовое значение, содержащее формат рамки листа (А4, А3, А4х2, и.т.п).
Значение формата листа используется для его отображения в отчете, например ведомости документов проекта.

Аватара пользователя

aranea
знаток Eplan
знаток Eplan
Сообщения: 519
Зарегистрирован: 21 сен 2012, 21:45
Ф.И.О.: Воробьев Александр
Поблагодарили: 12 раз
Контактная информация:

Re: Скрипты и API

Сообщение aranea » 08 ноя 2012, 19:08

идея хороша
в свойствах рамки есть свойства <12033> Рамочные размеры оси Х и <12034> Рамочные размеры оси Y - можно пытаться читать размеры
есть <18011> Описание (форма, рамка, контур) - можно здесь указывать формат чертежа (А4, А3, А4х2, и.т.п). либо в какое-то другое свойство
но дальше пока тупик: по этим номерам в хэлпе нет ничего, т.е. непонятно как от страницы добраться до свойств рамки

ps. нашел недокументированный класс PlotFrame, через который можно получить физические размеры рамки на листе (независимо что указано в свойствах 12033, 12034)
Page.PlotFrame.Size.X - размер рамки (и страницы) без учета масштаба
Page.Size.X - размер страницы с учетом масштаба

если есть желание и лицензия на загрузку API Add-Ins - кидайте в личку желаемые форматы, размеры и в какое свойство страницы хотите получить название формата, попробую сделать =)
Изображение


Вернуться в «Eplan Electric P8»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость