Jump to content

Макрос для SW файлов для показа куда входит фаил


Recommended Posts

Maik812

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

Если фаил деталь или сборка входит в многие сборки то хочется как то перечислить эти сборки скажем через примерно так "1#  ВГД002.001.002 СБ",  "2# АБС.001.003хх ##имя конфигурации"

Ну и количество штук входящих туда тоже было бы круто.

Если кто будет делать то по выводу отдельно обсудить нужно...

  • Нравится 1
Link to post
Share on other sites


UnPinned posts
Kir95
9 минут назад, Maik812 сказал:
11 минут назад, Kir95 сказал:

Ты хочешь сделать спецификацию "наоборот", когда в детали прописываются все сборки?

не совсем.. это аналогичные свойства PDM. PDM на коленке так сказать :)

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

В частности например разделы спецификаци например или классификации

Ну так и пользуйся солидовской спецификацией, зачем этот тотал-костыль?

Link to post
Share on other sites
Maik812
1 минуту назад, Kir95 сказал:

пользуйся солидовской спецификацией,

ну это все равно что сказать зачем PDM если есть спецификация.

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

 

Link to post
Share on other sites
Kir95
1 минуту назад, Maik812 сказал:

ну это все равно что сказать зачем PDM если есть спецификация

Именно это я и говорю. Зачем тебе, к примеру, лифт, если ты живёшь на 1 этаже? )

  • Нравится 1
Link to post
Share on other sites
Maik812

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

сколько труб 40х60 по весу или по длине и труб 60х60 и тд в проектируемой модели. быстро прикинуть.. еще не закончено проектирование.

Link to post
Share on other sites
Kir95
9 минут назад, Maik812 сказал:

сколько труб 40х60 по весу или по длине и труб 60х60 и тд в проектируемой модели. быстро прикинуть.. еще не закончено проектирование

Так прикидывается из солидовского проекта, наверное, а не просто "из папки" в проводнике? Для чего тоталкомандер?

Link to post
Share on other sites
Maik812
2 минуты назад, Kir95 сказал:

солидовского проекта, наверное, а не просто "из папки" в проводнике? Для чего тоталкомандер?

"Проект" не удобный в живой работе, проводник и близко не тянет по возможностям Тотала. У тотала в 100 раз больше всего...

Я и заносить могу из него в  mPDM автоматом значения любые и потом при конвертации формата или версии солида обратно записать в формат обратным действм скажем так Solidworks(Geometrika)-->mPDM сначала , потом конвертнул графику в др формат *Компас и еще какой , переписал основной поток (графику) и уже  mPDM-->Kompas3d.wlx в ячейки компас формата занес и специя в компасе как родная. Так же и с Солидом можно в обратную версию, но у меня нет плагина чтоб писать Solidworks 2021.

При том что просмотр и вид осуществляется в 100 раз удобней и быстрей то можно сделать по сути подобие Workflow , кто проверил, когда ушла заказчику, принята, пошла в производство и тд.. Да просто банально напечатан чертеж или нет, сдан на подпись, принят и тд..

Link to post
Share on other sites
Krusnik
2 часа назад, Maik812 сказал:

ну это все равно что сказать зачем PDM если есть спецификация.

Таким способом хорошо отучать от PDM особо жаждущих.

Достаточно поставить одному человеку задачу сгенерировать спецификацию из структуры в PDM, и у всего коллектива отпадает желание работать в PDM. :spiteful:

 

Ставить PDM и вносить туда тонны данных ради создания спецификаций - это реальное дно. :bad: 

  • Нравится 1
Link to post
Share on other sites
Maik812
8 минут назад, Krusnik сказал:

Таким способом хорошо отучать от PDM особо жаждущих.

Раскажи это@streamdown :smile:

Link to post
Share on other sites
streamdown
3 часа назад, Krusnik сказал:

сгенерировать спецификацию из структуры в PDM

И не только её. Все, буквально даже ВСЕвозможные отчёты всех размеров, форм и содержания. Любая сортировка. Любая группировка. Абсолютно подвластная настройка любых форматов как с нуля, так и с исходных данных.

 

 

3 часа назад, Krusnik сказал:

ради создания спецификаций

Согласен. Все эти PDM/PLM/ERP ни разу не для конструкторского отдела из 2-х человек, КД которых не выходит за границы.... комнаты. А для одного топискстартера и "тотолкомандера" достаточно.

Link to post
Share on other sites
Maik812
Posted (edited)
3 часа назад, streamdown сказал:

А для одного топискстартера и "тотолкомандера" достаточно.

Я думаешь один кто ТС пользуется ?

 

3 часа назад, streamdown сказал:

И не только её. Все, буквально даже ВСЕвозможные отчёты всех размеров, форм и содержания. Любая сортировка. Любая группировка. Абсолютно подвластная настройка любых форматов как с нуля, так и с исходных данных.

За какие деньги и для малого КБ это смысла мало так как цена даже 1 инсталяции и настройки это +100 тыс каждому в КБ конструктору в год.. тесть +10т.р к зарплате..

Это нахрен нужно.. чтоб файлы искать или сортировать..??? Спецификации генерировать полно инструментов.

