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

Простейшая автоматизация с помощью отчётов таблиц

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

Ахааааа!)) Не были бы мы проектировщиками если бы не под силу было взломать язык этот программистский!)))

Вообщем пару часов штудирования и я все же научился из одной таблицы брать значению в другую)

 

Кому возможно пригодится. В двух словах:

Есть две таблицы, одна со значениями, вторая - пустая.

Хотим значение (или текст) из первой таблицы (ячейка А1) вставить во вторую таблицу.

Входим в редактор таблицы №2. Правой кнопкой мыши кликаем в ячейку, в которую хотим что-то вставить из таблицы №1.

В выпавшем меню выбираем "Выражение". Открывается "Построитель выражений".

В левом нижнем углу этого окошка кликаем "Присоединить объект".

Нам дают выбрать этот самый объект и мы выбираем таблицу №1 (просто по ней кликаем) и жмем Enter.

Перед нами снова открывается "Построитель выражений". Мы видим что этому объекту (Таблице№1 присваивается имя Object1). Здесь же в верхнем поле "Построителя выражений" вводим =Object1.A1

Жмем Enter. Вуаля)

 

 

Теперь еще вопрос к знающим) Проблема всего вышеописанного в том, что если теперь в таблице№1 вставить строку, то связь уплывает :(

Т.е. если в таблице№1 "Вставить строку", то ячейка А1 уже получается пустая, а таблица№2 по прежнему тянет значение конкретно из адреса ячейки А1 таблицы №1.. Вот это не очень хорошо конечно.. Можно ли это как то подшаманить?

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


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

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

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


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

Теперь еще вопрос к знающим) Проблема всего вышеописанного в том, что если теперь в таблице№1 вставить строку, то связь уплывает :(

Т.е. если в таблице№1 "Вставить строку", то ячейка А1 уже получается пустая, а таблица№2 по прежнему тянет значение конкретно из адреса ячейки А1 таблицы №1.. Вот это не очень хорошо конечно.. Можно ли это как то подшаманить?

Если ячеек немного, их можно сделать именованными.

В свойствах ячейки в комментарии пишите, например, "ячейка 1". И теперь на неё можно будет ссылаться =Object1."ячейка 1"

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


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

Если ячеек немного, их можно сделать именованными.

В свойствах ячейки в комментарии пишите, например, "ячейка 1". И теперь на неё можно будет ссылаться =Object1."ячейка 1"

Ух как. Спасибо. Так даже удобнее. Если логически обозвать ячейку изначально, то потом можно на нее легко сослаться, не вспоминая какая она там А1 или А3 и т.д.) Еще раз спасибо!

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


Ссылка на сообщение
Поделиться на другие сайты
Можно ли как то из одной таблицы (из определенной ячейки) скопировать значение (или же текст) в другую таблицу (в определенную ячейку). Все в рамках одного файла DWG соответственно.

Мы нашли ответ на этот вопрос в рамках одного файла DWG

 

1. А можно ли сделать связь на ячейку которая в другом файле?

2. Предположу что можно, и нужно прописать правильно путь к ячейке. Не подскажете как это сделать? Вот так выглядит формула со ссылкой на именованную ячейку внутри одного файла =Object1."проба" Предполагаю что между "=" и"Object1" должен быть как то обозначен файл на который ссылаться.

 

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

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


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

1. Прочитал в интернете следующее

.............Изменения коснулись и табличных отчетов nanoCAD СПДС. Автоматическое формирование отчетов ранее предполагало передачу свойств объектов чертежа в таблицы. Теперь предусмотрена возможность менять свойства объектов, связанных с отчетом, непосредственно из таблицы. Для визуального контроля на чертеже подсвечиваются объекты, свойства которых связаны с текущей строчкой отчета...............

 

2. В примере от Sampai, в прикрепленном файле можно реально увидеть как это работает для выносок.

 

А какие еще свойства, и каких объектов можно менять из таблицы?

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

А также может можно менять из таблицы положение объектов на чертеже?

 

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

 

Заранее спасибо.

 

P.S.

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

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


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

Связь с внешним файлом тоько если через подключение внешних ссылок пробовать можно

Параметрические объекты можно создавать достаточно сложные. У меня на вики есть примеры

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


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

1. Прочитал в интернете следующее

.............Изменения коснулись и табличных отчетов nanoCAD СПДС. Автоматическое формирование отчетов ранее предполагало передачу свойств объектов чертежа в таблицы. Теперь предусмотрена возможность менять свойства объектов, связанных с отчетом, непосредственно из таблицы. Для визуального контроля на чертеже подсвечиваются объекты, свойства которых связаны с текущей строчкой отчета...............

 

2. В примере от Sampai, в прикрепленном файле можно реально увидеть как это работает для выносок.

 

А какие еще свойства, и каких объектов можно менять из таблицы?

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

А также может можно менять из таблицы положение объектов на чертеже?

 

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

 

Заранее спасибо.

 

P.S.

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

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

 

для тех, кому интересно - могу рассказать, как это (примерно, примерно!) выглядит изнутри. ну, или как может выглядеть :)

ну, а кому не интересно - можете смело пропускать остаток поста! :)

 

очевидная вещь - если я хочу наложить какую-либо зависимость, то надо отслеживать изменения того объекта, от которого что-то зависит. и как-то на них реагировать :) подобные вещи осуществляются посредством специальных реакторов. Их (реакторов) бывает много разных. в основном, изменения объекта можно отловить двумя способами - у каждого есть свои плюсы и минусы.

1) можно установить так называемый DatabaseReactor - он ставится на dwg целиком, и, соответственно, отслеживает ВСЕ изменения, кторорые происходят с этим датабэйзом. плюсы понятны - он может быть один, и при этом отслеживать все на свете, понятно где его ловить и все такое. но при этом минусы - тоже понятны. поскольку он получает нотификацию обо всех изменениях - он будет срабатывать при любом измнении (в большинстве случаев - вхолостую - то есть это потенциальные тормоза), ему надо каждый раз разбираться - что за объект поменяли, надо ли на это реагировать и как именно.

2) альтернатива - ObjectReactor. Он ставится на конкретный объект, и реагирует только на изменения этого объекта. тут все строго наоборот - холостых срабатываний нет, внутреннее устройство проще, но ракторов надо ставить много, и обработка начинает "размазываться".

 

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

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

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

 

это я все к чему... а к тому, что в общем случае - все сложно! :)

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

 

зы : ежели чего - сорри а арфографие и пунктуацие... :)

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


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

Воистину, программисты - люди, которые не только могут найти выход из крайне сложной проблемы, но могут найти туда вход =)

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


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

Спасибо Вам.

1. Посмотрел я на Вики, прочитал ваш пост и сделал выводы что в параметрические лезть не стану :).

2. Про "возможность менять свойства объектов связанных с отчетом из таблицы", тоже изначально немного сомневался.

3. А вот по поводу внешних ссылок, думаю это будет интересно.

 

Вот искал уже, и в редакторе таблиц нашел одну функцию для ячейки This.File "Внешний источник-файл в одном из форматов поддерживаемых таблицей"

А когда я взял и просто скопировал значения из таблицы OpenOffice, то функция в списке прочих выделена, и в ней прописан путь откуда я вставил данные. Присвоил ячейке эту функцию, но она стала отображает путь к файлу откуда скопировал :wacko:.

Все это меня наводит на мысль, что связь создать возможно, да еще и с таблицы OpenOffice можно. Будем искать :)

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


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

Ух ты нашел кое что :D . Не надо формулы применять даже.

 

Когда я просто скопировал из таблицы OpenOffice и вставил в таблицу nanoCad то там связь уже какая то есть. Но она не обновляется автоматически когда я перезапускаю nanoCad.

Чтобы связь обновилась нужно зайти в редактор таблицы и нажать кнопку "Обновить таблицу из внешнего источника". Изменения которые были произведены в OpenOffice обновляются в nanoCad.

Все настолько просто, я даже не ожидал :D

 

Интересно только еще, можно ли сделать так чтобы эти связи обновлялись автоматически, после того как открываю файл nanoCad?

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


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

