| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| Nahe an industriellen Realbedingungen |
Autor
|
Thema: Problem mit Konfigurationspezifisch - API (920 mal gelesen)
|
PWE Mitglied Techn.
Beiträge: 119 Registriert: 09.03.2004
|
erstellt am: 25. Mrz. 2004 13:54 <-- editieren / zitieren --> Unities abgeben:
Hallo, Wieder mal bitte ich um Hilfe: Model.AddCustomInfo "Bezeichnung", "Text", "-" Mit dem schreibe isch mit in DATEI-EIGENSCHAFTEN-BENUTZERDEFINIERT miene Daten (im Bsp. das Feld BEzeichnung als Text mit dem Text - ). Ich möchte dies aber in das Feld Konfigurationsspezifisch reinschreiben..... und zwar in die gerade aktuelle... ... irgendwie so: Model.AddCustomInfoConfig swactual, "Bezeichnung", "Text", "-" (=Eigenerfindung...) Vielen Dank für eine Idee, mfg PWE Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 25. Mrz. 2004 14:11 <-- editieren / zitieren --> Unities abgeben: Nur für PWE
Hallo PWE, mit ModelDoc2.AddCustomInfo3 ( configuration, FieldName, FieldType, FieldValue ) kannst du eine konfigurationsspezifische Eigenschaft erzeugen, mit Configuration.Name kommst du an den Namen einer Konfiguration und mit ModelDoc2.GetActiveConfiguration kommst du an die aktuelle Konfiguration. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de KLAMM? Was ist KLAMM? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PWE Mitglied Techn.
Beiträge: 119 Registriert: 09.03.2004
|
erstellt am: 25. Mrz. 2004 15:25 <-- editieren / zitieren --> Unities abgeben:
Kann ich das nicht auch so schreiben ? (Es geht aber nicht so...) Set Model = swApp.ActiveDoc Model.AddCustomInfo3 Model.GetConfigurationNames, "Artikelnummer", "Text", "-" Sorry für die dummen Fragen (VB kommt aus Delphianer der Csharper grausam vor...) mfg PWE Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 25. Mrz. 2004 15:43 <-- editieren / zitieren --> Unities abgeben: Nur für PWE
Hallo PWE, du kennst doch den Spruch mit den dummen Fragen, ich wär in Delphi wahrscheinlich ähnlich aufgeschmissen Zu deiner Frage: nein, nicht ganz so, da GetConfigurationNames ein SafeArray (also in dem Fall ein String-Feld) mit allen Konfigurationsnamen zurückliefert. Wenn du es unbedingt in einen Aufruf packen willst machst du es am einfachsten so:
Code:
Dim swApp As Object Dim modeldoc As ObjectDim propname As String Dim propvalue As String Const swCustomInfoText = 30 Sub main() Set swApp = Application.SldWorks Set modeldoc = swApp.ActiveDoc propname = "MeineKonfEigenschaft" propvalue = "gespeichert um " & Date MsgBox modeldoc.AddCustomInfo3(modeldoc.GetActiveConfiguration.Name, propname, swCustomInfoText, propvalue) End Sub
Ich würde es nicht so machen, denn es ist etwas schwer zu lesen, aber sollte klappen. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de KLAMM? Was ist KLAMM? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PWE Mitglied Techn.
Beiträge: 119 Registriert: 09.03.2004
|
erstellt am: 26. Mrz. 2004 08:13 <-- editieren / zitieren --> Unities abgeben:
Hallo guter Geist, Kann ich nicht auch so in die "Konfigurationspezifischen Felder" schreiben (Fokus von MS-Access...) ? Set modeldoc = swApp.ActiveDoc Me![Artikelnummer].SetFocus modeldoc.AddCustomInfo3("Artikelnummer") = Me![Artikelnummer].Text So sollte ich auch vorhandene überschreiben können. Problem - so gehts nicht . Habe ich einen Syntaxfehler ? mfg PWE Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 26. Mrz. 2004 08:56 <-- editieren / zitieren --> Unities abgeben: Nur für PWE
Hallo PWE, > Habe ich einen Syntaxfehler ? Ja, du mußt beim Hinzufügen der konfigurationsspezifischen Eigenschaften die Parameter wie beschrieben mit angeben. Also ModelDoc2.AddCustomInfo3 ( configuration, FieldName, FieldType, FieldValue ) Es geht nicht anders. > So sollte ich auch vorhandene überschreiben können. Das ist auch nicht so ganz richtig, wenn du eine konfigurationsspezifische Eigenschaft überschreiben willst mußt du bei ModelDoc2.CustomInfo2 (configuration, fieldName) ja auch den Konfigurationsnamen angeben ... Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de KLAMM? Was ist KLAMM? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PWE Mitglied Techn.
Beiträge: 119 Registriert: 09.03.2004
|
erstellt am: 26. Mrz. 2004 09:44 <-- editieren / zitieren --> Unities abgeben:
Hallo, g.G., Danke für die Erklärung. Meine letzte Frage dazu: Wenn ich es überschreiben möchte - funktioniert es nicht - Ich habe aber keine Delete Funktion gefunden. D.h. z.B. möchte ich das Konfugruationspezifische Feld überschreiben, das lässt er aber nicht mehr zu. Vielen Dank für die Mühe, mfg PWE Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 26. Mrz. 2004 12:13 <-- editieren / zitieren --> Unities abgeben: Nur für PWE
Hallo PWE, überschreiben kannst du nur Eigenschaften, die schon da sind, neu erzeugen nur welche, die es noch nicht gibt. Löschen kannst du aber immer Das geht mit ModelDoc2.DeleteCustomInfo2( configuration, FieldName ); also kannst du statt vorher zu schauen, ob eine Eigenschaft existiert um die wahlweise zu überscrheiben oder neu anzulegen auch immer vorher löschen und dann neu anlegen. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de KLAMM? Was ist KLAMM? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |