Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Extern auf benutzerdefinierte Eigenschaften zugreifen

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
PLM TechnologieForum Hannover
Autor Thema:  Extern auf benutzerdefinierte Eigenschaften zugreifen (619 / mal gelesen)
HOMandre
Mitglied



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

Beiträge: 35
Registriert: 08.01.2019

erstellt am: 10. Jul. 2022 11:10    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

Guten Morgen zusammen,
ich benötige Hilfe bzw. einen Denkanstoß für folgende Problematik.

Ich habe für meine Teile ein Makro geschrieben, mit dem ich in der Lage bin, für das jeweilige Teil diverse Informationen wie z.B. Artikel-Name, Artikel Nummer, etc. zu hinterlegen. Darüber hinaus vergebe ich mit diesem Makro eine eindeutige Teile ID und generiere damit automatisiert die Teile / Zeichnungsmnummer. Als Beispiel, das neue Teil hat die ID 4500 bekommen und hat eine Konfiguration welche mit 01.00 beginnend benannt wurde. Hieraus wird dann automatisch die Zeichungsnummer 4500-01.00 generiert und in den Eigenschaften gespeichert. Vorteil, die Nummern werden automatisch vergeben und ich habe keine doppelten Zeichnungsnummern. Nun zu meinem Problem. Die Zeichnungsnummer befindet sich nur in den Teileigenschaften. Der Dateiname soll / darf nicht geändert werden. Mein derzeitiges Problem ist nun eine banale Suche um das Teil mit der jeweiligen Zeichnungsnummer schnell zu finden. Das Ganze sollte über SW funktionieren, könnte aber auch mit einem anderen kleinen Programm erfolgen, welches die Datei sucht und dan in SW  öffnet. Es wäre wünschenswert, wenn die Suche auch halbwegs performant ablaufen würde. Hat jemand von euch eine gute Idee?

Wünsche euch einen schönen Sonntag und vorab schon mal besten Dank.

Gruss Andre

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

Andi Spieler
Mitglied
Mechaniker


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

Beiträge: 1347
Registriert: 12.12.2002

SOLIDWORKS 2024SP1

erstellt am: 10. Jul. 2022 12: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 Nur für HOMandre 10 Unities + Antwort hilfreich


Suchen_Index_ASP.jpg

 
Hallo Andre,

einfach den Suchpfad zu Deinen Teilen festlegen, (Microsoft macht den Index) und dann im SWX oben im Suchfeld danach suchen.
Kannst nach "Zeichnungsnummer" oder dem entsprechenden Wert suchen.

VG
AndiS

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

HOMandre
Mitglied



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

Beiträge: 35
Registriert: 08.01.2019

erstellt am: 10. Jul. 2022 12:48    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 Andi,
vielen Dank für deine Antwort. Zwischenzeitig habe ich ebenfalls diese Idee gehabt. Leider funktioniert die Suche noch nicht. In den Systemoptionen - Dateipositionen habe ich 5 vorgeschlagene Ordner, welche teilweise auch keinen Sinn machen. Das Löschen und Hinzufügen eines neuen Ordners klappt nicht. Beim Neustart von SW ist der hinzugefügte Ordner wieder weg und der gelöschte wieder da. Was kann das jetzt sein?

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

Andi Spieler
Mitglied
Mechaniker


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

Beiträge: 1347
Registriert: 12.12.2002

SOLIDWORKS 2024SP1

erstellt am: 10. Jul. 2022 13:32    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 HOMandre 10 Unities + Antwort hilfreich

Musst in den MS Indizierungsoptionen machen.

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

HOMandre
Mitglied



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

Beiträge: 35
Registriert: 08.01.2019

erstellt am: 10. Jul. 2022 13: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


Bild1.JPG


Bild2.JPG


Bild3.JPG

 
Hi,
das hat mit der Indizierung geklappt ich habe jetzt den richtigen Ordner.
Nur leider haut es immer noch nicht hin.
Wie du auf dem Bild 1 erkennen kannst, habe ich zum Ausprobieren einen Testordner erstellt, welcher auch als Suchpfad übernommen wurde.
In Bild 2 möchte ich nach der ID (4653) suchen, welche in den benutzerdefinierten Eigenschaften enthalten ist. Hier stellt sich mir die Frage ob die Suche ebenfalls bei den konfigurationsspezifischen Eigenschaften genau so funktioniert. Müsste es doch oder? In Bild 3 habe ich oben die 4653 eingegeben mit dem Ergebnis, dass keine Datei gefunden wurde.

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

