| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: in VBA Fehler-Status abfragen (156 / mal gelesen)
|
MSC Harri Mitglied
Beiträge: 4 Registriert: 10.01.2024
|
erstellt am: 10. Jan. 2024 14:36 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen Ich habe mir ein Blech-Exporter programmiert der so ganz gut funktioniert. Nur gibt es (rel. selten) Abwicklungen, die ein blaues Ausrufezeichen im Browser haben. Diese werde auf Grund eines Fehlers nicht aktualisiert. -> somit ist der Export falsch. Gibt es irgendwo ein Wert in z.B. ComponentDefinition, Document oder FlatPattern der diesen Fehlerstatus zeigt? Ich hab schon stundenlang gesucht Die einzige Möglichkeit ist der vergleich der Masse zwischen Abwicklung und Bauteil. Das ist allerdings ungenau und unbrauchbar, wenn die Abwicklung dann noch Bearbeitungen enthält. obwohl: Document.Dirty=Falsch Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2378 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 10. Jan. 2024 15:31 <-- editieren / zitieren --> Unities abgeben: Nur für MSC Harri
Moin Willkommen im Forum Sicher ein Ausrufezeichen und kein "i"? Das blaue Info-i weist eigentlich nicht auf einen Fehler hin, der sich in den Abmessungen niederschlagen sollte, sondern nur auf potentielle Probleme wie redundante Abhängigkeiten. Wie beseitigst du das i bzw. was löst es denn aus? Hast du mal das PartDocument.RequiresUpdate Propertie geprüft? Ist ein Boolean.
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MSC Harri Mitglied
Beiträge: 4 Registriert: 10.01.2024
|
erstellt am: 11. Jan. 2024 08:40 <-- editieren / zitieren --> Unities abgeben:
"i" ... ämm ja, Brille vergessen RequiresUpdate : Falsch : Boolean damit ist es leider nicht zu lokalisieren Ok, ich beschreib das nochmal genauer: - ein gefaltetes Blechbauteil: B1 - ein gefaltetes Blechbauteil: B2 wird abgeleitet von B1 (gespiegelt) - dabei wird die Blechregel mit übernommen (funktioniert auch so) - B1 wird geändert - beim aktualisieren der Baugruppe (wo beide enthalten sind) gibt es eine Warnung auf die Abwicklung von B2 - man kann das akzeptieren - hab ich gemacht - ein blaues i steht nun vor der Abwicklung von B2 - das hat zur Folge, das die Abwicklung nicht aktualisiert wird und die alte Abwicklung exportiert werden würde Diese Warnung: Gesamtes Bauteil aktualisieren: Beim Ausführen dieses Befehls sind Fehler aufgetreten. PTW2_B07-Test.ipt: Bei der Aktualisierung sind Warnungen aufgetreten. Abwicklung aus Körper mit überschriebener Regel wird nicht unterstützt. Die Aktualisierung der Abwicklung wird aufgeschoben, bis der Körper entsprechend den Blechvorgaben eingestellt ist. wird nur einmal angezeigt. Die Meldung lässt sich nur dann reproduzieren, wenn das Bauteil für sich geöffnet wird und 'Alles neu erstellen' ausgeführt wird. In der Baugruppe funktioniert das nicht mehr. Wie auch immer, ich such ein Wert der angibt das die Abwicklung 'ein blaues i' hat. Dann kann ich dies(e) Bauteile in einer Liste sammeln und mir nach dem Export listen lassen um dann entsprechend zu reagieren. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2378 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 11. Jan. 2024 10:31 <-- editieren / zitieren --> Unities abgeben: Nur für MSC Harri
Moin Man könnte es versuchen in jedem Blechteil vor dem Export den Wert von Document.[_SickNodesCount] zu prüfen, wobei sich die Doku auch sehr zurückhält was dieser Wert wann anzeigt. Alternativ könnte man vor dem Export ein Document.Update2(True) auslösen und schauen ob da ein False als Rückgabewert kommt. Wenn ja, kann man den Export überspringen und den Dokumentnamen merken. Und wenn Zei keine Rolle spielt, könnte man das HealthStatus Property prüfen. Das ist meiner Meinung für das blaue i verantwortlich. Scheinbar muss man aber jedes Feature, Constraint usw. einzeln prüfen. Eine Liste in der zu jedem Healthstatus die zugehörigen Objekte stehen konnte ihc nicht entdecken. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MSC Harri Mitglied
Beiträge: 4 Registriert: 10.01.2024
|
erstellt am: 11. Jan. 2024 14:19 <-- editieren / zitieren --> Unities abgeben:
Document.Update2(True) = True [_SickNodesCount] = 0 (im OK-Teil und nicht-OK-Teil) Den HealthStatus konnte ich nicht gleich finden. (aber irgendwo schonmal gesehen) Jedoch, beim Suchen bin ich über eine Lösung 'gestolpert' Document.BrowserPanes.Item(1).TopNode.BrowserNodes.Item(3).BrowserNodeDefinition.StateIconToolTipText wenn da etwas drinn steht gibt es irgend ein Problem oder/bzw. ...BrowserNodeDefinition.StateIcon muß Nothing sein nunja, immerhin hat die Diskussion zu ein Ziel geführt, danke für deine Bemühungen.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2378 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 11. Jan. 2024 14:30 <-- editieren / zitieren --> Unities abgeben: Nur für MSC Harri
Moin Nur das der ToolTip Text manchmal trotz angezeigtem Fehler leer ist. Zumindest hab ich das schon irgendwo gelesen. Wenn Update2 durchläuft, ist dann das blaue i weg? Wenn nicht, könnte man das Gleiche mal mit Rebuild2 versuchen.
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MSC Harri Mitglied
Beiträge: 4 Registriert: 10.01.2024
|
erstellt am: 11. Jan. 2024 14:59 <-- editieren / zitieren --> Unities abgeben:
Document.Rebuild2(True) = True Document.Update2(True) = True und das blaue i bleibt ich denke mal mit folgender Abfrage habe ich erstmal eine brauchbare 'Notlösung' set ABN = Document.BrowserPanes.Item("Modell").TopNode.BrowserNodes c = ABN.Count If ABN.Item(c).BrowserNodeDefinition.StateIcon is Nothing Then Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |