Kitlesel yedek parçalar Inventor

  • Konuyu başlatan Konuyu başlatan windreef
  • Başlangıç tarihi Başlangıç tarihi

windreef

Guest
İyi sabahlar.
Bir mucit setinin görünüşünü değiştirmeliyim (2023), materyali değiştirebilir veya değiştirebilirim çünkü kütüphane bir müşteridir (iş gibi) ve kesinlikle değiştirmek istemiyorum. İstedikleri komisyona göre dosya rengini değiştirirler (tüm ral ile kişiselleştirilmiş yönleri bir kütüphane yarattılar). Örneğin, bu proje için, yaklaşık 500 parça için, dosyalar için manuel olarak yapıyorlar.
Bir yöntem olup olmadığını merak ettim, hızlandırmak için bir ilogic ect kuralı.

Teşekkür ederim çok teşekkür ederim
İyi gün
 
Videoyu bağlantıda görmek: https://www.screenpresso.com/=mv51b5bpsktxKural0 sadece montajdaki görünümünü değiştirir:
Kod:
Deneyin
“Kişisel dosya ve sayfa yolu tanımla
Üstat = "c:\vw\designs\engineering\ae\20241015\test.xlsx"
Excel = "komponents"

"Sunum dosyasını açın
goexcel.open(excelpath, excelsheet)

"Üst düzey başlık kurdu ve satırları bulmak
goexcel.titlerow = 1
goexcel.findrowstart = 3

Aktif montaj belgesi alın
dim oasmdoc as assemblydocument
Oasmdoc = buapplication.activedocument

Tüm referans belgeleri (Bölümler)
dim orefdocs as documentsenumerator
orefdocs = oasmdoc.allreferenceddocuments
dim veyaefdoc belge olarak



“Her referanslı belge aracılığıyla döngü (part)
Her orefdoc için orefdocs
dim part sayısı = iproperties.value(orefdoc.displayname, "proje", "part number")

"The part number (part Number) in theMaster page

dim rowno as Full = goexcel.bulrow(excelpath, excelsheet, "part Number Number", "=", Cut(part Number))


Eğer lineno > 0 Sonra 0
“Renkli” sütunundan renk adını alın (bu "color" sütunu altında varsayın)
dim colorname as string = goexcel.currentrowvalue("color")

“Renkli kütüphaneden renk alın
dim ocolor varlık olarak
Deneyin
“Mevcut belgede varsa rengi doğrudan almaya çalışın
Ocolor = oasmdoc.assets.item(colorname)


yakalama yakalama yakalama
“Renk yerel olarak yoksa, onu kütüphaneden kopyalayın
dim olib as varlıklibrary
olib = buapplication.assetlibraries ("ral renkler metalik matte v1.0") “Bu kütüphanenin var olduğundan emin olun.


Ocolor = olib.appearanceassets.item (colorname)
Ocolor = ocolor.copyto (oasmdoc) 'Renki belgeye kopyalayın
Sonunda deneyin

“Bölüm olaylarının görünümünü değiştirir
dim ooccs as componentoccurrencesenumerator = oasmdoc.componentdefinition.occurrences (orefdoc)
Her bir oocc için bileşenoccurrence in ooccs
Oocc.appearance = ocolor ‘Renki uygulayın
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

“Bir onay mesajı göster
" messagebox.show(part Number and " color changed to " & colorname, "color change")
Başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka
"Part number not found in the Spot
Mesajbox.show(part Number & " listede değil", "part not found")
Sonunda, eğer sona erirse
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

“Başarı dosyasını kapat
goexcel.close
Ekstraları istisna olarak yakalamak
“Herhangi bir hatayla başa çık
Mesajbox.show ("an hatası meydana geldi: " & ex.message, "error")
Sonunda deneyin
Kural1 rengini kısmen değiştirir:

Kod:
Deneyin
“Kişisel dosya ve sayfa yolu tanımla
Üstat = "c:\vw\designs\engineering\ae\20241015\test.xlsx"
Excel = "komponents"

"Sunum dosyasını açın
goexcel.open(excelpath, excelsheet)

"Üst düzey başlık kurdu ve satırları bulmak
goexcel.titlerow = 1
goexcel.findrowstart = 3

Aktif montaj belgesi alın
dim oasmdoc as assemblydocument
Oasmdoc = buapplication.activedocument