А теперь сравним давай

1. Есть в ПДМ геометрический поиск ?

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

(Был тут товарищ хотел было сделать такое в своей программе, пропал)

3. Просмотр из архива чертежа или файла?

4. Интеграция с другими форматами САПР ?

5. Смотреть все остальные файлы других форматов и еще эскизы пролистывать как маленькие доки скажем 500х500 dpi?

6. Пердать все значения пользовательские типаь"Обозначение "и тд в др формат другой совсем САПР или предыдущию версию САПР?

И цена главное , ну тотал для конторы стоит 20$ ,  для частника принципе бесплатно, нажимай 1..2.3.

 

Edited by Maik812
Link to post
Share on other sites
streamdown
57 минут назад, Maik812 сказал:

И цена главное

Чего ты прицепился))

 

7 часов назад, Krusnik сказал:

Ставить PDM ...это реальное дно.

в твоём случае

58 минут назад, Maik812 сказал:

для частника принципе бесплатно

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

Link to post
Share on other sites
Maik812
2 часа назад, streamdown сказал:

Чего ты прицепился))

 

2 часа назад, streamdown сказал:

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

Это все твои ответы.

.. жаль

Вот как стал в конторе работать чтоб КБ всяким втюхивать софт якобы улучшающий "жизнь" КБ то все.. из конструктора в продованы... Так ты реально то продай чтоб действительно была прибыль у покупателя от этого...

Но нет смысла в PDM если 1-5 челов работают в КБ .. Ну чего спорить..

Ну вот делаю для себя и тем кому PDM не нужен.. Ну тебе не нравится Total commander а меня бесит тупой проводник.

Проводничек для домохозяек делался..

Link to post
Share on other sites
Kelny
3 часа назад, Maik812 сказал:

А теперь сравним давай

В сравнении с ТС?

3 часа назад, Maik812 сказал:

1. Есть в ПДМ геометрический поиск ?

При наличии соответсвующих полей найдёт.

3 часа назад, Maik812 сказал:

2. Перевод на стандарт или другой язык?

А кто это может делать автоматом? То есть можно сделать чертёж по ГОСТ, а потом галочку например на ISO поменять и можно отправлять в другую страну?

Дерево при желании можно перевести: https://kelnyproject.ucoz.ru/load/renamed_features_in_featuremanager/7-1-0-21

3 часа назад, Maik812 сказал:

3. Просмотр из архива чертежа или файла?

Ну если есть доступ смотри на здоровье.

3 часа назад, Maik812 сказал:

4. Интеграция с другими форматами САПР ?

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

А с точки зрения загрузки файла в файловое хранилище, то всё равно какие файлы туда грузить.

3 часа назад, Maik812 сказал:

5. Смотреть все остальные файлы других форматов и еще эскизы пролистывать как маленькие доки скажем 500х500 dpi?

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

3 часа назад, Maik812 сказал:

6. Пердать все значения пользовательские типаь"Обозначение "и тд в др формат другой совсем САПР или предыдущию версию САПР?

При наличии соответствующей заглушки любой каприз. А предыдущая версия это не про Solidworks - тут движение только вперёд и назад хода нет.

 

2 минуты назад, Maik812 сказал:

втюхивать софт якобы улучшающий "жизнь" КБ то все.. из конструктора в продованы... 

Вы внимательно читали информацию на сайте? Инструмент бесплатен, если вы купили там Solidworks. Аналогичное предложение было от SWR, со своими утилитами, когда они ещё были основными официалами.

6 минут назад, Maik812 сказал:

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

О какой прибыли потребителя речь? Покупатель на то и покупатель что бы иметь всегда убыток/приобретение.

Где вы видели магазин продающий товар, но при этом прибыль получает покупатель?

9 минут назад, Maik812 сказал:

Ну вот делаю для себя и тем кому PDM не нужен.. Ну тебе не нравится Total commander а меня бесит тупой проводник.

Проводничек для домохозяек делался..

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

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

 

Link to post
Share on other sites
Maik812
Posted (edited)
38 минут назад, Kelny сказал:

О какой прибыли потребителя речь? Покупатель на то и покупатель что бы иметь всегда убыток/приобретение.

Где вы видели магазин продающий товар, но при этом прибыль получает покупатель?

Какой смешной.. Вот рассмешил меня!!  Я тебе тайну страшную открою что любой бизнес покупает только если это приносит прибыль а не убыток.. Просто прибыль она бывает разная время это тоже деньги.. при чем время самый дорогой продукт, так как невосполним..

Машину в такси покупают чтоб она себя отбила, и компьютер покупают чтоб отбил и плоттер и в типографию станок чтоб принес прибыль и отбил. И не поверишь самолеты по 200 мл баксов чтоб принес прибыль :)

 

38 минут назад, Kelny сказал:

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

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

Вот именно !!! расскажи этим продаваном PDM !!!! И Я ВЫБИРАЮ TOTAL COMMANDER :maladets:

38 минут назад, Kelny сказал:

Вы внимательно читали информацию на сайте? Инструмент бесплатен, если вы купили там Solidworks. Аналогичное предложение было от SWR, со своими утилитами, когда они ещё были основными официалами.