HOMandre
Mitglied



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

Beiträge: 35
Registriert: 08.01.2019

erstellt am: 10. Jul. 2022 14:23    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

Ich habe den Testordner jetzt mal in das Verzeichnis C:\ kopiert. Dort klappt es einwandfrei. Sobald ich den Testordner meiner Konstruktions Ordnerstruktur hinzufüge, diesen Pfad indiziere, wird dieser in SW auch angezeigt, aber die Suche nach der ID geht wieder nicht.

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

Andi Spieler
Mitglied
Mechaniker


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

Beiträge: 1347
Registriert: 12.12.2002

SOLIDWORKS 2024SP1

erstellt am: 10. Jul. 2022 16:38    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 HOMandre 10 Unities + Antwort hilfreich


Suchen_Index-2_ASP.jpg

 
Benutzerdefinierte finde ich alle, egal wo.

Lade mal bitte ein Beispiel-Part mit den Eigenschaften hoch, dann guck' ich ob ich es finde.

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

HOMandre
Mitglied



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

Beiträge: 35
Registriert: 08.01.2019

erstellt am: 10. Jul. 2022 18:32    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


Teil1.SLDPRT

 
Hallo Andi,
anbei mal die Datei. Je nachdem in welchem Ordner Sie liegt, klappt das Suchen in den Eigenschaften ja. Natürlich unter Berücksichtigung des Suchverzeichnis in den Solidworks-Einstellungen. Es muss an der Ordnerstruktur irgendwie liegen. Vielleicht noch ein Hinweis, mein finaler Ordner liegt auf C:/ und ist ein Dropboxverzeichnis, was lokal auf der Platte liegt. Über die Suche des Dateinamen findet die SW Suche das Teil, allerdings nicht die integrierten Eigenschaften.

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

Andi Spieler
Mitglied
Mechaniker


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

Beiträge: 1347
Registriert: 12.12.2002

SOLIDWORKS 2024SP1

erstellt am: 10. Jul. 2022 19:30    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 HOMandre 10 Unities + Antwort hilfreich


Suchen_Index-3_ASP.jpg

 
Hallo HOMandre,

finde in Deinem Teil alles, hab' allerdings keinen Drop-Box-Ordner.

Vielleicht brauchst Du ein PDM ?

Viele Grüße
AndiS

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 10. Jul. 2022 23: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 HOMandre 10 Unities + Antwort hilfreich

Hallo Andre,
wenn du eine Zeichnung vom Teil öffnen möchtest, dann schau dir mal mein Makro an.

http://ww3.cad.de/foren/ubb/Forum2/HTML/026683.shtml#000003

Evtl. musst du dir es noch ein wenig anpassen, aber ich öffne fast nur noch damit meine Zeichnungen.
Davon gibt es ein Schwestermakro, welches zugehörige PDFs öffnet.

Grüße, AndiB

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

riesi
Mitglied
CAD-Admin


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

Beiträge: 1073
Registriert: 06.05.2002

SWX Premium 2020-Sp5

erstellt am: 11. Jul. 2022 12:30    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 HOMandre 10 Unities + Antwort hilfreich

Für das Suchen der Zeichnung wird der Pfad benötigt. Da Du die Zeichnungs-Nr. kennst, kann die Suche nach den entsprechenden möglichen Zeichnungen zuerst mit das Verzeichnis und anschließend könnte mit der Document-Manager-Api die Eigenschaften der vorgefilterten Zeichnungen durch sucht werden. Das geht flott.

Selber erzeuge ich mir in regelmäßigen Abständen eine Liste unserer Schweiß-Konstruktions-Profile inkl. der Eigenschaften in Excel. Das Auslesen der Verzeichnisse, inkl. Eigenchaften dauert bei >1000 Dateien keine zwei Sekunden. Das Schreiben der Liste nach Excel dauert länger.

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

HOMandre
Mitglied



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

Beiträge: 35
Registriert: 08.01.2019

erstellt am: 12. Jul. 2022 09: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

