Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  prüfen ob Zusammenbauzeichnungen akt. werden müssen

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:   prüfen ob Zusammenbauzeichnungen akt. werden müssen (437 mal gelesen)
Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 31. Aug. 2020 15:12    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,

ist es möglich zu überprüfen ob Zeichnungen von einer Baugrupppe, Unterbaugruppe oder Unterunterbaugruppe aktuell sind?

Wir haben folgendes Problem:

In der Inbetriebnahme werden immer mal Anpassungen vorgenommen, dazu werden Einzelteile neu erstellt oder angepasst. Die Baugruppen Zeichnungen werden in den meisten Fällen nicht sofort aktualisiert und wenn das Projekt dann aktualisiert werden soll ist es immer ein großer Aufwand alles durchzusehen.

Vielen Dank

Grüße Thomas

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 31. Aug. 2020 16:45    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

Dafür kann man das DrawingDocument.RequiresUpdate Property nutzen. Spart aber wenig, da man zum Auslesen die Zeichnung öffnen muss. Sinn ergibt eher den Apprenticeserver zu nutzen und mit dem ApprenticeServerDrawingDocument.RequiresUpdate Property eine Liste der zu aktualisierenden Zeichnungen zu erstellen.
Über den Aufgabenplaner lassen sich auch automatisiert Zeichnungen aktualisieren. Was dabei heraus kommt, muss sicher kontrolliert werden.

------------------
MfG
Ralf

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

EIBe 3D
Mitglied
Dipl. - Ing. (FH)


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

Beiträge: 68
Registriert: 24.01.2020

HP Z4 G4 Workstation
Xeon 3,6 32GB
Nvidia P2000
WIN10
SW2015 SP5.0
SW2017
*************
Inv2018 akt.SP

erstellt am: 01. Sep. 2020 08:19    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo Thomas,

wie Ralf geschrieben hat über den ApprenticeServer gehen und alle Zeichnungen mit True Property in eine Collection schreiben. Dann die Zeichnungen in der Collection öffnen und aktualisieren. Wenn nicht zuviele Elemente in der Collection sind können sie, wenn gewünscht, alle zur anschließenden Kontrolle geöffnet bleiben. Bei zuvielen Elementen würde ich mehrere Collections machen (Speicherbedarf), oder die Elemente nacheinander durchlaufen. Zur Kontrolle könnten wiederum die Elemente durchlaufen werden.


Grüße

EIBe 3D

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 01. Sep. 2020 19:21    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,

vielen Dank für eure Antworten. Mir fehlt aber leider Wissen zum ApprenticeServer, so richtig habe ich da auch nix im Inet gefunden. Habt ihr einen Tipp wo ich mich in das Thema einlesen kann?

Danke

Grüße Thomas

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

EIBe 3D
Mitglied
Dipl. - Ing. (FH)


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

Beiträge: 68
Registriert: 24.01.2020

HP Z4 G4 Workstation
Xeon 3,6 32GB
Nvidia P2000
WIN10
SW2015 SP5.0
SW2017
*************
Inv2018 akt.SP

erstellt am: 02. Sep. 2020 07:43    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo,

Hier z.B. Apprentice, allerdings in Englisch.

anzumerken ist, dass du den Apprentice Server nicht aus Inventor VBA ansprechen kannst, da er die gleichen Prozesse nutzt und es so zu Konflikten kommt. Möglich wäre in über VBA aus Excel anzusprechen oder als Standalone .exe (steht aber auch in dem Artikel).

Grüße

EIBe 3D

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 04. Sep. 2020 14:22    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


TestZeichnungenakt.zip

 
Hallo,

vielen Dank für den Link. Ich habe mal probiert den ApprenticeServer über Excel zu starten. Folgende Fragen dazu.

- die Autodesk.inventor.Interop Datei ist unter Extras -> Verweise nicht mit aufgeführt (Excel VBA), wenn ich über Durchsuchen (C:\Program Files\Autodesk\Inventor 2018\Bin\Public Assemblies) versuche die Datei Autodesk.Inventor.Interop.dll einzubinden bekomme ich eine Fehlermeldung (Verweis auf angegebene Datei kann nicht hinzugefügt werden)

