Hot News aus dem CAD.de-Newsletter:

Mit UnterstŁtzung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Dateinamen im SaveAs-Dialog vorbelegen

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 im SaveAs-Dialog vorbelegen (1219 mal gelesen)
SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 09: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


Mein_Wunsch_Dateiname.jpg

 
Hallo und Guten Tag,

dies ist mein erster Beitrag hier in diesem Forum, darum möchte ich mich erst mal bei Euch vorstellen. Ich arbeite als Softwareentwickler bei einer mittelständischen Firma, die verschiedene Arten von Wärmeaustauschern produziert. Im Bereich CAD habe ich Erfahrung mit AutoCAD bis Version R14, das ist also schon eine Weile her. :-)

Seit Anfang März diesen Jahres (2016) arbeite ich mit der SolidWorks-Api-Schnittstelle(Windows 7 Professionel SP1, SolidWorks 2015 SP5.0 X64 Edition), die ich über ein in VC6 geschriebenes Programm ansteuere. Ziel meiner Arbeit ist es, nach der Eingabe einer Kennziffer automatisch ein PART oder ASSEMBLY zu erzeugen. Um das Ziel zu erreichen, arbeite ich eng mit einigen Konstrukeuren aus unserem Hause zusammen.

Dank der sehr guten und ausführlichen Online-Dokumentation und den vielen Programmierbeispielen zur SolidWorks-Api-Schnittstelle konnte ich bisher viel erreichen und zahlreiche PARTS werden schon automatisiert und parameterisiert erzeugt.

Jetzt stehe ich allerdings vor einem vermutlich einfachen Problem, wo ich weder mit einer Google-Suche noch mit einer Recherche in der SolidWorks-Online-Dokumentation weiter komme. Deshalb stelle ich die Frage hier.

Frage: Wie kann ich bei einer gerade eben erzeugten PARTS- oder ASSEMBLY-Datei den zukünftigen Dateinamen im SaveAs-Dialog vorbelegen? Einen Screenshot habe ich zur Verdeutlichung beigelegt.

Vielen Dank im Vorraus für Eure hilfreichen Tips

[Diese Nachricht wurde von SWX-Qušler am 18. Jul. 2016 editiert.]

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

CAD-Maler
Mitglied
Konstrukteur / CAD-Admin / Mšdchen fŁr alles


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

Beitršge: 639
Registriert: 17.01.2007

SWX 2017 SP5
AutoCAD 2016
Win 10 pro 64 bit
Intel Xeon 3,6GHz
64GB RAM
Nvidia Quadro M5000
SWx EPDM

erstellt am: 18. Jul. 2016 10: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 SWX-Qušler 10 Unities + Antwort hilfreich

Hallo!

Den SaveAs-Dialog würde ich bei einem Makro gar nicht nutzen, sondern nur mit

Code:
value = instance.SaveAs(Name, Version, Options, ExportData, Errors, Warnings)

(falls du VBA nutzt ;) )

arbeiten. Wenns denn unbedingt sein muss, kann man noch mittels

Code:
object.GetFolder(folderspec)

oder ähnlichen eine Abfrage zum Zielordner einbauen. Brauchts aber in der Regel auch nicht, da der meistens auch vorher schon feststeht.

Gruß, Jens

------------------
CSWA, CSWP =)

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 10:42    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 denke, Du hast meine Frage nicht verstanden und auch meinen Beitrag nicht gelesen, denn dann wüsstest Du, dass ich mit VC6 arbeite. Ich will SaveAs nicht benutzen. Meine Frage lautet: "Wie kann ich bei einer gerade eben erzeugten PARTS- oder ASSEMBLY-Datei den zukünftigen Dateinamen im SaveAs-Dialog vorbelegen?"

Ich ersetze mal das Wort "SaveAs-Dialog" durch "Speichern unter-Dialog".

Hast Du Dir mal meinen Screenshot dazu angeschaut? Dann wirds deutlicher, was ich will.

[Diese Nachricht wurde von SWX-Qušler am 18. Jul. 2016 editiert.]

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 11:15    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 zusammen,

die folgenden Befehle habe ich ausprobiert, leider ohne Erfolg.

IModelDoc2.SetTitle2("Mein_Wunsch_DateiName.SLDPRT");
IModelDoc2.SetSaveAsFileName("Mein_Wunsch_DateiName.SLDPRT");
ISldWorks.SetNewFilename("Mein_Wunsch_DateiName.SLDPRT");

[Diese Nachricht wurde von SWX-Qušler am 18. Jul. 2016 editiert.]

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 11:33    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

Zitat:
Original erstellt von Winni-two:
Hallo,

such mal in der API-Hilfe unter SetTitle2 - damit kannst du den Namen der Zeichnung/Teil/Baugruppe setzen. Ich glaube das ist das was du suchst.

Gruss Winni



Vielen Dank,

funktioniert nicht. Da wird nur der Titel des Dokuments geändert. Sieh mein Beitrag direkt über Deinem.

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

Winni-two
Mitglied
Ing. Maschb.


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

Beitršge: 136
Registriert: 12.03.2010

SW 2018 SP5
Intel Xenon W2135 @3.7GHz
Win 10 64 bit
Graka: Nvidia Quadro P4000
32 GB Ram

erstellt am: 18. Jul. 2016 11:40    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 SWX-Qušler 10 Unities + Antwort hilfreich

Also wenn ich folgendes Macro starte:

Sub main()
 
Dim swApp As Object
Dim Teil As Object
Dim BOOLSTATUS As Boolean

Set swApp = CreateObject("SldWorks.Application")
Set Teil = swApp.ActiveDoc

BOOLSTATUS = Teil.SetTitle2("Test")

End Sub

Kommt dann unter speichern unter der Name Test.SLDPRT

Gruss Winni

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

CAD-Maler
Mitglied
Konstrukteur / CAD-Admin / Mšdchen fŁr alles


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

Beitršge: 639
Registriert: 17.01.2007

SWX 2017 SP5
AutoCAD 2016
Win 10 pro 64 bit
Intel Xeon 3,6GHz
64GB RAM
Nvidia Quadro M5000
SWx EPDM

erstellt am: 18. Jul. 2016 12:53    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 SWX-Qušler 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von SWX-Quäler:
Hallo,

ich denke, Du hast meine Frage nicht verstanden und auch meinen Beitrag nicht gelesen, denn dann wüsstest Du, dass ich mit VC6 arbeite.


Ich habe sowohl deinen Beitrag gelesen als auch (denke ich zumindest) deine Frage verstanden. Auf das VC6 konnte (und kann) ich mir keinen Reim machen; als ich danach gegoogelt habe, waren die ersten 10 Treffer Links zu Staubsaugern, daher nur der VBA-Code. I.d.R. geht es ja einfach nur darum, die richtigen Stichwörter zu finden.

Zitat:
Ich will SaveAs nicht benutzen.

Ohne jetzt nach dem "Warum denn nicht?" zu fragen: Das steht nirgends und meine Kristallkugel ist grad im wohlverdienten Sommerurlaub.

Zitat:

Meine Frage lautet: "Wie kann ich bei einer gerade eben erzeugten PARTS- oder ASSEMBLY-Datei den zukünftigen Dateinamen im SaveAs-Dialog vorbelegen?"

Ich ersetze mal das Wort "SaveAs-Dialog" durch "Speichern unter-Dialog".

Hast Du Dir mal meinen Screenshot dazu angeschaut? Dann wirds deutlicher, was ich will.


Da dir der alternative Lösungsweg (scheinbar) nicht gefällt, kann ich dir leider auch nicht weiterhelfen.

Gruß, Jens

------------------
CSWA, CSWP =)

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 12: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


1_Vor_SetTitle2.jpg


2_Nach_SetTitle2.jpg

 
Mein Workflow geht so:

Mein VC6-Programm steuert SolidWorks per API und lädt eine Masterdatei, befüllt die darin enthaltenen custom properties, setzt das Mateial, liest Bohrungskoordinaten usw. Wenn alle Arbeitsschritte abgearbeitet sind, möchte ich einen neuen Dateinamen vorbelegen.