Да конечно бесплатен , это как за коврик просить плату при входе в квартиру за 10 миллионов что ты отдал за нее..:5a33a36721bd3_3DSmiles(15):

 

38 минут назад, Kelny сказал:

При наличии соответствующей заглушки любой каприз. А предыдущая версия это не про Solidworks - тут движение только вперёд и назад хода нет.

 

38 минут назад, Kelny сказал:

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

Конечно при подключенной программе или библиотеке (crossmanager или CAD Exchanger например я прикрутил), как и любой САПР с купленными библиотеками или подключенными его производителем.

Бесплатные тоже есть и плагины для конвертации например http://wincmd.ru/plugring/pfrep.html

38 минут назад, Kelny сказал:

А кто это может делать автоматом? То есть можно сделать чертёж по ГОСТ, а потом галочку например на ISO п

Да предсмставь себе при определенных действиях и написанного шаблона :)

38 минут назад, Kelny сказал:

При наличии соответсвующих полей найдёт.

Да естественно и ТС ищет фото показать ? в сакросе геометрика смотри.. А Вот имя сможет PDM поменять так же просто ? А фильтр удобный там есть или тупой поиск?

38 минут назад, Kelny сказал:

В сравнении с ТС?

 

Да в сравнение с PDM за куеву тучу бабок или за лицензию на SW

ТС бесплатно делает все это и это написано именно как то что TC умеет делать с настройками и плагинами. Как и любой САПР и PDM все при соответствующих купленных и встроенных делают подобное. Вопрос тут в том что кто то считает тут что я "сову на глобус натягиваю" при этом я еще раз Я НЕ ПРОГРАММИРУЮ, Я НЕ УМЕЮ ПИСАТЬ ПРОГРАММЫ И МАКРОСЫ

4 часа назад, Maik812 сказал:

За какие деньги и для малого КБ это смысла мало так как цена даже 1 инсталяции и настройки это +100 тыс каждому в КБ конструктору в год.. тесть +10т.р к зарплате..

Это нахрен нужно.. чтоб файлы искать или сортировать..??? Спецификации генерировать полно инструментов.

А теперь сравним давай

1. Есть в ПДМ геометрический поиск ?

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

(Был тут товарищ хотел было сделать такое в своей программе, пропал)

3. Просмотр из архива чертежа или файла?

4. Интеграция с другими форматами САПР ?

5. Смотреть все остальные файлы других форматов и еще эскизы пролистывать как маленькие доки скажем 500х500 dpi?

6. Пердать все значения пользовательские типаь"Обозначение "и тд в др формат другой совсем САПР или предыдущию версию САПР?

И цена главное , ну тотал для конторы стоит 20$ ,  для частника принципе бесплатно, нажимай 1..2.3.

 

Все ЭТО все с 1-6 пункт  Total commander делает без программирование с моей стороны (я изменяю существующие плагины и их имя для удобства) а использования макросов написаны форумчанами и др программистами которые делали их для всех бесплатно.

 

38 минут назад, Kelny сказал:

При наличии соответствующей заглушки любой каприз. А предыдущая версия это не про Solidworks - тут движение только вперёд и назад хода нет.

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

Edited by Maik812
Link to post
Share on other sites
streamdown

Опять слил весь свой топик в тёрки за "тотолкомандер". А прикинь, если для тебя реально начать что-то разрабатывать? Писать программу для тебя! Да там ТЗ будет расти каждый день, потому-то у тебя в голове полнейшая каша. Ты мало представляешь что такое электронный документооборот вообще, для тебя это копипаста файлов и свойств из файлов. За всё время на форуме ты только и показываешь плагины, но нихрена не работу. Ты что, только по панелькам в "тотолкомандере" клацаешь? ))))

И смари, главное: сам начал ныть про PDM ! А потом сам же начал засирать всё.

Ну ... делай свои кирпичи дальше :biggrin:

Edited by streamdown
Link to post
Share on other sites
Kelny
6 часов назад, Maik812 сказал:

ТС бесплатно делает все это и это написано именно как то что TC умеет делать с настройками и плагинами. Как и любой САПР и PDM все при соответствующих купленных и встроенных делают подобное.

Тогда уже пора ТС использовать не только в качестве ПДМ, но и в качестве САПР.

 

6 часов назад, Maik812 сказал:

Я НЕ ПРОГРАММИРУЮ, Я НЕ УМЕЮ ПИСАТЬ ПРОГРАММЫ И МАКРОСЫ

Нет там ни чего сложного, самое время начать.

 

6 часов назад, Maik812 сказал:

Все ЭТО все с 1-6 пункт  Total commander делает без программирование с моей стороны

Правильно, когда уже кто-то запрограммировал, самому уже писать не нужно.

 

6 часов назад, Maik812 сказал:

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

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

Link to post
Share on other sites
Krusnik
15 часов назад, streamdown сказал:

И не только её. Все, буквально даже ВСЕвозможные отчёты всех размеров, форм и содержания. Любая сортировка. Любая группировка. Абсолютно подвластная настройка любых форматов как с нуля, так и с исходных данных.

Да знаю я всё это. Можно было не париться.

