|
SolidWorks Enterprise PDM : EPDM API verzeichnis einer datei auslesen
riesi am 27.01.2021 um 13:55 Uhr (1)
Das sollte mit dem Document-Manager zu lösen sein. In der API-Hilfe gibt es auch ein Beispiel, probiert habe ich es noch nicht. Ausschnitt aus der API-Hilfe in SolidWorksCode:swDoc10 = (SwDMDocument10)swDoc;// SwDMDocument10::GetPreviewBitmap throws an unmanaged COM exception // for out-of-process C# console applications// Use the following code in SOLIDWORKS C# macros and add-ins object objBitMap = swDoc10.GetPreviewBitmap(out nError);
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : Teilenummer per Klick abrufen
riesi am 17.06.2021 um 10:22 Uhr (1)
Mein Makro ist nur ein Teilauschnitt aus unserem Addin, Du brauchst das Grundgerüst für ein eigenes Addin. (API-Hilfe zu PDM) Alternativ zur Schaltfläche lässt sich auch ein eigener Menüpunkt im Kontextmenü einfügen, genau wie bei Dispatch. Der Vorteil gegenüber Dispatch ist, dass Du den Zustand der Datei abfragen kannst. Wenn z.B. eingecheckt ist, auschecken und anschließend wieder einchecken.Alternativ zum Addin auch ein eigene App, wäre noch weniger Aufwand als ein Addin und dann kompl. über ganze Verze ...
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : Funktion als freigegeben einfügen
riesi am 07.09.2021 um 14:57 Uhr (1)
Die Funktion ist durchaus nutzbar und wir verwenden diese auch. Allerdings gibt es einiges zu bedenken: Wenn Konvertierungs-Jobs via Task laufen und die Formate im gleichen Verzeichnis abgelegt werden, wie die CAD-Datei, müsst Ihr auf die Doppelungs-Kontrolle aufpassen. Bei uns wird von jeder Zeichnung ein PDF erzeugt, welche in einem separaten Verzeichnis gespeichert werden. Bei Modellen würde ich es bleiben lassen. Werden diese von unterschiedlichen Positionen verbaut, gibt es jede Menge zusätzlicher Que ...
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : VB.NET - GetLocalVersionNo2 Method (IEdmFile12)
riesi am 12.11.2021 um 08:45 Uhr (1)
GetLocalVersionNo2 liefert nur Versions-Nr. welche im Cache liegt, wenn die Datei denn im Cache ist. Sonst -1, wie Du schon erkannt hast.Ich glaube, was Du brauchst ist das hier:Code:Function GetToCache(myVault As IEdmVault21, oFile As IEdmFile17, oFolderID As Integer, Handler As Integer) As Boolean Try Dim BatchGet As IEdmBatchGet = myVault.CreateUtility(EdmUtility.EdmUtil_BatchGet) BatchGet.AddSelectionEx(myVault, oFile.ID, oFolderID, oFile.CurrentVersion) BatchGet.CreateTree(Handler, E ...
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : VB.NET - GetLocalVersionNo2 Method (IEdmFile12)
riesi am 12.11.2021 um 10:35 Uhr (1)
Zitat:Über diese Document Manager API möchte ich Informationen aus unseren SW-Dateien auslesen.Hierzu müssen diese lokal in der aktuellen Version vorliegen.....Nun möchte ich die lokal ältere Datei mit der roten Kugel aus dem Tresor aktualisieren.Hier nochmal Deine obige Aussage. Meine Funktion hilft Dir, die aktuelle Version in den Cache zu bekommen. Mit der Abfrage, ob ausgecheckt, bist Du auf der sicheren Seite.
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : VB.NET - GetLocalVersionNo2 Method (IEdmFile12)
riesi am 18.11.2021 um 13:56 Uhr (1)
Mit Datum kommst Du nicht weiter, wenn Du Dateien vergleichen willst. Ich würde mit md5sum die Dateien vergleichen, dass sollte zu 100%igen Ergebnissen führen. Bei NuGet gibt es auch passende Pakete. Dazu musst Du Dir die Datei vom PDM in ein temporäres Verzeichnis kopieren und von Deinen jeweiligen Dateien im Chache jeweils eine Checksumme ziehen. Diese kannst Du dann vergleichen.
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : VB.NET - GetLocalVersionNo2 Method (IEdmFile12)
riesi am 25.11.2021 um 12:28 Uhr (1)
Des Rätsels Lösung kann eigentlich nur sein, dass die Datei gerade geöffnet ist und nicht aktualisiert werden kann. Gründe können sein:* In SolidWorks geöffnet (FileLock aufheben, dass kennst Du schon)* In Document-Manager-API noch geöffnet: ISwDMDocument == CloseDoc aufrufen* In PDM-API mit IEdmEnumeratorVariable geöffnet. == CloseFile aufrufenEdit: Sehe gerade das Bild, natürlich ist es so.[Diese Nachricht wurde von riesi am 25. Nov. 2021 editiert.]
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : PDM Status in Eigenschaft speichern
riesi am 16.12.2021 um 08:15 Uhr (1)
Für die Schnelländerung ohne Status-Wechsel brauchst Du das Recht zum aus- und einchecken, egal welchen Status die Datei hat. Entweder einen Benutzer mit den nötigen Rechten anlegen oder die Arbeit als admin erledigen.Zur Eintragung ins Feld: Wenn es meine Aufgabe wäre, ich würde es programmieren. Es müsste auch mit Dispatch möglich sein.
|
| In das Form SolidWorks Enterprise PDM wechseln |
 |
SolidWorks Enterprise PDM : VBA: Check out files
riesi am 19.05.2022 um 08:27 Uhr (15)
Als Verweis wird "PDMWorks Enterprise 2020 Type Library" benötigt.Code:Sub test() Dim myVault As IEdmVault7 Set myVault = New EdmVault5 Call myVault.LoginAuto("{Name des Tresors}", 0) Dim oFile As IEdmFile5 Dim FileName As String FileName = "C:{Tresor}{Pfad zur Datei}{Dateiname}" Dim oFolder As IEdmFolder5 Set oFile = myVault.GetFileFromPath(FileName, oFolder) If oFile Is Nothing Or oFolder Is Nothing Then Exit Sub End If Call oFile.LockFile(oFolder.ID, 0)End Sub[D ...
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : Stücklisten in Excell-vorlage kopieren
riesi am 25.10.2022 um 11:37 Uhr (1)
Alternativ zur Job-Box geht es durch Programmierung und in der SolidWorks-Api-Hilfe stehen auch Beispiele drin, wie eine Stückliste ausgelesen werden kann.So könnte z.B. ein SolidWorks-Makro automatisch die Zeichnung öffnen, nach der Stückliste suchen und diese zu einer Excel-Datei verarbeiten.So durch Konfiguration aus dem PDM heraus, wüßte ich keine Lösung.
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : PDM CopyTree Funktion mit VBA nutzen
riesi am 29.03.2023 um 13:45 Uhr (1)
CopyTree ist eine Methode und liefert keinen Wert zurück.Als Window-Handler kannst Du auch eine 0 einsetzen, wenn Du auf die Meldungen verzichten kannst. Hast Du beim Login ja auch so gemacht. Dann aber die Meldungen durch CopyTree ausblenden.Code:pdmVault.CopyTree(aFile.ID, Folder.ID, destFolder, False, False, copyTreeOptions, 0) Weiterhin sieht es für mich so aus, als würdest Du den zu kopierende Datei nicht mit geben, sondern nur ein Verzeichnis.Aaaaber -- nach dem Kopieren muss ...
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : Schnellsuchfeld in SOLIDWORKS PDM Datei-Explorer
riesi am 12.04.2023 um 11:19 Uhr (1)
Ja, wird unter Spalten konfiguriert.
|
| In das Form SolidWorks Enterprise PDM wechseln |
|
SolidWorks Enterprise PDM : Schnellsuchfeld in SOLIDWORKS PDM Datei-Explorer
riesi am 12.04.2023 um 11:51 Uhr (1)
Hast Du den Typ auf "Ergebnis der Schnellsuche" eingestellt und passen die Gruppen/Nutzer und Berechtigungen?
|
| In das Form SolidWorks Enterprise PDM wechseln |