ich habe jetzt mal etwas mit IModelDoc2.SetTitle2("Test") rumgespielt.

Wenn die Masterdatei NICHT schreibgeschützt ist, dann kann ich den Namen NICHT in "Test" ändern; der Rückgabewert von SetTitle2() ist false.

Wenn die Masterdatei schreibgeschützt ist, dann kann ich den Namen in "Test" ändern; der Rückgabewert von SetTitle2() ist true.

Beachte meine Screenshots: Das erste Bild zeigt den Zustand NICHT schreibgeschützt, das zweite Bild den Zustand schreibgeschützt. Im zweiten Bild wird nur der Windows-Titel auf "Test" geändert, nicht aber der Dateiname im Speichern-Dialog bzw. im Speichern unter-Dialog.
Leider ist Dein Vorschlag für mich nicht brauchbar. Ich möchte erreichen, das der Dateiname im Speichern-Dialog bzw. im Speichern unter-Dialog "Test" enthält.

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 12:58    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

Zitat:
Original erstellt von CAD-Maler:

Da dir der alternative Lösungsweg (scheinbar) nicht gefällt, kann ich dir leider auch nicht weiterhelfen.

Gruß, Jens


VC6 = Microsoft Visual C++ Version 6.0

Ich will nicht speichern, sondern nur den Dateinamen in geeigneter Weise vorbelegen.
Dein Vorschlag speichert mein Dokument und geht somit am Thema vorbei.

[Diese Nachricht wurde von SWX-Qušler am 18. Jul. 2016 editiert.]

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

CAD-Maler
Mitglied
Konstrukteur / CAD-Admin / Mšdchen fŁr alles


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

Beitršge: 639
Registriert: 17.01.2007

SWX 2017 SP5
AutoCAD 2016
Win 10 pro 64 bit
Intel Xeon 3,6GHz
64GB RAM
Nvidia Quadro M5000
SWx EPDM

erstellt am: 18. Jul. 2016 14:15    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 SWX-Qušler 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von SWX-Quäler:
Ich will nicht speichern, sondern nur den Dateinamen in geeigneter Weise vorbelegen.

Danke für die Info zu C++.

Jetzt muss ich die provokante Frage doch mal noch stellen:

Wozu willst du im Speichern-Unter-Dialog einen Dateinamen festlegen, wenn du dann nicht speichern willst bzw. der Nutzer später nicht auf Speichern klicken soll? 

Das Zwischenziel, das du mit deiner Frage/Programmierung erreichen willst, ist schon klar, nur was hinten raus kommen soll, nicht. Wenn es für das Zwischenziel keinen sinnvollen Weg gibt, gibt es vielleicht einen anderen, um das Endziel zu erreichen!?

Es steht dir völlig frei, dich auf das Eintragen eines (temporären?) Dateinamens zu versteifen, aber in dem Punkt kann ich dir, wie schon erwähnt, nicht helfen.

Gruß, Jens

------------------
CSWA, CSWP =)

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 14:24    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

Zitat:
Original erstellt von CAD-Maler:

Danke für die Info zu C++.

Jetzt muss ich die provokante Frage doch mal noch stellen:

Wozu willst du im Speichern-Unter-Dialog einen Dateinamen festlegen, wenn du dann nicht speichern willst bzw. der Nutzer später nicht auf Speichern klicken soll?†† 

Das Zwischenziel, das du mit deiner Frage/Programmierung erreichen willst, ist schon klar, nur was hinten raus kommen soll, nicht. Wenn es für das Zwischenziel keinen sinnvollen Weg gibt, gibt es vielleicht einen anderen, um das Endziel zu erreichen!?

Es steht dir völlig frei, dich auf das Eintragen eines (temporären?) Dateinamens zu versteifen, aber in dem Punkt kann ich dir, wie schon erwähnt, nicht helfen.

Gruß, Jens



Wie schon geschrieben, lade ich eine Masterdatei "MASTER_XYZ.SLDPRT", beschreibe die Custom Properties und lasse die Datei mittels EditRebuild3() neu zeichen.