Link to post
Share on other sites
Maik812
1 час назад, Kelny сказал:

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

 

22 часа назад, Maik812 сказал:

Solidworks(Geometrika)-->mPDM сначала , потом конвертнул графику в др формат *Компас и еще какой , переписал основной поток (графику) и уже  mPDM-->Kompas3d.wlx в ячейки компас формата занес и специя в компасе как родная. Так же и с Солидом можно в обратную версию, но у меня нет плагина чтоб писать Solidworks 2021.

 

нет карточки в ТС я в поток записываю.

При чем все автоматом через шаблоны

Изменить в атрибутах.gif

Link to post
Share on other sites
Kir95

 Вот так выйдешь на новую работу, спросишь: "где тут в сетке стандартные профили?", а тебе в ответ один коллега тоталкомандер скажет ставить, (ты ж, мол, не домохозяйка, чтоб проводничком искать), другой пдм поднимать предложит, третий про капитализм задвинет (такой, если и покажет, то в обед точно булочку отберёт ) )

 

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

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

Скрытый текст

Option Explicit
    Dim swApp               As SldWorks.SldWorks
    Dim swModel             As SldWorks.ModelDoc2
    Dim swSelMgr            As SldWorks.SelectionMgr
    Dim swComp              As SldWorks.Component2
    Dim swRefDoc            As SldWorks.ModelDoc2
    Dim bool                As Boolean
    Dim path                As String
    Dim filename            As String
    Dim swComments          As String
    Dim sCurrentDateTime    As Date
    Dim swErrors            As Long
    Dim swWarnings          As Long
    Dim i                   As Integer
