| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: OnSave Event springt auch bei Saveas und Saveascopy an (1146 mal gelesen)
|
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001 Inventor 2 bis 2022 häufig wechselnder Rechnerverkehr
|
erstellt am: 27. Mrz. 2008 22:29 <-- editieren / zitieren --> Unities abgeben:
|
daywa1k3r Moderator Softwareentwickler
Beiträge: 3497 Registriert: 01.08.2002 Alienware m17x, Win7, Inventor2012
|
erstellt am: 27. Mrz. 2008 23:47 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Hallo Andreas, also ich würde versuchen in das Event (kBefore) eine Überprüfung zu implementieren. Dabei würde ich Context (NameValueMap) überwachen, und zwar den Wert davon (The full filename that document is being saved to). So nun geht man davon aus, dass wir einen Speichervorgang aus zwei Zuständen starten können: 1. Die Datei ist bereits gespeichert – in dem Fall existiert ein FullFileName 2. Die Datei ist noch nicht gespeichert – hier existiert kein FullFileName Wenn wir die Situation 1 haben, entsprechen meiner Meinung nach alle 3 Speichermöglichkeiten der Speichermöglichkeit „Speichern“. Beispiel: Neue Datei erstellen und mit „Kopie speichern unter“ speichern. Wenn man jetzt die Datei schließt wird man nicht mehr gefragt ob die Datei gespeichert werden soll. Also es wurde nicht eine Kopie gespeichert, da es die Datei physikalisch nie gab, sondern eben die Datei selbst. Also das gleiche wie normales „Speichern“ oder „Speichern unter“. Warum da alle Optionen aktiv sind, weiß ich nicht. Richtig wäre nur die Option „Speichern“ einzublenden. Aber egal. So wenn das Dokument kein FullFileName hat, dann kann man den Speichervorgang immer als „Speichern“ betrachten. Aber diese Überprüfung reicht nicht, da man auch wenn die Datei existiert „Speichern“ auslösen kann. Und hier kommt dann NameValueMap ins Spiel, denn wenn der Wert (The full filename that document is being saved to) gleich Document.FullFileName ist, dann ist es wieder ein „Speichern“. Wenn nicht, dann ist es wohl „Speichern unter“ bzw. „Kopie speichern unter“. Also praktisch (vorsicht ohne den Editor erstellt):
Code:
If(BeforeOrAfter == kBefore) If(oDoc.FullFileName == "" | | oDoc.FullFileName == Context.Value) Ist nur ein "Speichern"
Aber, wie gesagt, war das nur eine Überlegung. Ob die Theorie stimmt, musst du mal prüfen. ------------------ Grüße Igor
FX64 Software Solutions Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 28. Mrz. 2008 08:20 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
|
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001 Inventor 2 bis 2022 häufig wechselnder Rechnerverkehr
|
erstellt am: 28. Mrz. 2008 12:11 <-- editieren / zitieren --> Unities abgeben:
Danke Igor, danke Paul Zitat: Warum da alle Optionen aktiv sind, weiß ich nicht. Richtig wäre nur die Option „Speichern“ einzublenden.
Denke ich auch! Aber mit dem Context (NameValueMap) ist eine gute Idee. Werde ich mal ausprobieren. Folgendes Problem: DXF erstellen bei jedem Speichern einer IDW. Bei SaveAs oder Saveascopy erstellt er mir von der Ursprungsidw eine DXF. Eigentlich möchte ich hier gar keine DXF schiessen. Ich wende hier auch kAfter an, damit kein Dxf bei nichterfolgter Speicherung (Schreibschutz, Reservierung ...) geschossen wird. ------------------ Gruß SEHER www.inventor-tools.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Projektingenieur:in Automatisierungstechnik (m/w/d) | Du suchst einen Arbeitgeber, der Dir spannende Herausforderungen und langfristige Perspektiven bietet? An unserem Lausitzer Produktionsstandort in Schwarzheide arbeiten 2000 Kollegen und Kolleginnen gemeinsam daran, dass die Chemie stimmt. Wir setzen auf Innovation und Nachhaltigkeit. Unsere vier Unternehmenswerte kreativ, offen, verantwortungsvoll und unternehmerisch legen fest, wie wir miteinander arbeiten.... | Anzeige ansehen | Projektmanagement |
|
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 03. Apr. 2008 13:04 <-- editieren / zitieren --> Unities abgeben:
|