- in welchen Parameter ist hinterlegt das die Zeichnung nicht aktuell zum Modell ist?


Ich habe mal eine Excel angehangen von meinem bisherigen Stand vielleicht kann mir ja jemand weiterhelfen. In dem Makro ist lediglich der Code aus dem Beispiel da ich dies erst mal zum Laufen bringen wollte (Verbindungs-Herstellung) und die Tabelle wo ich alle Zeichnungen der Unterbaugruppen aufführen möchte mit dem Status der Aktualität.

Excel 2007
Inventor 2018

Vielen Dank

Thomas

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 04. Sep. 2020 15:06    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

Ins Blaue geraten, dein Excel ist 32-bit, der Inventor 64-bit? Das wird mutmaßlich nix. Die Fehlermeldung klingt für mich jedenfalls danach. Excel2007 gab's meines Wissens nur als 32-bit, daher ist das eine Sackgasse.

------------------
MfG
Ralf

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 04. Sep. 2020 15:52    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,

ok Danke, da werde ich mich mal um eine 64-Bit Office Version kümmern.

Grüße Thomas

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 04. Sep. 2020 20:50    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,

ich habe es jetzt mit einer 2018 Inventor Version (64-Bit) und einer Excel 2016 Version (64-Bit) probiert und ich habe gleichen Probleme.

hat noch jemand eine Idee oder Vorschlag?

Danke, grüße Thomas 

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 06. Sep. 2020 12:56    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,

der ApprenticeServer funktioniert jetzt. Wenn ich aber den RequiresUpdate auslesen will kommt ein Fehler (RequiresUpdate : <Anwendungs- oder objektdefinierter Fehler> : Boolean).

Anbei mein erster Test:

Code:
Public Sub Zeichnung_prfüen()

Dim Dateipfad As String

Dateipfad = Range("a1").Value

Application.ScreenUpdating = False
Dim aApp As inventor.ApprenticeServerComponent
Set aApp = New ApprenticeServerComponent
'Load the selected parent assembly into apprentice
Dim aDoc As inventor.ApprenticeServerDrawingDocument
Set aDoc = aApp.Open(Dateipfad)

Range("A4").Value = Left(aDoc.FullDocumentName, InStrRev(aDoc.FullDocumentName, "\"))
Range("C4").Value = Right(aDoc.FullDocumentName, Len(aDoc.FullDocumentName) - Len(Range("A4")))

Dim a As Boolean
Dim akt As String

a = aDoc.RequiresUpdate

If a = True Then

        akt = "ja"
       
    Else
   
        akt = "nein"
       
End If


MsgBox "Zeichnung aktuell?:  " & akt


End Sub


Kann mir jemand weiterhelfen?

Danke

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

EIBe 3D
Mitglied
Dipl. - Ing. (FH)


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

Beiträge: 68
Registriert: 24.01.2020

HP Z4 G4 Workstation
Xeon 3,6 32GB
Nvidia P2000
WIN10
SW2015 SP5.0
SW2017
*************
Inv2018 akt.SP

erstellt am: 07. Sep. 2020 07:57    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo Thomas,

scheint mir, als würde das Zeichnungsdokument nicht geladen. Dann kann die Eigenschaft RequiresUpdate natürlich nicht ausgelesen werden. Hast du mal versucht das Makro im Einzelschritt verfahren zu durchlaufen (F8). Dann kannst du im Lokal Fenster überwachen ob alle Anweisungen erfolgreich durchlaufen werden und tatsächlich dein Zeichnungsdokument geladen wurde.

Grüße

EIBe 3D

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

bkrüger
Mitglied
Konstrukteur


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

Beiträge: 44
Registriert: 14.09.2014

Win10 IV2018 Vault2018-WG

erstellt am: 07. Sep. 2020 14:59    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo EIBe 3D,
das Dokument wird schon geladen, aber aDoc.RequiresUpdate existiert nicht.
Das kannst du sehen, indem du aDoc auf die Watchliste (RMT,"Überwachung hinzufügen") setzt in der Zeile nach Set aDoc... einen Brakpoint (F9) aktivierst.
Dann kannst du dir im Überwachungsfenster aDoc anschauen - und wirst sehen, dass in der Zeile RequiresUpdate unter Wert "<Anwendungs- oder objektdefinierter Fehler>" steht - diese Variable also im Kontext mit dem Apprentice-Server nicht existiert - im Inventor selbst aber schon.
Das heißt bis hierher, dass der Weg mit dem .RequiresUpdate nur im Inventor gangbar ist.

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

bkrüger
Mitglied
Konstrukteur


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

Beiträge: 44
Registriert: 14.09.2014

Win10 IV2018 Vault2018-WG

erstellt am: 07. Sep. 2020 14:59    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 Thomas Thomas 10 Unities + Antwort hilfreich


[Diese Nachricht wurde von bkrüger am 07. Sep. 2020 editiert.]

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

EIBe 3D
Mitglied
Dipl. - Ing. (FH)


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

Beiträge: 68
Registriert: 24.01.2020

HP Z4 G4 Workstation
Xeon 3,6 32GB
Nvidia P2000
WIN10
SW2015 SP5.0
SW2017
*************
Inv2018 akt.SP

erstellt am: 07. Sep. 2020 17:35    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo zusammen,

hab das ganze nun mal hier nachvollzogen und das gleiche Verhalten bkrüger beobachten können.

RequiresUpdate scheint über Apprentice nicht abzurufen zu sein. Apprentice lädt wohl nicht das zur Zeichnung zugehörige 3D-Modell, womit kein Vergleich möglich ist.


bkrüger

Zitat:
...Das heißt bis hierher, dass der Weg mit dem .RequiresUpdate nur im Inventor gangbar ist

scheinbar 


Grüße

EIBe 3D

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

bkrüger
Mitglied
Konstrukteur


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

Beiträge: 44
Registriert: 14.09.2014

Win10 IV2018 Vault2018-WG

erstellt am: 07. Sep. 2020 19:16    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 Thomas Thomas 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von EIBe 3D:
Hallo zusammen,

hab das ganze nun mal hier nachvollzogen und das gleiche Verhalten bkrüger beobachten können.

RequiresUpdate scheint über Apprentice nicht abzurufen zu sein. Apprentice lädt wohl nicht das zur Zeichnung zugehörige 3D-Modell, womit kein Vergleich möglich ist.

Grüße

EIBe 3D


Doch, doch - Apprentice lädt die referenzierten Dateien - referenceddocuments, referencefiles usw. sind belegt - das sind sie jedoch nicht, wenn er die ref. Dateien nicht findet - er generiert sich also seine Objektvariablen aus den vorgefundenen referenzierten Dateien. Nur RequireUpdate des Hauptdokumentes nicht.
Soweit ich gelesen habe, ist das Öffnen einer Datei im Inventor im Gegensatz zu Apprentice nicht viel langsamer - man muss es nur unsichtbar (ich glaube hidden, ein Parameter der open-Funktion) machen.

Grüße

[Diese Nachricht wurde von bkrüger am 07. Sep. 2020 editiert.]

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 07. Sep. 2020 21:25    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

@Thomas Thomas
Kannst du uns noch sagen was die Lösung für den Apprenticefehler war? Vielleicht braucht es ja noch einmal jemand.

Dann gebt dem HealthStatus-Property eine Chance. Wenn es nicht 11778 ist, sollte eine Aktualisierung notwendig sein und es ist auch über Apprentice ansprechbar. Das unsichtbare Öffnen von Dateien im Inventor hat seine Nachteile. Das Starten von Inventor dauert länger. Eventuell stören AddIn's den Durchlauf z.B. durch unerwartete Rückfragedialoge. Für den User sieht's eventuell auch seltsam aus, auf ein leeres Inventorfenster zu schauen.

------------------
MfG
Ralf

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

EIBe 3D
Mitglied
Dipl. - Ing. (FH)


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

Beiträge: 68
Registriert: 24.01.2020

HP Z4 G4 Workstation
Xeon 3,6 32GB
Nvidia P2000
WIN10
SW2015 SP5.0
SW2017
*************
Inv2018 akt.SP

erstellt am: 08. Sep. 2020 08:41    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo zusammen,

@bkrüger:
Danke für deine Erläuterungen, ich habe das Ganze nicht intensiv weiter verfolgt, schließlich ist es nicht mein Projekt 

@rkauskh:
Dir auch vielen Dank für das Aufzeigen einer Alternative. Habe den Code von Thomas Thomas angepasst und bei einem flüchtigen Test schien alles zu funktionieren. Wer weiß wann ich Ähnliches mal brauchen kann.

@Thomas:

Hier die Anpassungen

Code:
Public Sub Zeichnung_pruefen()

Dim Dateipfad As String

Dateipfad = Range("a1").Value

Application.ScreenUpdating = False
Dim aApp As Inventor.ApprenticeServerComponent
Set aApp = New ApprenticeServerComponent
'Load the selected parent assembly into apprentice
Dim aDoc As Inventor.ApprenticeServerDrawingDocument
Set aDoc = aApp.Open(Dateipfad)

Range("A4").Value = Left(aDoc.FullDocumentName, InStrRev(aDoc.FullDocumentName, "\"))
Range("C4").Value = Right(aDoc.FullDocumentName, Len(aDoc.FullDocumentName) - Len(Range("A4")))

Dim a As HealthStatusEnum 'Boolean
Dim akt As String

a = aDoc.HealthStatus

If a = 11778 Then

        akt = "ja"
     
    Else
 
        akt = "nein"
     
End If


MsgBox "Zeichnung aktuell?:  " & akt


End Sub



Viele Grüße

EIBe 3D

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 10. Sep. 2020 17:08    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


TreeView.zip

 
Hallo,

vielen Dank für die Antworten. Ich habe es jetzt so hinbekommen wie ich wollte. Um den Apprenticeserver zum laufen zu bekommen hatte ich ein Beispiel aus dem Internet geladen. In der Anlage ist ein Bild mit den Verweisen die bei mir aktiviert sind.

Ein Frage hätte ich noch, wann ist der HealthStatus = 11778 bzw. wann ist er ungleich 11778. Ich habe Zeichnungen wo der Wert ungleich 11778 (also Zeichnung nicht aktuell mit Modell) und beim Vergleich mit der PDF die bei Zeichnungserstellung (ca. vor 3 Monaten) abgelegt wurde habe ich keinen Unterschied festgestellt. Als ich die Zeichnung erneut abgespeichert habe war der Wert dann gleich 11778. Kann mir da jemand weiterhelfen?

Code:
Public Sub Baugruppe_durchlaufen()

Range(Rows(11), Rows(Rows.Count)).Delete 'löschen ab Zeile 11
   
Dim aApp As Inventor.ApprenticeServerComponent
Set aApp = New ApprenticeServerComponent
    'Load the selected parent assembly into apprentice
Dim aDoc As Inventor.ApprenticeServerDocument

Worksheets("Sheet1").Range("A11").BorderAround _
ColorIndex:=25, Weight:=xlThin

Set aDoc = aApp.Open(Range("a1").Value)

Zeile = 10

 
    For Each aDoc In aDoc.AllReferencedDocuments
               
        Zeile = Zeile + 1
       
        Dateiname = Left(aDoc.FullDocumentName, InStrRev(aDoc.FullDocumentName, ".")) & "idw"
       
        If InStr(1, Dateiname, "Kaufteil", vbTextCompare) Or InStr(1, Dateiname, "Werkst", vbTextCompare) Or InStr(1, Dateiname, "Normteil", vbTextCompare) Or InStr(1, aDoc.FullFileName, ".ipt", vbTextCompare) Then 'prüfen ob Kaufteil im Dateipfad vorhanden ist
       
            Zeile = Zeile - 1
           
            MsgBox (aDoc.FullFileName)
           
        Else
       
       
                    Range("A" & Zeile).Value = aDoc.DisplayName
               
                    Range("F" & Zeile).Value = aDoc.FullFileName
               
               
                    Range("A" & Zeile).BorderAround _
                    ColorIndex:=1, Weight:=xlThin
               
                    Range("B" & Zeile).BorderAround _
                    ColorIndex:=1, Weight:=xlThin
                   
                    Range("c" & Zeile).BorderAround _
                    ColorIndex:=1, Weight:=xlThin
                   
                    Range("D" & Zeile).BorderAround _
                    ColorIndex:=1, Weight:=xlThin
                   
                    Range("E" & Zeile).BorderAround _
                    ColorIndex:=1, Weight:=xlThin
                   
                    Range("F" & Zeile).BorderAround _
                    ColorIndex:=1, Weight:=xlThin
         
       
                If Dir(Dateiname) <> "" Then 'Datei vorhanden?
                         
                    Range("B" & Zeile).Value = ""
                    Range("C" & Zeile).Value = ""
                    Range("B" & Zeile).Value = "x"
                   
                    Call pruefen(Zeile, Dateiname)
                   
                Else
                   
                    Range("B" & Zeile).Value = ""
                    Range("C" & Zeile).Value = ""
                    Range("C" & Zeile).Value = "x"
                           
                End If
               
          End If
               
    Next

MsgBox ("Prüfung abgeschlossen")
   
End Sub

Public Sub pruefen(Zeile, Dateiname)

Application.ScreenUpdating = False
Dim aApp As Inventor.ApprenticeServerComponent
Set aApp = New ApprenticeServerComponent
    'Load the selected parent assembly into apprentice
Dim aDoc As Inventor.ApprenticeServerDrawingDocument
Set aDoc = aApp.Open(Dateiname)

'Range("A11").Value = Left(aDoc.FullDocumentName, InStrRev(aDoc.FullDocumentName, ".")) & "idw"
'Range("C10").Value = Right(aDoc.FullDocumentName, Len(aDoc.FullDocumentName) - Len(Range("A4")))

Dim a As HealthStatusEnum
Dim akt As String

a = aDoc.HealthStatus

If a = 11778 Then

        akt = "ja"
        Range("D" & Zeile).Value = ""
        Range("E" & Zeile).Value = ""
        Range("D" & Zeile).Value = "x"
   
    Else

        akt = "nein"
        Range("D" & Zeile).Value = ""
        Range("E" & Zeile).Value = ""
        Range("E" & Zeile).Value = "x"
   
End If

End Sub


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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 10. Sep. 2020 18:34    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

Was sollen wir in der OCX im Anhang denn sehen?
Der HealthStatus ungleich 11778 kann dadurch entstehen, das eine in der Zeichnung referenzierte Komponente (Bauteil/ Baugruppe) nach der letzten Speicherung der Zeichnung verändert wurde. Inventor "erkennt" das meines Wissens am FileSaveCounter der referenzierten Komponente. Entscheidend ist dabei nicht, dass das Modell geometrisch geändert wurde, sondern das eine Änderung in erneutes Speichern ausgelöst hat.

------------------
MfG
Ralf

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 16. Sep. 2020 16:46    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


VerweisefurMakroZeichnungpruefen.jpg

 
Hallo,

vielen Dank für die Antwort. Die in dem vorherigen Beitrag angehangene Datei habe ich unter Verweise in Excel zugewiesen das der ApprenticeServer funktioniert.

In der Anlage noch ein Bild von den Einstellungen die ich in den Verweisen in Excel vorgenommen habe.

Frage:

Ich habe das Makro jetzt bei einer großen Baugruppe probiert und die Zeichnungen die mir angezeigt werden (HealthStatus ungleich 11778) aktualisiert (akt. + Zeichnung gespeichert). Wenn ich die Prüfung erneut durchlaufen lasse gibt es den Fall das der Wert erst bei 11778 (= Zeichnung akt.) und wenn ich dann weitere Zeichnungen aktualisiere und die Prüfung erneut durchführe der Wert der vorherigen Zeichnungen wieder ungleich 11778 ist. Die Zeichnungen oder Baugruppen sind nicht verknüpft, es sind eigenständige kleine Untergruppen.


Ich denke der Parameter HealthStatus ist für die Aufgabe warscheinlich nicht das RIchtige. Gibt es noch einen anderen Ansatz, hat jemand eine Idee?

Vielen Dank

Grüße Thomas

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 16. Sep. 2020 22:07    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

Nein, ich denke es gibt kein weiteres Property dass anzeigt ob Aktualisierungen ausstehen. Ich denke deine Aktualisierungen sind entweder unvollständig, die Reihenfolge stimmt nicht oder die Baugruppe ist beschädigt.
Ohne die Baugruppe selbst untersuchen zu können, kann ich nur Vermutungen anstellen. Wenn du die erneut als nicht aktuell angezeigten Zeichnungen nochmal öffnest und wieder schließt, will Inventor sie dann wieder speichern? Will er nur die IDW speichern oder auch Bauteile/Baugruppen?

------------------
MfG
Ralf

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 17. Sep. 2020 19:55    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,

ok schade, die Zeichnung und Baugruppe will Inventor nicht nochmal speichern. Was meinst du mit Reihenfolge? Das zuerst die Baugruppe und dann die Zeichnung gespeichert wird? Die Baugruppe ist eigentlich ok, zumindest ist das rote Kreuz nicht vorhanden.

Wird der Wert auch ungleich 11778 wenn zB Normteile in anderen Baugruppen verbaut sind und dies beim Baugruppe speichern erneut gespeichert werden?

Grüße Thomas

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 17. Sep. 2020 20:02    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,

ich möchte noch kurz hinzufügen, beim mir kommt immer ein Wert von 11779 raus.

kOutOfDateHealth 11779 Object needs to be recomputed with respect to its 'driver(s)

Grüße Thomas

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 17. Sep. 2020 21:51    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

Wenn in zwei Baugruppen das gleiche (Norm)Teil verbaut ist und beim Speichern der einen Baugruppe auch das (Norm)Teil gespeichert wird, "merkt" die andere Baugruppe das beim nächsten Öffnen an dem um eins erhöten FileSaveCounter des (Norm)Teils. Wenn dadurch ein abwechselndes Speichern der beiden Baugruppen ausgelöst wird, wirst du nie alle Zeichnungen aktuell bekommen.
Die Frage ist jetzt warum das Normteil jedes Mal gespeichert werden will?

------------------
MfG
Ralf

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

Thomas Thomas
Mitglied



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

Beiträge: 34
Registriert: 27.02.2020

erstellt am: 23. Sep. 2020 20:02    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,

ok das ist verständlich. Ich habe jedoch Zeichnungen wenn ich diese speichere werden diese immer als nicht aktuell angezeigt. Was kann ich noch probieren oder prüfen? Ich habe mal mit folgenden Einstellungen rumprobiert.

Datei -> Option -> Speichern
Datei -> Option -> Zeichnungen -> Aktualisierungen im Hintergrund aktivieren

Vielen Dank

Grüße Thomas

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik


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

Beiträge: 1637
Registriert: 15.11.2006

Windows 10 x64, Inventor 2020

erstellt am: 24. Sep. 2020 20:27    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 Thomas Thomas 10 Unities + Antwort hilfreich

Hallo

Das ist ohne ein Beispiel nahezu unmöglich zu beurteilen. Es kann vermackte Dateien geben, die aus irgendeinem Grund das Property nicht korrekt aktualisieren. Die kann man nur neu machen. Es kann aber ebenso sein, das in den referenzierten Dateien was nicht stimmt. Du könntest mal alle Ansichten ect. aus einer Kopie der IDW löschen und schauen ob es dann immer noch konstant nicht 11778 im Property steht. Das Problem kannst du nur systematisch einkreisen.

------------------
MfG
Ralf

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