Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Dateinamen von Stücklistensymbolen mit Text

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Dateinamen von Stücklistensymbolen mit Text (337 mal gelesen)
Dorgar
Mitglied


Sehen Sie sich das Profil von Dorgar an!   Senden Sie eine Private Message an Dorgar  Schreiben Sie einen Gästebucheintrag für Dorgar

Beiträge: 5
Registriert: 23.03.2017

SolidWorks Premium 2017 SP5

erstellt am: 20. Feb. 2020 15:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Spezialisten,

in unseren Solidworksbaugruppenzeichnungen werden zu einzelnen Bauteilen Informationen als Bezugshinweise hinzugefügt. Man möchte diese Bezugshinweise auslesen und gleichzeitig sehen, um welche Bauteile es sich handelt. Da angeblich es keinen direkten Bezug zwischen dem Bezugshinweis und dem Bauteil gibt, habe ich vorgeschlagen die Informationen mit Stücklistensymbol als Text einzutragen. Beim Stücklistensymbol kann man den Text auf den Dateinamen umstellen. Deswegen sollte ein Bezug zum Bauteil vorhanden sein.

Ich habe versucht mit einem Makro die Dateinamen auszulesen und hänge jetzt an dem Bezug vom Stücklistensymbol zum Dateinamen.
Mit dem folgenden Makro kann ich alle Stücklistensymbole identifizieren, die einen Text enthalten. Ich komme aber nicht an den Dateinamen dran. Kann mir jemand sagen, mit welchem Befehl ich den Dateinamen auslesen kann.

Set swView = swDrawing.GetFirstView
Set swView = swView.GetNextView   
While Not swView Is Nothing
    ViewName = swView.Name
    Set swNote = swView.GetFirstNote
    While Not swNote Is Nothing
        If swNote.IsBomBalloon Then
            Position = swNote.GetBomBalloonText(True)
            If IsNumeric(Left(Position, 1)) = False Then
                MsgBox "Text"
                'hier soll der Dateiname ermittelt werden
            End If
        End If
        Set swNote = swNote.GetNext
    Wend
    Set swView = swView.GetNextView
Wend

Es wäre schön, wenn man diese ermittelten Informationen in eine Textdatei oder noch besser nach Excel ausgeben könnte.

Vielen Dank für eure Hilfe!
Dorgar

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



Sehen Sie sich das Profil von bk.sc an!   Senden Sie eine Private Message an bk.sc  Schreiben Sie einen Gästebucheintrag für bk.sc

Beiträge: 2354
Registriert: 18.07.2012

-Solid Works 2019 SP3
-Pro Engineer WF 3

erstellt am: 20. Feb. 2020 17:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Dorgar 10 Unities + Antwort hilfreich

Hallo Dorga,

was ist dein genauer Plan? Du kannst eigentlich mit Bezugshinweisen und Stücklistensymbolen mit wenigen Ausnahmen auf die gleichen Informationen von Komponenten zugreifen(Ausnahme z.B. Positionsnummer und Menge). Du kannst auch per Makro auf die Informationen zugreifen, ist aber sagen wir mal nicht ganz Trivial, hatte mal ein Macro geschrieben in dem ich u.a. von einem selektierten Bezugshinweis oder Stücklistensymbol die dazugehörige PDF der Komponente öffnen konnte.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Dorgar
Mitglied


Sehen Sie sich das Profil von Dorgar an!   Senden Sie eine Private Message an Dorgar  Schreiben Sie einen Gästebucheintrag für Dorgar

Beiträge: 5
Registriert: 23.03.2017

SolidWorks Premium 2017 SP5

erstellt am: 21. Feb. 2020 12:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Bernd,