Sub main()
On Error GoTo swMsg
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swSelMgr = swModel.SelectionManager
    path = swModel.GetPathName
    filename = Mid$(path, InStrRev(path, "\") + 1) ' With extension
    filename = Left$(filename, InStrRev(filename, ".") - 1) ' Remove extension
For i = 1 To swSelMgr.GetSelectedObjectCount2(-1)
    Set swComp = swSelMgr.GetSelectedObject6(i, -1)
    Set swRefDoc = swComp.GetModelDoc2
    swComments = swRefDoc.SummaryInfo(swSumInfoComment)
    sCurrentDateTime = Now()
    If swComments = "" Then
     swRefDoc.SummaryInfo(swSumInfoComment) = filename & vbTab & Format(sCurrentDateTime, "YYYY-MMM-DD HH:MM:SS")
    Else
     swRefDoc.SummaryInfo(swSumInfoComment) = swComments & vbCrLf & filename & vbTab & Format(sCurrentDateTime, "YYYY-MMM-DD HH:MM:SS")
    End If
Next
    swModel.ClearSelection2 True
    bool = swModel.Save3(5, swErrors, swWarnings)
Exit Sub
swMsg:
MsgBox "Выберите компонент в дереве сборки и запустите макрос"
End Sub

 

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

Скрытый текст

Option Explicit
    Dim swApp               As SldWorks.SldWorks
    Dim swModel             As SldWorks.ModelDoc2
    Dim swSelMgr            As SldWorks.SelectionMgr
    Dim swComp              As SldWorks.Component2
    Dim swRefDoc            As SldWorks.ModelDoc2
Sub main()
On Error GoTo swMsg
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swSelMgr = swModel.SelectionManager
    Set swComp = swSelMgr.GetSelectedObject6(1, -1)
    Set swRefDoc = swComp.GetModelDoc2
    swRefDoc.FileSummaryInfo
    swModel.ClearSelection2 True
    Exit Sub
swMsg:
MsgBox "Выберите компонент в дереве сборки и запустите макрос"
End Sub

 

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

 

  • Чемпион 2
Link to post
Share on other sites
Maik812

Да давайте не будем флудить в этой теме.

КОМУ НУЖНО PDM ПИШЕТ В ВЕТКАХ ПРО PDM. ЕСЛИ МНЕ НУЖНО БУДЕТ PDM Я СКАЖУ ОБ ЭТОМ 

 

1 час назад, Kir95 сказал:

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

Можно как то правильно добавить это в Geometrika   чтоб через # прописывал это свойство?

Link to post
Share on other sites
Maik812
Posted (edited)
11 минут назад, Snake 60 сказал:

не откажет.

Я писал про проблему ему, ну молчит.

Есть там и проблема с именим  конфигурации и номером #1....#n

так как смена перетаскивание или сортировка конфигураций дает не верное соответствие между названием и номером № #n  конфигурации.

 

 

Тут вопрос вообще то идиалоги так сказать перенести инфу всю в сам фаил . Не создавать систем PDM с карточками или сервером а в сам фаил вносить, все в поля пользовательские и ими оперировать.

Edited by Maik812
Link to post
Share on other sites
Kir95
14.04.2021 в 14:10, Maik812 сказал:

Если фаил деталь или сборка входит в многие сборки то хочется как то перечислить эти сборки скажем через примерно так "1#  ВГД002.001.002 СБ",  "2# АБС.001.003хх ##имя конфигурации"

 

Что-то типа "спецификации наоборот" ) На картинке внизу строки, которые заносит макрос в "Заметки" на вкладку "Суммарная информация" свойств файла

 

Где используется.jpg

 

Получилось сделать нумерацию строк по типу "001#", (есть в VBA  "Split", который разбивает текст на части). Добавил проверку на существование идентичных строк, чтоб не дублировать записи и не добавлялась запись для исключённого из спецификации компонента.

Макрос

Скрытый текст

    Dim swApp               As SldWorks.SldWorks
    Dim swModel             As ModelDoc2
    Dim myAsy               As AssemblyDoc
    Dim myCmps              As Variant
    Dim Cfg                 As String
    Dim CmpDoc              As ModelDoc2
    Dim bool                As Boolean
    Dim path                As String
    Dim filename            As String
    Dim swComments          As String
    Dim sCurrentDateTime    As Date
    Dim i                   As Long
    Dim j                   As Integer
    Dim k                   As Integer
    Dim TmpStr              As Variant
    Dim CmprStr             As String
    Dim CmprStrA            As Variant
    Dim CmprStrB            As Variant
    Dim CmprStrRes          As Integer
    Dim swCnfMgr            As SldWorks.ConfigurationManager
    Dim AsyCnf              As SldWorks.Configuration
    Dim swSelMgr            As SldWorks.SelectionMgr
    Dim myCmp               As Component2
    Dim swErrors            As Long
    Dim swWarnings          As Long
'2021/04/26
Option Explicit
   Sub main()
   On Error GoTo swMsg
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swSelMgr = swModel.SelectionManager
    Set swCnfMgr = swModel.ConfigurationManager
    Set AsyCnf = swCnfMgr.ActiveConfiguration
    Set myAsy = swModel
    
    path = swModel.GetPathName
    filename = Mid$(path, InStrRev(path, "\") + 1) ' With extension
    filename = Left$(filename, InStrRev(filename, ".") - 1) ' Remove extension

    myCmps = myAsy.GetComponents(False)
    
    Set myCmp = swSelMgr.GetSelectedObject6(1, -1)
        If myCmp Is Nothing Then
            MsgBox ("Выберите решённые компоненты в дереве сборки и запустите макрос")
            Exit Sub
        End If

 

Инфу можно скопипастить в екель, сам ексель связать или просто вложить в файл компонента

 

Где используется-ексель.jpg

 

 

Где используется-проводник.jpg

 

С количеством сложнее. Если сборка многоуровневая и есть исключённые из спецификации компоненты, ни один из попадавшихся макросов не считал количество правильно. У Артёма Татуревича на сайте есть классный макрос (за секунду создаёт одноуровневую спецификацию в виде текста), но и у него детали попадают в общее количество, хотя родительский компонент искючён из спецификации. 

https://www.codestack.net/solidworks-api/document/assembly/compose-flat-bom/

 

В общем, спасибо Майку "ТоталКомандиру" за идею с использованием свойств файла, видимых в проводнике )

 

Где используется-проводник свойства файла.jpg

  • Чемпион 1
Link to post
Share on other sites
Snake 60
41 минуту назад, Kir95 сказал:

ни один из попадавшихся макросов не считал количество правильно

Правильно считает количество вот этот макрос (причем с учетом всех исключенных, погашенных и даже конвертов)

 

Link to post
Share on other sites
Maik812
1 час назад, Kir95 сказал:

ни один из попадавшихся макросов не считал количество правильно.

 

Количество штук.swp вроде считал тоже правильно. и проблем не было.. проверте.

ПРИМЕР РАБОТЫ.gif

Тут отдельно есть общее количество штук и количество в конкретной сборки. Ну и как это выводится в эксель или любой его шаблон.

1 час назад, Kir95 сказал:

за идею с использованием свойств файла, видимых в проводнике )

Всегда рад тебе помочь.

Но я все равно не могу пользоваться проводником, Надеюсь кто то все же переделает решение Брагина с его командером для Солида и Инвентора в плагин для Тотала и сможем в 20121 солиде и инверторе работать абсолютно одинаково. С Компасом почти уже сделано.

Как в проводнике искать по этим данным более гибко? Или более сложный запрос кроме наличие одного из свойств. А еще лучше сортировать и тд.

Вот пример геометрического поиска кстати не во всех даже PDM он вообще предусмотрен.

На фото не просто поиск а фильт показа файлов чтоб соответствовал размерам!

Шаблон файлов по геометрии.gif

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

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

Быстрый поиск по Обозначениям.gif

 

Можно как то исправить Geometrika чтоб в этом же стиле все было оформаленно,  так как данные через # не видятся будут другими PDM и тд.

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

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

 

 

Link to post
Share on other sites
Kir95
12 часов назад, Maik812 сказал:

Количество штук.swp вроде считал тоже правильно. и проблем не было.. проверте.

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

12 часов назад, Maik812 сказал:

Надеюсь кто то все же переделает решение Брагина с его командером для Солида и Инвентора в плагин для Тотала и сможем в 20121 солиде и инверторе работать абсолютно одинаково. С Компасом почти уже сделано

 

Тотал не показывает общие свойства солидовского файла, которые в проводнике винды смотреть можно? Без плагина свойствами нельзя пользоваться?

 

Из проводника винды можно екселевские ячейки просматривать/копировать, не открывая ексель

Link to post
Share on other sites
Maik812
Posted (edited)
55 минут назад, Kir95 сказал:

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

Надо что то придумать, а вопщем идея то нормальная была. С

 

55 минут назад, Kir95 сказал:

общие свойства солидовского файла, которые в проводнике винды смотреть можно? 

Все можно видеть вариантов много. Вопрос чем смотреть... есть Shelldetals.wdx он показывает вроде бы все то проводник

 

55 минут назад, Kir95 сказал:

Без плагина свойствами нельзя пользоваться?

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

Я же не просто смотрю я могу и менять и передавать их..

Плагин нужен однозначно по типу Solidworks.wdx с функцией изменения атрибутов, по сути это позволяет именно изменять значения в самом файле.. Преводить например "Наименование" в латиницу или стандарт ГОСТ изменит на DIN , пошаблону естественно ГОСТ->DIN или добавть дополнительную строчку пользователя в фаил для спецификации под DIN. Щас это работает но с 2014 и ниже форматом.

На фото вношу данные из Solidworks файла посредством плагина SolidWorks.wdx в плагин mPdm.wdx который пишет в поток ntfs, значения. Для чего это делается, так как в проекте бывает тысяча форматов и из разных сапр и фото и тд. mPDM по сути приравнивает все к одному стандарту данных ДЛЯ ЛЮБЫХ ФОРМАТОВ ФАЙЛОВ, как карточка документа в PDM системе делается. Не важно что за формат DXF на резку лазером или сборка из Компас файла преданная или STEP фаил конвертнули Вам с сайта модель, фотографии прототипов или конкурентов и тд. Все в проекте работатет как упорядочить например такой "винегрет," как вписать пояснения или еще куча всего даже просто проверен фаил и сдан в архив..

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

Изменить в атрибутах.gif

Таким же образом и передаются данные из одного САПР в другой. Сначала из Солида в поток , потом из потоков в САПР плагин.

 

Но и не забываю просмотр фалов хотя в вин 10 многое сделали намного лучше, но я например в 7 сижу . Все равно в винд 10 нет аналога нормального быстрого просмотра как ТС, даже близко

История.gif

 

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

Но и в ХР было давно у меня было показ эскизов и разных форматов очеь быстро.

Проводничек стал лучше в вин 10, каждый раз запускать фаил чтоб посмотреть что там уже наверное отпало в 10? Но вот у меня еще 13 лет назад отпало.

Total.jpg

 

 

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

Edited by Maik812
Link to post
Share on other sites
Maik812

Как работает плагин SolidWorks.wdx 

Это плагин CDocProp
-------------------------------------------------------------------------------
CDocProp is the content plugin for properties of Compound Documents (like old MS
Office documents)
Plugin allows to add to the TC custom view standard and custom document properties.
Custom properties should be confugured in the CDocProp.ini file in the section
[Config], i.e.

[Config]
Title=PropertyName

where "Title" is the string to display in TC header and "PropertyName" is the
property name in the file.
File CDocProp.ini should be in the same directory where CDocProp.wdx file.

 

Написал его наш чел.

Работает очень просто и тупо просто пишешь

Наименование=Наименование
Обозначение=Обозначение
Сборка=Сборка
Раздел=Раздел
Раздел спецификации=Раздел спецификации
Количество штук=Количество штук
Общее количество штук=Общее количество штук
Материал=Материал
Разработал=Разработал
Разраб=Разраб
Документация=Документация
Детали=Детали
Стандартные изделия=Стандартные изделия

 

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

 

 

Link to post
Share on other sites
Kir95
12 минут назад, Maik812 сказал:
1 час назад, Kir95 сказал:

Без плагина свойствами нельзя пользоваться?

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

Я же не просто смотрю я могу и менять и передавать их

 

Вот эти свойства (и ещё Description/Описание) можно считывать/менять из проводника, поэтому и спрашивал про тотал.

Props-summary.jpg

 

 

 В "Комментарии" записываем "Где использовался". Без плагина, одним тоталом эти свойства пробовал менять? У солидовского файла 5 видимых свойств и, если с "автором" и "названием" понятно, то ещё 3 свойства мало кем, используются. Попробуй их Shelldetals.wdx или ещё чем редактировать, типа, как в проводнике

 

Props-summary-edit.jpg

Link to post
Share on other sites
Maik812
Posted (edited)

из них только Description вносит данные в деталь.. и появляется как запись пользовательская в файле строчка с именим Description и значение что ввел.

из проводника можно вводить данные и менять все что были в ТС они видны, но у меня вин 7х64 и солид 2014.

Solid_reg.jpg

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

проще будет впереди # , тогда поиск и детект строки сразу .

Edited by Maik812
Link to post
Share on other sites
Kir95
20 минут назад, Maik812 сказал:

из них только Description вносит данные в деталь

 

Description вноосится на вкладку "Суммарная информация", а остальные в "Общие"

Link to post
Share on other sites
Maik812

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

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

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

Что у тебя "Общее" я не знаю..

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

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

Так что наверно обратно совместим вариант только в раздел "Настройки" который так называется в Солиде.

Так как смена версий солида учитывает наверно это то нужно придерживаться этого.  Иначе после конвертации мы потеряем инфу. Так что стандарт записи данных должен быть как у Солида 2014 .

Jpeg_0004.jpg

Jpeg_0050.jpg

Link to post
Share on other sites
Kir95
34 минуты назад, Maik812 сказал:

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

проще будет впереди # , тогда поиск и детект строки сразу

 

Это недолго, там в коде и сам глянуть можешь. Вот так поменял

 

Где используется-001.jpg

 

Макрос

Скрытый текст

    Dim swApp               As SldWorks.SldWorks
    Dim swModel             As ModelDoc2
    Dim myAsy               As AssemblyDoc
    Dim myCmps              As Variant
    Dim Cfg                 As String
    Dim CmpDoc              As ModelDoc2
    Dim bool                As Boolean
    Dim path                As String
    Dim filename            As String
    Dim swComments          As String
    Dim sCurrentDateTime    As Date
    Dim i                   As Long
    Dim j                   As Integer
    Dim k                   As Integer
    Dim TmpStr              As Variant
    Dim CmprStr             As String
    Dim CmprStrA            As Variant
    Dim CmprStrB            As Variant
    Dim CmprStrRes          As Integer
    Dim swCnfMgr            As SldWorks.ConfigurationManager
    Dim AsyCnf              As SldWorks.Configuration
    Dim swSelMgr            As SldWorks.SelectionMgr
    Dim myCmp               As Component2
    Dim swErrors            As Long
    Dim swWarnings          As Long
'2021/04/27
Option Explicit
   Sub main()
   On Error GoTo swMsg
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swSelMgr = swModel.SelectionManager
    Set swCnfMgr = swModel.ConfigurationManager
    Set AsyCnf = swCnfMgr.ActiveConfiguration
    Set myAsy = swModel
    
    path = swModel.GetPathName
    filename = Mid$(path, InStrRev(path, "\") + 1) ' With extension
    filename = Left$(filename, InStrRev(filename, ".") - 1) ' Remove extension

    myCmps = myAsy.GetComponents(False)
    
    Set myCmp = swSelMgr.GetSelectedObject6(1, -1)
        If myCmp Is Nothing Then
            MsgBox ("Выберите решённые компоненты в дереве сборки и запустите макрос")
            Exit Sub
        End If

For i = 1 To swSelMgr.GetSelectedObjectCount2(-1)
         Set myCmp = swSelMgr.GetSelectedObject6(i, -1)
'          Debug.Print "#" & Format(i, "000") & " " & myCmp.Name2 & " - " & myCmp.ReferencedConfiguration & " " & myCmp.ExcludeFromBOM

    If myCmp.GetSuppression <> swComponentSuppressionState_e.swComponentSuppressed And myCmp.ExcludeFromBOM = False Then
      Set CmpDoc = myCmp.GetModelDoc2
      If Not CmpDoc Is Nothing Then
        Cfg = myCmp.ReferencedConfiguration
    End If

        swComments = CmpDoc.SummaryInfo(swSumInfoComment)
        sCurrentDateTime = Now()
        
        If swComments = "" Then
         CmpDoc.SummaryInfo(swSumInfoComment) = "#000" & vbTab & "Дата записи" & vbTab & "Сборка - конфигурация, где используется" & vbTab & _
         "Используемая конфигурация" & vbTab & "Расположение сборки" & vbCrLf & _
         "#" & "001" & vbTab & Format(sCurrentDateTime, "YYYY-MMM-DD HH:MM:SS") & vbTab & _
         filename & " - " & AsyCnf.Name & vbTab & Cfg & vbTab & Left$(path, InStrRev(path, "\"))
        
        swComments = CmpDoc.SummaryInfo(swSumInfoComment)

        Else
        
        CmprStr = filename & " - " & AsyCnf.Name & vbTab & Cfg & vbTab & Left$(path, InStrRev(path, "\"))
        CmprStrA = Split(swComments, vbCrLf, -1)
            For j = 0 To UBound(CmprStrA)
                CmprStrB = Mid$(CmprStrA(j), 27)
                CmprStrRes = StrComp(CmprStr, CmprStrB, vbTextCompare)
                If CmprStrRes = 0 Then GoTo NextPart
            Next j
         TmpStr = Split(swComments, vbCrLf)
         k = UBound(TmpStr) + 1
         CmpDoc.SummaryInfo(swSumInfoComment) = swComments & vbCrLf & _
         "#" & Format(k, "000") & vbTab & Format(sCurrentDateTime, "YYYY-MMM-DD HH:MM:SS") & vbTab & _
         filename & " - " & AsyCnf.Name & vbTab & Cfg & vbTab & Left$(path, InStrRev(path, "\"))
        End If
      End If
NextPart:
Next i
    swModel.ClearSelection2 True
    bool = swModel.Save3(5, swErrors, swWarnings)
Exit Sub

swMsg:
MsgBox "Выберите решённые компоненты в дереве сборки и запустите макрос"

End Sub

 

Link to post
Share on other sites
Maik812
Posted (edited)

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

Коменетс не выведет отдельно мне значения #002 масса  20 кг. например он высыпит все скопом! а скопом не нужно!.

EXEL s2.gif

Я же каждую строчку как в таблицу заносить буду ?

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

называется плагин файловых тописаний.. но они обычно файл создают с ними.

Edited by Maik812
Link to post
Share on other sites
Maik812

FileDiz.wdx есть такой

Плагин "Файловые описания" для Total Commander
----------------------------------------------
Данный content-плагин позволяет отображать файловые описания:

- текстовые описания из Descript.ion/Files.bbs;
- для текстовых файлов: содержимое файла;
- для исполняемых/dll: информация о версии;
- для HTML файлов: содержимое тэгов Title/Meta;
- для URL файлов: файл назначения.

 

Link to post
Share on other sites
Maik812

 Но работать с данными нормально можно только в разделе настройка и с этими строчками и их значениями. С описанием это все так совсем не интнресно.  Просто нужно делать плагин чтоб зачитывал данные без DM ключа. Брагин сдела через макросы программа юзает макрос как он сделал я не знаю технически . можешь брагинкомандер спросить.

Link to post
Share on other sites
Snake 60

@Maik812 По сути тебе надо макрос, который будет зачитывать данные из вкладки конфигурация и дублировать их на вкладку Настройка?

Link to post
Share on other sites
Maik812
36 минут назад, Snake 60 сказал:

дублировать их на вкладку Настройка?

Почти..

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

Если будет их много не удобно хочется обьединить в один макрос чтоб прошелся по библиотеке и все прописал во внутрь. Хочется все таки как то как основной макрос думаю можно вставить все это в один.

Такой мощный аналитический макрос, еще не хватает решения пока по тому что тело листовое, профиль или сварная, монолитная или отливка. Хочется это иметь для поиска, удобно видеть деталь сварная или профиль например , найти размер такой же или увидеть одинаковые детали из целого проекта, а потом  можно оптимизировать по размерам или по сортаменту. Кто то делает проект знает как важно закупать как можно меньше сортамента металла? Вы воните а там говорят 10т. привезем бесплатно только за металл оплатите, а вот если у Вас 1-2 тонны разного нет платите за машину 15 тыс рублей, да еще нет такого а есть только такой и берите у других и там тоже самое... Важно сделать не на уровне конечного проектирования при составлении спецификации а в реале прям видеть при проектировании.

 

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

Проблема только одна,  если ТС  что он пишет без конфигураций все норм, если конфигураций есть то они не доступны. В идеале иметь плагин как брагиновский командер и писать сразу туда и считывать, ведь тогда можно и переносить или копировать проект есть вариант WCX или WFX плагины , архивный. Есть несколько подобный плагин, .

Link to post
Share on other sites
Maik812
1 час назад, Kelny сказал:

Для листового металла этот параметр и так имеется в уравнениях ТОЛЩИНА, который можно по ссылкой втянуть в свойства файла.

Можно как то добавить свойство еще "Тип детали"  и там прописать при наличие в дереве листового метала прописать "Лист 5мм"   в свойства имеется запись как конфигурация еще.

А как "сварную конструкцию" пометить что это сварная из профиля?

 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

  • Recently Browsing   0 members

    No registered users viewing this page.



  • Сообщения

    • mestnyi
    • EvUgol
      https://www.youtube.com/watch?v=REOPLWm-IsM
    • mestnyi
      С Великим Праздником, всех форумчан!!  
    • Maik812
    • maxems
      С Днем Победы в Великой Отечественной Войне! Слава советскому воину-освободителю, победившему немецко-фашистских захватчиков и их приспешников в виде поганых бандеровцев и прибалтийских пособников-ублюдков!  
    • scorpion1007
      Что- значит "не приводная"? Под обычную поворотку нужно найти 4-х осевой постпроцессор, подстроить его под свою ось. Найти видеоурок по четырехосевой обработке и по аналогии сделать также. Стандартный алгоритм
    • maxx2000
      каюсь, опечатка. это был вопрос, а не утверждение.
    • Buzz_Aldrin
      @Snake 60 Спасибо. Но при расположении текста правее выноски этот метод не работает, я правильно понимаю? Как быть в этом случае? Например при обработке правого торца детали. Сейчас вижу выход только с использованием ломаной линии-выноски и перемещением текста, опять таки, левее стрелки.
    • Kenty
      Добрый день. На работе занимаемся постпроцессорами и контроллерами в IMS. Сейчас занимаюсь контроллером на стойку Numerik NC 646. Возникла проблема: в инструкции стойки указано, что можно опускать 0 в написании координат, по типу вместо N1G0X0Y0Z0 можно писать N1GXYZ. Раз инструкция позволяет и станок понимает, программисты так и пишут. Но дело в том, что IMS в режиме контроллера отказывается это читать и выводить CLDATA, просто пропускает как текстовые символы. Что с этим сделать, может кто в курсе? хотя бы направление задайте, а там уж методом тыка. Может кто сталкивался ?
    • Semen_sg
      Проверил, Спасибо! помог Ваш совет (стоял цвет вывода черный)
×
×
  • Create New...