Видно обновлять таблицу автоматически после открытия файла можно с помощью скрипта только.

 

Ну и то что есть - очень даже хорошо! :)

Спасибо разработчикам!

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


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

У меня такой вопрос- в экспликации полов как можно сделать так, чтобы автоматически было в столбце "номер помещения" перечисление номеров помещений с типом пола , допустим 1, а не группирование? как-то не получается у меня сделать так.. и как настроить в таблице округление значения? Или подскажите, как настроить в таблицах по умолчанию округление до 2-го знака после запятой

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

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


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

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

 

http://www.spds.ru/info/faq/qa_0044.html

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


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

Фукнционал таблиц конечно интересный. Особенно преобразование таблицы AutoCAD в nanoCAD. Но после этого таблица перестает редактироваться в AutoCAD, при определенных настройках AutoCAD может вообще не читаться. Приходится разбивать таблицу на отдельные элементы. Что не очень удобно, если впоследствии надо править проект.

Есть возможность преобразования таблицы nanoCAD обратно в AutoCAD?

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


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

Можно, если под Автокадом установлено приложение MechaniCS Или СПДС GraphiCS.

Это касается НЕ только таблиц, но и всех элементов оформления.

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


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

Можно, если под Автокадом установлено приложение MechaniCS Или СПДС GraphiCS.

Это касается только таблиц, но и всех элементов оформления.

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

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


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

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

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


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

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

Можете передавать им pdf версию

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


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

Можете передавать им pdf версию

Ну зачем так радикально? Можно установить nanoCAD Free http://www.nanocad.ru/products/detail.php?ID=371&gclid=CLO78sGNsrwCFcuQcgodAmoAew

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


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

Большинство работает в AutoCAD все таки. Заказчику нет смысла подстраиваться под мой софт. В ТЗ сказано отдать в формате AutoCAD и никого не будет волновать что чертеж сделан в другой программе, главное чтоб он корректно читался. А если он корректно не читается, то мне как проектировщику надо делать постоянные лишние телодвижения чтоб адаптировать свои чертежи под AutoCAD. Приходиться и на AutoCAD их проверять. Бывает что работу заказывает институт, у которого свои правила оформления документации. Работают они именно с AutoCAD. C меня требуют соответствие стилей выносок таблиц. И все это должно корректно читаться и редактироваться в AutoCADe, таблицы из линий недопустимы.

nanoCAD никто себе ставить не будет. Потому что просто многие привыкли работать с AutoCAD

В nanoCAD Free уже можно полноценно работать, но без возможности полноценного импорта в AutoCAD все таки приходиться работать в AutoCADe.

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

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


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

Бывает что работу заказывает институт, у которого свои правила оформления документации. Работают они именно с AutoCAD.

Для работы с "пользовательскими объектами" autodesk использует технологию Enebler'ов. В полном соответствии с этой технологией нужно пользоваться СПДС GraphiCS Enabler Есть еще вариант, установить на автокад СПДС в триальном режиме и запустить конвертацию таблиц СПДС в таблицы автокад.

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


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

Для работы с "пользовательскими объектами" autodesk использует технологию Enebler'ов. В полном соответствии с этой технологией нужно пользоваться СПДС GraphiCS Enabler Есть еще вариант, установить на автокад СПДС в триальном режиме и запустить конвертацию таблиц СПДС в таблицы автокад.

Это все хорошо, но к чужим компам я доступа не имею. Ставить что либо и советовать что ставить я не могу. Мне нужно подготовить документ в nanoCAD так, чтобы его не приходилось потом править в AutoCADe и графические элементы (таблицы, выноски и прочее) были доступны для редактирования и в AutoCAD и в nanoCAD. В противном случае вся эта бесплатность nanoCAD оборачивается большими трудозатратами при выпуске проекта. Что в итоге все равно требует наличия лицензии AutoCAD (или других платных программ) чтоб довести проект до ума.

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


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

"до ума" - проще ум довести =)

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


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

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

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

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

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

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

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

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

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

Загрузка...

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