Jump to content
  • entries
    5
  • comments
    38
  • views
    1,533

Создание СПДС объектов в пространстве модели по таблице Excel.


Ivanco

266 views

 Share

### Назначение:
Создание СПДС объектов в пространстве модели по таблице Excel.

 

#### Логика работы:
1. Скрипт читает указанный файл Excel.
2. В файле должны быть указаны:
    * ID объектов (из базы СПДС)
    * координаты вставки
    * параметры объекта которые необходимо применить к объекту.
3. Одна строка файла равно один объект СПДС.
4. Объект по ID ищется в БД СПДС, к нему применяются параметры.
5. Объект вставляется по координатам.

 

#### Рабочие файлы:

SpdsObjByExcelParams_v1.0.0.zip

Params.xlsm

 

Исходники на GitHub

 

#### Важно:

1. Структура таблицы должна быть как в приложенном файле. Кол-во параметров можно расширять вправо.
2. ID и параметры можно найти в "Мастер объектов" СПДС.
3. Чтение Excel реализовано через Open XML библиотеки.
    DocumentFormat.OpenXml.dll - должна находится в папке со основной dll.

 

P.S. часть парметров объекта "вид" и "имплементация" жестко прописана в коде.
Поставляется "как есть".

 

#### Пример:

SpdsObjByExcelTable.thumb.gif.2f13fee1549f98ff8a50cd93ce31ca2d.gif

Edited by Ivanco

 Share

6 Comments


Recommended Comments

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

Это ведь проще, чем конвертить в эксель и обратно.
Или так нельзя?

добавлено через 0 минут

Так-то механизм прям то, что надо. Единственное смущающее это необходимость экспорта-импорта данных. Это убивает всю полезность.

Link to comment
5 минут назад, Mитька сказал:

Это ведь проще, чем конвертить в эксель и обратно.

данные в этой задаче (координаты) появлялись извне - поэтому Excel.
заказчик так задачу ставил.
 

 

7 минут назад, Mитька сказал:

Или так нельзя?

можно из таблицы брать.

Link to comment
6 минут назад, Ivanco сказал:

можно из таблицы брать

А что технически нужно, чтобы взять исходники и переиначить их под себя? Multicad?

Link to comment
3 минуты назад, Mитька сказал:

А что технически нужно, чтобы взять исходники и переиначить их под себя? Multicad?

взять. переиначить. знание C#, и nanoCAD API. ну и nanoСПДС, исходя из задачи.
написано да, частью на Multicad.

Link to comment
1 час назад, Mитька сказал:

Так-то механизм прям то, что надо.

Тогда я вообще не понял, что тебе нужно. Ты что то про параметры и зависимости писал...

 

image.png

Link to comment
3 часа назад, MCAD сказал:

Тогда я вообще не понял, что тебе нужно. Ты что то про параметры и зависимости писал...

То, для чего я спрашивал про параметры и зависимости, в этом случае реализовано через Эксель. Я, задавая вопрос, такого варианта реализации в голове не держал вообще. Потому и говорю, что - да, это рабочая схема, но по факту меня вряд ли устроит в итоге, потому и пишу про таблички (от содержимого её ячеек же тож можно зависимость подцеплять, если хочется при необходимости). Замени "первая строка выноски" на "именованная ячейка таблицы" и с точки зрения LISP-программы получишь ровно тот же механизм экстракции данных.

  • Like 1
Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...