Guten Morgen zusammen.
Ich habe noch mal ein bisschen experimentiert. Leider klappt meine Suche immer noch nicht. Ich habe festgestellt, dass dieses von der Ordnerablage auf dem PC abhängig ist. Wenn mein Ordner z.B. nur auf dem Desktop liegt, geht es definitiv nicht. Liegt dieser unter C:\ klappt es einwandfrei. Auch wenn der Pfad extrem lang ist bzw. wird funktioniert es ebenfalls, es sei denn Windows sagt irgendwann das die Ordnerstruktur zu lang wird. Das ist klar und auch logisch. Ich nutze die Dropbox, dazu habe ich ein Verzeichnis unter C:\, sprich die Dropbox habe ich nach der Installation dorthin verschoben. Damit handelt es sich doch um einen völlig normalen lokalen Pfad. Teile die in diesem Ablageort liegen können mittels Dateiname über die SW Suche gefunden werden, allerdings wird nicht in den Eigenschaften gesucht. Das ist mir ein Rätsel. Alle Ablageordner habe ich in SW bzw. über die Indizierungsoption hinzugefügt. Ich kann in meinem hochgeladenen Teil auch alle Eigenschaften finden, wenn dieses in einem "funktionierenden" Ordner liegt. Ich möchte darüber hinaus keine zugehörige Zeichnung suchen, sondern das Teil über die Zeichnungs-Nr. Jetzt denke ich über ein Makro nach, was diese Funktion ausführen könnte. Riesi, dass was du schreibst hört sich doch mal gut an. Kannst du mir darüber vielleicht noch ein paar Informationen oder ein kleines Beispielprogramm zukommen lassen? Werde jetzt erst mal nach der Document-Manager-Api schauen, davon habe ich nämlich noch nichts gehört. Vielen Dank für eure Hilfe.

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

riesi
Mitglied
CAD-Admin


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

Beiträge: 1073
Registriert: 06.05.2002

SWX Premium 2020-Sp5

erstellt am: 12. Jul. 2022 11: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 HOMandre 10 Unities + Antwort hilfreich

Gerne:
Code:

// Klasse Profile:
public class Profile
    {
        public int FileId { get; set; }
        public int FolderId { get; set; }
        public string FileName { get; set; }
        public string FolderPath { get; set; }
        public string PsiNo { get; set; }
        public string Title1 { get; set; }
        public string Title2 { get; set; }
    }

// ----- Funktion um Eigenschaften aus zu lesen
private void ReadProfile(ref Profile curProfile)
        {
            Success = false;
            SwDmDocumentOpenError nRetVal;
            string fileNameWithPath = Path.Combine(curProfile.FolderPath, curProfile.FileName);
            SwDMDocument25 swDoc = (SwDMDocument25)swDocMgr.GetDocument(fileNameWithPath, nDocType, true, out nRetVal);
            if (nRetVal != SwDmDocumentOpenError.swDmDocumentOpenErrorNone)
            {
                return;
            }
            string[] props = (string[])swDoc.GetCustomPropertyNames();
            if (props == null)
            {
                curProfile.PsiNo = string.Empty;
                curProfile.Title1 = string.Empty;
                curProfile.Title2 = string.Empty;
                swDoc.CloseDoc();
                return;
            }
            foreach (string prop in props)
            {
                SwDmCustomInfoType valueType;
                string linkto;
                switch (prop)
                {
                    case "Z-Name":
                        curProfile.Title1 = swDoc.GetCustomPropertyValues("Z-Name", out valueType, out linkto);
                        break;
                    case "Z-Name2":
                        curProfile.Title2 = swDoc.GetCustomPropertyValues("Z-Name2", out valueType, out linkto);
                        break;
                    case "A-Nr.":
                        curProfile.PsiNo = swDoc.GetCustomPropertyValues("A-Nr.", out valueType, out linkto);
                        break;
                }
            }
            if (curProfile.PsiNo == null) { curProfile.PsiNo = string.Empty; }
            if (curProfile.Title1 == null) { curProfile.Title1 = string.Empty; }
            if (curProfile.Title2 == null) { curProfile.Title2= string.Empty; }
            swDoc.CloseDoc();
            Success = true;
            return;



Mein Makro liest aus den globalen Eigenschaften die gewünschten Informationen. Um aus den Konfigurationsspezifischen-Eigenschaften die Werte abzufragen, musst Du eine zusätzliche Schleife für die Konfigurationen programmieren.

Für die Suche nach einer bestimmten Datei würde ich in C# eine Liste der Dateien aus der Verzeichnis-Struktur anlegen und diese via LINQ abfragen.


[Diese Nachricht wurde von riesi am 12. Jul. 2022 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)2024 CAD.de | Impressum | Datenschutz