Tüm referans belgeleri (Bölümler)
dim orefdocs as documentsenumerator
orefdocs = oasmdoc.allreferenceddocuments
dim veyaefdoc belge olarak

“Her referanslı belge aracılığıyla döngü (part)
Her orefdoc için orefdocs
dim part count as string = trim(iproperties.value(orefdoc.displayname, "proje", "part number")

"The part number (part Number) in theMaster page
dim rowno as Full = goexcel.findrow(excelpath, excelsheet, "part Number Number", "=", part count)

Eğer lineno > 0 Sonra 0
“Renkli” sütunundan renk adını alın (bu "color" sütunu altında varsayın)
dim colorname as string = goexcel.currentrowvalue("color")

" zaten açık değilse bölüm belgesi açın
If not orefdoc. Örnek = kpartdocumentobject o zaman
Devam etmeye devam etmek için
Sonunda, eğer sona erirse
dim opartdoc as partdocument = orefdoc

“Renkli kütüphaneden renk alın
dim ocolor varlık olarak
Deneyin
“Renki doğrudan parça belgesinde varsa almaya çalışın
Ocolor = opartdoc.assets.item(colorname)
yakalama yakalama yakalama
“Renk yerel olarak yoksa, onu kütüphaneden kopyalayın
dim olib as varlıklibrary
olib = buapplication.assetlibraries ("ral renkler metalik matte v1.0") “Doğru kütüphane adı için
Ocolor = olib.appearanceassets.item (colorname)
Ocolor = ocolor.copyto(opartdoc) ‘Renki kısmen belgeye kopyalayın
Sonunda deneyin

“Renki kısmen belgeye uygulayın
Opartdoc.componentdefinition.surfacebodies (1).appearance = ocolor 'in bir parçası vücudunun görünümü

“Renki uygulamadan sonra bölüm belgesini kurtarın
Opartdoc.save()

“Bir onay mesajı göster
" messagebox.show(part Number and " color changed to " & colorname, "color change")
Başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka
"Part number not found in the Spot
Mesajbox.show(part Number & " listede değil", "part not found")
Sonunda, eğer sona erirse
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

“Başarı dosyasını kapat
goexcel.close
Ekstraları istisna olarak yakalamak
“Herhangi bir hatayla başa çık
Mesajbox.show ("an hatası meydana geldi: " & ex.message, "error")
Sonunda deneyin
 
Videoyu bağlantıda görmek: https://www.screenpresso.com/=mv51b5bpsktxKural0 sadece montajdaki görünümünü değiştirir:
Kod:
Deneyin
“Kişisel dosya ve sayfa yolu tanımla
Üstat = "c:\vw\designs\engineering\ae\20241015\test.xlsx"
Excel = "komponents"

"Sunum dosyasını açın
goexcel.open(excelpath, excelsheet)

"Üst düzey başlık kurdu ve satırları bulmak
goexcel.titlerow = 1
goexcel.findrowstart = 3

Aktif montaj belgesi alın
dim oasmdoc as assemblydocument
Oasmdoc = buapplication.activedocument

Tüm referans belgeleri (Bölümler)
dim orefdocs as documentsenumerator
orefdocs = oasmdoc.allreferenceddocuments
dim veyaefdoc belge olarak



“Her referanslı belge aracılığıyla döngü (part)
Her orefdoc için orefdocs
dim part sayısı = iproperties.value(orefdoc.displayname, "proje", "part number")

"The part number (part Number) in theMaster page

dim rowno as Full = goexcel.bulrow(excelpath, excelsheet, "part Number Number", "=", Cut(part Number))


Eğer lineno > 0 Sonra 0
“Renkli” sütunundan renk adını alın (bu "color" sütunu altında varsayın)
dim colorname as string = goexcel.currentrowvalue("color")

“Renkli kütüphaneden renk alın
dim ocolor varlık olarak
Deneyin
“Mevcut belgede varsa rengi doğrudan almaya çalışın
Ocolor = oasmdoc.assets.item(colorname)


yakalama yakalama yakalama
“Renk yerel olarak yoksa, onu kütüphaneden kopyalayın
dim olib as varlıklibrary
olib = buapplication.assetlibraries ("ral renkler metalik matte v1.0") “Bu kütüphanenin var olduğundan emin olun.


Ocolor = olib.appearanceassets.item (colorname)
Ocolor = ocolor.copyto (oasmdoc) 'Renki belgeye kopyalayın
Sonunda deneyin

“Bölüm olaylarının görünümünü değiştirir
dim ooccs as componentoccurrencesenumerator = oasmdoc.componentdefinition.occurrences (orefdoc)
Her bir oocc için bileşenoccurrence in ooccs
Oocc.appearance = ocolor ‘Renki uygulayın
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

“Bir onay mesajı göster
" messagebox.show(part Number and " color changed to " & colorname, "color change")
Başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka
"Part number not found in the Spot
Mesajbox.show(part Number & " listede değil", "part not found")
Sonunda, eğer sona erirse
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

“Başarı dosyasını kapat
goexcel.close
Ekstraları istisna olarak yakalamak
“Herhangi bir hatayla başa çık
Mesajbox.show ("an hatası meydana geldi: " & ex.message, "error")
Sonunda deneyin
Kural1 rengini kısmen değiştirir:

Kod:
Deneyin
“Kişisel dosya ve sayfa yolu tanımla
Üstat = "c:\vw\designs\engineering\ae\20241015\test.xlsx"
Excel = "komponents"

"Sunum dosyasını açın
goexcel.open(excelpath, excelsheet)

"Üst düzey başlık kurdu ve satırları bulmak
goexcel.titlerow = 1
goexcel.findrowstart = 3

Aktif montaj belgesi alın
dim oasmdoc as assemblydocument
Oasmdoc = buapplication.activedocument

Tüm referans belgeleri (Bölümler)
dim orefdocs as documentsenumerator
orefdocs = oasmdoc.allreferenceddocuments
dim veyaefdoc belge olarak

“Her referanslı belge aracılığıyla döngü (part)
Her orefdoc için orefdocs
dim part count as string = trim(iproperties.value(orefdoc.displayname, "proje", "part number")

"The part number (part Number) in theMaster page
dim rowno as Full = goexcel.findrow(excelpath, excelsheet, "part Number Number", "=", part count)

Eğer lineno > 0 Sonra 0
“Renkli” sütunundan renk adını alın (bu "color" sütunu altında varsayın)
dim colorname as string = goexcel.currentrowvalue("color")

" zaten açık değilse bölüm belgesi açın
If not orefdoc. Örnek = kpartdocumentobject o zaman
Devam etmeye devam etmek için
Sonunda, eğer sona erirse
dim opartdoc as partdocument = orefdoc

“Renkli kütüphaneden renk alın
dim ocolor varlık olarak
Deneyin
“Renki doğrudan parça belgesinde varsa almaya çalışın
Ocolor = opartdoc.assets.item(colorname)
yakalama yakalama yakalama
“Renk yerel olarak yoksa, onu kütüphaneden kopyalayın
dim olib as varlıklibrary
olib = buapplication.assetlibraries ("ral renkler metalik matte v1.0") “Doğru kütüphane adı için
Ocolor = olib.appearanceassets.item (colorname)
Ocolor = ocolor.copyto(opartdoc) ‘Renki kısmen belgeye kopyalayın
Sonunda deneyin

“Renki kısmen belgeye uygulayın
Opartdoc.componentdefinition.surfacebodies (1).appearance = ocolor 'in bir parçası vücudunun görünümü

“Renki uygulamadan sonra bölüm belgesini kurtarın
Opartdoc.save()

“Bir onay mesajı göster
" messagebox.show(part Number and " color changed to " & colorname, "color change")
Başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka
"Part number not found in the Spot
Mesajbox.show(part Number & " listede değil", "part not found")
Sonunda, eğer sona erirse
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

“Başarı dosyasını kapat
goexcel.close
Ekstraları istisna olarak yakalamak
“Herhangi bir hatayla başa çık
Mesajbox.show ("an hatası meydana geldi: " & ex.message, "error")
Sonunda deneyin
Harika çalışıyor !!! Çok teşekkür ederim.
 

Forum İstatistikleri

Konular
58,521
Mesajlar
499,056
Kullanıcılar
104,110
Son Üye
ChristianR

Çevrimiçi Üyeler

Şu anda çevrimiçi üye yok.
Geri
Üst