das Endergebnis soll eine Liste für den Elektro-/Pneumatikkonstrukteur sein, in der er alle für ihn relevanten Teile mit diversen Properties hat. Die Properties auslesen ist kein Problem. Mit dem Makro kann ich alle Notes identifizieren, die einen Text haben. Mein Problem ist, den Dateinamen oder die Zeichnungsnummer der  Komponenten herauszubekommen, zu denen diese Notes gehören. Dann könnte ich die Notes anhand bestimmter Kriterien eingrenzen, die ich noch vom Elektriker brauche und daraus dann die Liste mit allen Informationen generieren.
Danke für die Info, dass das auch mit den Bezugshinweisen geht. Ich arbeite öfters mit SWX, bin aber kein Konstrukteur und dieser sagte mir, dass es nur zwischen Stücklistensymbolen und den Komponenten eine Beziehung gibt. Deswegen habe ich erst einmal diesen Ansatz verfolgt. Da die meisten Notes in den alten Zeichnungen Bezugshinweise sind, könnte ich auch diese mit abfragen.
Da ich erst wenige Erfahrungen mit SWX VBA habe (bin meistens in Excel oder SAP unterwegs), wäre es schön, wenn mir jemand zeigen könnte, wie man bei Bezugshinweisen und Stücklistensymbolen den dazugehörigen Dateinamen ausließt. Danke!

Hier nochmal mein bisheriges Makro.

Option Explicit

Public swApp As SldWorks.SldWorks
Public swModel As SldWorks.ModelDoc2
Public swDrawing As SldWorks.DrawingDoc
Public swView As SldWorks.View
Public swNote As SldWorks.Note
Public swEntity As Entity
Public ViewName As String
Public Position As String
Public Rückmeldung As Integer

Sub PosNrSuchen()

Set swApp = CreateObject("SldWorks.Application")
Set swModel = swApp.ActiveDoc
If swModel.GetType <> 3 Then
    Rückmeldung = MsgBox("Aktives Dokument ist keine Zeichnung", vbOKOnly + vbInformation, "Information")
    Exit Sub
End If
Set swDrawing = swApp.ActiveDoc
Set swView = swDrawing.GetFirstView
Set swView = swView.GetNextView
If swView Is Nothing Then
    Rückmeldung = MsgBox("Aktive Zeichnung hat keine Ansichten!", vbOKOnly + vbExclamation, "Information")
    Exit Sub
Else
While Not swView Is Nothing
    ViewName = swView.Name
    Set swNote = swView.GetFirstNote
    While Not swNote Is Nothing
        MsgBox swNote.GetText
        If swNote.IsBomBalloon Then
            Position = swNote.GetBomBalloonText(True)
            If IsNumeric(Left(Position, 1)) = False Then
                MsgBox "Text"
                MsgBox Position
            End If
        End If
        Set swNote = swNote.GetNext
    Wend
    Set swView = swView.GetNextView
Wend
End If
End Sub

Gruß
Dariusz

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bk.sc
Ehrenmitglied V.I.P. h.c.
Konstrukteur Sondermaschinenbau



Sehen Sie sich das Profil von bk.sc an!   Senden Sie eine Private Message an bk.sc  Schreiben Sie einen Gästebucheintrag für bk.sc

Beiträge: 2354
Registriert: 18.07.2012

-Solid Works 2019 SP3
-Pro Engineer WF 3

erstellt am: 25. Feb. 2020 15:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Dorgar 10 Unities + Antwort hilfreich

Hallo Darius,

hier musst du dich vom INote (Object) über das IAnnotaion (Object) zu den AttachedEntities (Array mit Entity(Objects)) durchkämpfen um dann über die an das IComponent (Object) bzw. das IModelDoc2 (Object) dazu zu kommen. Hier ist es dann auch theoretisch egal ob die Reise bei einem Stücklistensymbol oder Bezugshinweis beginnt.

Also wie schon mal von mir geschrieben, nicht ganz trivial.
Aber du kannst dir ja mal das Beispiel "Get BOM Balloon Properties Example (VBA)" dazu zu gemühte führen.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2020 CAD.de | Impressum | Datenschutz