1)
Ich möchte nicht, das meine Programmanwender die Datei "MASTER_XYZ.SLDPRT" überschreiben, deshalb will ich den Dateinamen sinnvoll nach einem hier im Hause vorgegebenen Schema vorbelegen.

2)
Ich kann nicht wissen, ob meine Programmanwender den vorgegeben Dateinamen so haben wollen. Z.B. kommt es vor, dass noch ein Zusatz zum Dateinamen hinzugefügt werden soll. Diese Option will ich nicht verbauen.

3)
Das ist eine Vorgabe von unseren Konstrukteuren.

[Diese Nachricht wurde von SWX-Qušler am 18. Jul. 2016 editiert.]

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

Winni-two
Mitglied
Ing. Maschb.


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

Beitršge: 136
Registriert: 12.03.2010

SW 2018 SP5
Intel Xenon W2135 @3.7GHz
Win 10 64 bit
Graka: Nvidia Quadro P4000
32 GB Ram

erstellt am: 18. Jul. 2016 14: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 SWX-Qušler 10 Unities + Antwort hilfreich

Hallo,

du könntest dann per Macro das geladene Teil neu abspeichern und das neu gespeicherte Teil per Macro im Ordner wieder löschen. Nicht besonder elegant - müsste aber funktionieren.

Gruss Winni

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

CAD-Maler
Mitglied
Konstrukteur / CAD-Admin / Mšdchen fŁr alles


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

Beitršge: 639
Registriert: 17.01.2007

SWX 2017 SP5
AutoCAD 2016
Win 10 pro 64 bit
Intel Xeon 3,6GHz
64GB RAM
Nvidia Quadro M5000
SWx EPDM

erstellt am: 18. Jul. 2016 14: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 Nur für SWX-Qušler 10 Unities + Antwort hilfreich


Speichern1_20160718.png

 
Ich bin der Überzeugung, dass es einfacher, schneller und sicherer ist, eine kleine Userform (siehe Anhang) zu programmieren, als den Nutzer im Speichern-Unter-Dialog "rumpfuschen" zu lassen.

In der Textbox kannst du ohne Probleme den Wunsch-Dateinamen nach dem Benennungsschema hinterlegen. Falls der Konstrukteur was daran ändern will, kann er das direkt da tun. Den Wert kannst du dann wieder auslesen und fürs Speichern den Namen draus basteln.

Dito fürs Speicher-Verzeichnis.

Und Hand aufs Herz: Auf Vorlagen jedweder Art gehört prinzipiell Schreibschutz drauf. 

Gruß, Jens

------------------
CSWA, CSWP =)

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 18. Jul. 2016 15:05    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

Zitat:
Original erstellt von CAD-Maler:
Ich bin der Überzeugung, dass es einfacher, schneller und sicherer ist, eine kleine Userform (siehe Anhang) zu programmieren, als den Nutzer im Speichern-Unter-Dialog "rumpfuschen" zu lassen.

Nicht der User hat darauf Zugriff, sonder ich, der Entwickler. Außerdem sind alle Speicherpfade vorgegeben. Wir schweifen jetzt aber vom eigentlichen Thema ab.


Zitat:
Original erstellt von CAD-Maler:
Und Hand aufs Herz: Auf Vorlagen jedweder Art gehört prinzipiell Schreibschutz drauf.

Die Vorlagen sind schreibgeschützt; später werden sie aus dem EPDM ausgecheckt. Das war aber nicht Thema meiner Frage.

[Diese Nachricht wurde von SWX-Qušler am 18. Jul. 2016 editiert.]

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

HenryV
Mitglied
Konstrukteur, Engineering


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

Beitršge: 698
Registriert: 18.05.2005

SolidWorks 2018 x64 SP4.0
Dell T3600 Workstation
Intel XENON 6x3.2 GHz
NVIDIA Quadro 4000 2 GB
16GB RAM
2x Dell U2412M, 24" TFT
Windows 7 Professional x64 SP1
Microsoft Office Pro 2010 SP2
Kaspersky Anti-Virus 10.2.4.674
Microsoft VB 2010 Express
SpacePilot von 3Dconnexion

erstellt am: 18. Jul. 2016 16: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 Nur für SWX-Qušler 10 Unities + Antwort hilfreich

Hallo SWX-Quäler

IModelDoc2.SetTitle2("Mein_Wunsch_DateiName.SLDPRT");
-Funktioniert nur bei neuen aus einer Vorlage (*.prtdot,*.asmdot,*.drwdot) erstellten und noch nicht gespeicherten Dokumenten

IModelDoc2.SetSaveAsFileName("Mein_Wunsch_DateiName.SLDPRT");
-Funktioniert nur im FileSaveAsNotify2EventHandler

ISldWorks.SetNewFilename("Mein_Wunsch_DateiName.SLDPRT");
-Funktioniert nur im FileNewPreNotifyEventHandler

Mein Vorschlag wäre deine "MASTER_XYZ.SLDPRT" zu "MASTER_XYZ.PRTDOT" (Vorlage-Datei) umzuspeichern.
Diese kannst du dann mit

Code:
Set Teil = swApp.NewDocument("\\Pfad\MASTER_XYZ.PRTDOT", 0, 0, 0)

laden. Dann funktioniert das SetTitle2 auch wie es sollte.

Gruss Andreas

------------------
21 ist nur die halbe Antwort.

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

SWX-Qušler
Mitglied
Software Developer


Sehen Sie sich das Profil von SWX-Qušler an!   Senden Sie eine Private Message an SWX-Qušler  Schreiben Sie einen Gästebucheintrag für SWX-Qušler

Beitršge: 30
Registriert: 04.07.2016

Windows 7 Professionel SP1
SOLIDWORKS Premium 2017 SP5.0 X64 Edition
SOLIDWORKS PDM Professional 17.05.0089

erstellt am: 19. Jul. 2016 10:04    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


Nach_SetTitle2.jpg

 
Zitat:
Original erstellt von HenryV:
Hallo SWX-Quäler

IModelDoc2.SetTitle2("Mein_Wunsch_DateiName.SLDPRT");
-Funktioniert nur bei neuen aus einer Vorlage (*.prtdot,*.asmdot,*.drwdot) erstellten und noch nicht gespeicherten Dokumenten

IModelDoc2.SetSaveAsFileName("Mein_Wunsch_DateiName.SLDPRT");
-Funktioniert nur im FileSaveAsNotify2EventHandler

ISldWorks.SetNewFilename("Mein_Wunsch_DateiName.SLDPRT");
-Funktioniert nur im FileNewPreNotifyEventHandler

Mein Vorschlag wäre deine "MASTER_XYZ.SLDPRT" zu "MASTER_XYZ.PRTDOT" (Vorlage-Datei) umzuspeichern.
Diese kannst du dann mit

Code:
Set Teil = swApp.NewDocument("\\Pfad\MASTER_XYZ.PRTDOT", 0, 0, 0)

laden. Dann funktioniert das SetTitle2 auch wie es sollte.

Gruss Andreas


Hallo,

ich habe jetzt mal ein kleines Projekt gestartet und bin nach Deinem Vorgaben vorgegangen.

swModel = swApp.NewDocument(MASTER.PRTDOT, swDwgPaperAsize, 0.0, 0.0);
bSetTitle = swModel.SetTitle2("700376652433.SLDPRT");

Funktioniert. Vielen Danke für Deine Hilfe.

Nachtrag!

Ich habe jetzt eine Weile mit der obigen Methode rumgespielt und sie in mein Hauptprojekt eingebaut, wo sie nicht bzw. nur teilweise funktioniert (siehe Screenshot). :-(
Blöderweise funktioniert die Methode nun auch in meinem Testprojekt (wo ich es vorher ausprobiert habe und ich seit dem nichts verändert habe) nicht mehr. Wo kann ich noch drann drehen, damit ich mein Ziel erreichen kann?

[Diese Nachricht wurde von SWX-Qušler am 19. Jul. 2016 editiert.]

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