Перейти к публикации

Изменение наименований файлов


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

В принципе можно сделать групповую переименовку в ТС (тотал коммандер - например <noindex>так</noindex>), а затем открыть сборку в Солиде и (по идее) если указать Солиду где новые файлы (при загрузке сборки будет вопрос), он должен найти всё остальное...

По крайней мере это проходит если просто перенести файлы в другую папку...

А как, ТС - ссылки будет менять?

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

Со сборками все работало. И как конретно "не работает"? Для чертежей - изначально было задуманно делать копию только для одного файла(детали).

Правда, я же, говорил, что это было сделанно довольно давно, и для свежих SW может библиотеки перепoдключить надо бы?... (~ ±2005год).

Но ИМХО в SW2007 работало. Вот в 2010-м - не помню, может не пользовался...

С другой стороны:

- надо сначало переименовать имя самого файла

- а потом уже менять ссылки

Это разные вещи! И в API SW для этого есть разные функции.

В API SW2008 и в SW2010 есть примеры: "Rename Assembly Components Example (VB)" - я делал на VB (других языков не было! Причем делал в формате *. EXE)

'---------------------------------------

Rename Assembly Components Example (VB)

This example shows how to rename assembly components.

'---------------------------------------

' Preconditions: Assembly document is open.

'

' Postconditions: Assembly component names are changed by

' appending 123 to the end of the names.

''---------------------------------------

(С другой стороны:

- надо сначало переименовать имя самого файла

- а потом уже менять ссылки

Это разные вещи! И в API SW для этого есть разные функции.)

Option Explicit

Public Enum swUserPreferenceToggle_e

swExtRefUpdateCompNames = 18

End Enum

Sub Main()

Dim swApp As SldWorks.SldWorks

Dim swModel As SldWorks.ModelDoc2

Dim swConfigMgr As SldWorks.ConfigurationManager

Dim swConfig As SldWorks.Configuration

Dim swRootComp As SldWorks.Component2

Dim Children As Variant

Dim swChild As SldWorks.Component2

Dim ChildCount As Integer

Dim OldName As String

Dim NewName As String

Dim bOldSetting As Boolean

Dim bRet As Boolean

Dim i As Long

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

Set swConfigMgr = swModel.ConfigurationManager

Set swConfig = swConfigMgr.ActiveConfiguration

Set swRootComp = swConfig.GetRootComponent

bOldSetting = swApp.GetUserPreferenceToggle(swExtRefUpdateCompNames)

swApp.SetUserPreferenceToggle swExtRefUpdateCompNames, False

Children = swRootComp.GetChildren

ChildCount = UBound(Children)

`**********

For i = 0 To ChildCount '<<< кол-во компонентов в СБ

Set swChild = Children(i) '<<< 1-й компонент и дальше...

' Changing component name requires component to be selected

bRet = swChild.Select2(False, 0)

OldName = swChild.Name2

NewName = OldName & " 123" - это прсто число, для проверки - образование нового имени

Debug.Print "OldName = " + OldName

Debug.Print "NewName = " + NewName

Debug.Print ""

swChild.Name2 = NewName

Next i

swApp.SetUserPreferenceToggle swExtRefUpdateCompNames, bOldSetting <<<< замена ссылок

End Sub '---------------------------------------

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


С другой стороны:

- надо сначало переименовать имя самого файла

- а потом уже менять ссылки

Полностью согласен, о чём и писАл выше...
Ссылка на сообщение
Поделиться на других сайтах

Полностью согласен, о чём и писАл выше...

Но Вы выше писали о ТС ! Это разве одно и то же?

Или №сообщения укажите, а то я не понял...

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

Но Вы выше писали о ТС ! Это разве одно и то же?

Да о ТС...

А вообще писал просто о такой возомжности, а как её реализовать - это дело вкуса и привычек...

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

`Document Manager` тут совсем необязателен

нуу...как бы без запуска солида интереснее (ибо память, скорость, ещё какая-нибудь (...)ть :smile: )
Ссылка на сообщение
Поделиться на других сайтах

нуу...как бы без запуска солида интереснее (:smile:)

В развитии данной Гениальной мысли:

Без без запуска солида, без наличия на ПК самого SW да и вообще без компа :throw:

Чисто силой мысли...

:biggrin:

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

В развитии данной Гениальной мысли:

глупость это, а не развитие.

Сколько раз откроется солид, чтобы перезаписать ссылки у 100 уникальных файлов (сборок и деталей)? Только не надо говорить что автору будет достаточно, когда-то и 64 Кб всем хватало.

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

глупость это, а не развитие.

Сколько раз откроется солид, чтобы перезаписать ссылки у 100 уникальных файлов (сборок и деталей)? Только не надо говорить что автору будет достаточно, когда-то и 64 Кб всем хватало.

О чем речь? Не понимаю... (глупый, наверное :blink: )

Причем тут "открытие SW" ??? Речь идет только о закрытии главной сборки, работе макроса и открытии этой же сборки (или по методу добавлений суффикса/префикса или этой же сборки, но расположенной в другой папке с тем же или другим именем).

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

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

Всем привет!

...

Ребята, у меня создается впечатление что всем, кто здесь живо обсуждает тему - лень посмотреть <noindex>видео, которое я выложил</noindex>

Повторюсь чуть разжевав:

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

Далее этот список можно хоть наизнанку вывернуть с использованием API Excel - была бы фантазия.

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

Макрос пока не доделан слегка, потому что гладиолус. Если кому идея интересна - а вдруг хватит сил доделать. Сам заинтересован в его полноценном рождении.

Могу хоть счас дать кому подергать его (макрос) - но пока не вижу энтуазизма.

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

post-27242-1340221394_thumb.jpg

post-27242-1340221425_thumb.jpg

post-27242-1340221436_thumb.jpg

post-27242-1340221449_thumb.jpg

post-27242-1340221460_thumb.jpg

post-27242-1340221477_thumb.jpg

post-27242-1340221489_thumb.jpg

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

Нашёл вот - <noindex>Переименование внешних ссылок и обновление путей</noindex> (хотя это вроде не для Солида)...

Кстати <noindex>вот</noindex> похожая тема...

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

Ребята, у меня создается впечатление что всем, кто здесь живо обсуждает тему - лень посмотреть <noindex>видео, которое я выложил</noindex>

Повторюсь чуть разжевав:

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

Далее этот список можно хоть наизнанку вывернуть с использованием API Excel - была бы фантазия.

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

Макрос пока не доделан слегка, потому что гладиолус. Если кому идея интересна - а вдруг хватит сил доделать. Сам заинтересован в его полноценном рождении.

Могу хоть счас дать кому подергать его (макрос) - но пока не вижу энтуазизма.

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

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

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

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

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

Кроме всего прочего при работе со ссылками SW имеются некоторые проблемы. При этом они вскрываются не только при работе с API. Вот тема:

<noindex> "Копировать проект..." (встроенный инструмент SW) - некорректно копирует проект, Не отображает и не копирует некоторые файлы проекта</noindex>

<noindex>Потеря ссылок в сборке, При отображении окна "Найти ссылку..." пропадают некоторые ссылки</noindex>

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

Вот уже на протяжение недели пользуюсь на работе программой CustomTools (2010), правда из-за отсутсвия времени не удаётся толком в ней разобраться. Пробывал функцию переименовывания файлов - понравилось, правда, я представлял, что она более "автоматическая", но всё равно заметно облегчает и упрощает данный процесс!!! Примерно за 5 минут из "каши" названий (всего примерно 370 файлов) программа сделала мне очень красивую последовательность... Так же очень понравилась функция конвертации чертежей в нужные форматы. До этого пользовался BatchProcess-ом, но CustomTools по сранению с ней попроще в этом плане будет.

Вообщем, советую всем! :wink:

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

Да, CustomTools for SolidWorks- неплохая примочка к Солиду.

Уже есть - <noindex>CustomTools 2012-SP3-Released</noindex>...

да, в курсе. в августе планируем перейти на SW2012 (c 2010), тогда и последнюю версию CT планируем поставить. Судя по видео в интернете, в новой версии есть масса полезных изменений (по сравнению с 2010 версией CT). Поживём - увидим! :wink:

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

Есть аналогичная (или похожая) примочка - <noindex>BatchProcess</noindex>...

BatchProcess-ом иногда пользуюсь, но в нём я не нашёл функции автоматического переименовывания... хотя, и не совсем разбирался в нём. Вообще, BatchProcess напоминает мне больше TaskScheduler, только встроенный в SolidWorks и немного упрощённый.
Ссылка на сообщение
Поделиться на других сайтах
  • 11 месяцев спустя...

Всем привет!

У меня возник такой вопрос: существует ли какой-нибудь макрос или программа для быстрого переименовывания всех подсборок и деталей входящих в сборку (желательно с возможностью указания определынных условий имени файла)??? Например: была у меня сборка A0000, в которую входили подсборки от A0001 до A0050, и детали от D0001 до D0255. Со временем какие-то детали были добавлены, какие-то удалены; в результате получились пропуски в последовательности деталей и сборок. Существует ли какой-нибудь способ дать всем деталям и сборкам новые имена последовательности??? Здорово, если бы ещё была возможность задавать определённые условия наименований, например была главная сборка K0000, а нужно получить К10.00.00, с последующими подсборками и деталями типа К10.01.01 и т.д....

Надеюсь, ясно изложил свои мысли...

SWExplorer - не вариант, долно и муторно....

Наилучший вариант таких вещей как переименование и перенос это Total commander , так как огромная база плагинов позволяет много видеть и делать. Например групповое преименвание не только имени файла , а например данных для спецификации. Или с помощью плагина транслятора зарание пишешь фаил что во что переименовать без проблем любые значения в любые, синтаксис такой "что есть"="во что надо" хоть русский на китайский переписывай наименование! Справочик данных-DIN===Гост. И это все еще работает с данными которые есть в свойствах файлов заполненые для спецификации. Но для копирования и изменеия ссылок в файлов нет пока плагина 5 лет прошу ! <noindex>http://fsapr2000.ru/index.php?showtopic=20...total+commander</noindex>
Ссылка на сообщение
Поделиться на других сайтах

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

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

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

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

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

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • arsenev
      Первый свободный номер инструмента   int list $toolnumblist = extract(folder('TOOL'), 'Tool.Number.Value') int $newToolNumb = 1 while member( $toolnumblist, $newToolNumb) {     $newToolNumb = $newToolNumb + 1 } Message Info 'Первый свободный номер инструмента - ' + $newToolNumb     Инструменты с повторяющимися номерами   int list $toolnumbers = extract(folder('tool'),'Number.Value') int $i = remove_duplicates($toolnumbers) string $op = '' foreach $n in $toolnumbers {     string list $names = extract(filter(folder('tool'),'this.Number.Value == "' + $n + '"'),'Name')     if size($names) > 1 {         $op = $op + 'Инструменты с повторяющимся номером T ' + $n + CRLF         foreach $name in $names {             $op = $op + $name + CRLF         }         $op = $op + CRLF     } } message info $op     Удаление выбранного   Макрос, который проверяет тип объекта, а затем позволяет выбрать один и удалять выбранные части. Я связал это с ctrl+d.   string list $rootTypes = {'toolpath','featureset','pattern','boundary','model'} string list $selectedTypes = {} foreach $rt in $rootTypes {     if entity_exists(entity($rt,'')) {         entity $ent = entity($rt,'')         if number_selected($ent.RootType, $ent.Name) > 0 {             int $i = add_last($selectedTypes,$rt)         }     } } if size($selectedTypes) <= 0 {     return } int $index = -1 if size($selectedTypes) == 1 {     $index = 0 } else {     $index = input choice $selectedTypes 'Wich Type to remove?' } if $index != -1 {     String $cmd = 'DELETE ' + $selectedTypes[$index] + ' "' + entity($selectedTypes[$index],'').Name + '" SELECTED'         DoCommand $cmd }
    • PETR_1
      Можно переназначить правую и центральную (колесо) кнопки с помощью бесплатной программы X-Mouse Button Control (есть портабельная версия). Это переназначение будет работать только для компаса.
    • Kelny
      Может изменяемый вами размер импортирован из модели?  Обычно переносилось удержанием левой кнопки мыши, а если сделать двойной клик, то нужно потом выбрать новый объект уже без удержания кнопок мыши.
    • Kelny
      Отключить галочки режима большой сборки. Инструменты-Параметры...-Настройки пользователя-Сборки
    • brigval
      Если не прописали, значит считается, что производственный процесс их изготовления гарантирует качество, достаточное для присвоения литеры. Можно и так посмотреть.   Между прочим, пред вынесением Решения о присвоении литеры проходит "испытания" весь комплект  КД. Разрешат вам не предъявлять часть КД на проверку? Спросите у НК.   И все-таки, если есть Решение о присвоении литеры, надо прочитать, что там сказано. Как сформулировано. Возможно, это снимет все вопросы.
    • cepr
      Есть в Компасе возможность построения зубчатого колеса с углом профиля не 20гр., а 25гр?
    • shishov32
      В ТУ не прописали про испытания КМЧ и упаковки, отсюда все пошло. 
    • clavr
      подскажите: как в солиде 2024 в чертеже перепривязать точку размера к другому элементу? раньше достаточно было выделить размер, точку привязке и удерживая ПКМ перенести к другому элементу. теперь это не работает   По справке сделать не получается( просто быстрые привязке не подсвечиваются https://help.solidworks.com/2024/russian/SolidWorks/sldworks/c_moving_dimension_leadersOH.htm  
    • BSV1
      КМЧ бывают разные. Если КМЧ состоит из одних стандартных болтов, например, то может испытания и не требуются. Если же КМЧ состоит из изделий собственной разработки, то почему их не надо испытывать? Что касается упаковки, то есть ГОСты на тару. Например: 80071.pdf ГОСТ Р 53775-2010 Упаковка. Испытание на штабелирование при статической нагрузке ГОСТ 18211-2018. Упаковка транспортная. Метод испытания на сжатие  gost-9142-2014.pdf  Есть еще испытания изделий в упаковке, которые подразумевают, в том числе, и испытание самой упаковки. Проверяться изделия в упаковке могут на транспортную тряску, удары, падения, климат. При этом упаковка должна обеспечить сохранность изделия. Есть еще вопросы консервации. Как же без испытаний?   Странный у вас нормоконтролер.    
    • brigval
      Ответом на ваш вопрос будет противоречит. А вообще, надо читать Решение о присвоении литеры. Интересно, что там указано?   Интересный вопрос. Если есть указания испытывать экпл. документацию в форме книг, то надо испытывать Я, правда, с этим не сталкивался.
×
×
  • Создать...