kingchaos Geschrieben 8. September 2021 Teilen Geschrieben 8. September 2021 Moin, ich habe versuche eine fehlende Tabellenfunktion mit einem Script zu ersetzen. Dazu habe ich, in Ermangelung von Pythoncodierfaehigkeiten, eine Marionette gebaut und diese gewrappet, den Pythoncode in ein Script reinkopiert und dieses Script abgespeichert. und moechte dieses dann in der Tabelle ausfuehren. Das Script untersucht die Kantenreihenfolge aus der Datenbank, und prüft ob eine 1 (Kante Unten/Vorne) oder 2 (Kanten oben/hinten) drin steht und schreibt dann ABS in das feld. Die Marionette funktioniert praechtig, aber irgendwas haut nicht hin denn es steht #value! da statt ABS oder " ". gruß KC IfInStringABS.vwx HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 8. September 2021 Autor Teilen Geschrieben 8. September 2021 Wenn mir jemand verraet, wie ich in der Tabelle die Kante1, Kante2, Kante3 und Kante4 separat auslesen kann, waere das mit dem Script nicht noetig. Dennoch waere es spannend diese Scripte zu beherrschen, da ich noch sehr viele Sachen aendern muss, bis unsere Schelling das alles so frisst, dass die Arbeiter hier gar nichts von einer Umstellung bemerken. HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 8. September 2021 Autor Teilen Geschrieben 8. September 2021 @Stephan Mönninghoff Ich finde einfach keinen Fehler und in der Dokumentation wie man scripte in Tabellen ausfuehrt, werde ich leider nicht schlau. #wert /#value deutet ja vielleicht auf ein leerzeichen hin. Ich vermute ich habe irgendwas aus dem script mitkopiert, was da nicht reingehoert. Wo kann ich lernen, WAS ich aus dem Pythonscript rauskopieren muss, was mir der Wrapper als Code anzeigt? gruß KC HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Stephan Mönninghoff Geschrieben 8. September 2021 Teilen Geschrieben 8. September 2021 vor 39 Minuten schrieb kingchaos: Wo kann ich lernen, WAS ich aus dem Pythonscript rauskopieren muss, was mir der Wrapper als Code anzeigt? Ich selbst habe immer einfach so lange probiert, bis ich es herausgefunden hatte. Das kann durchaus lange dauern aber diese Arbeit kann keiner dir abnehmen. Wenn ich es direkt wüsste, dann würde ich dir die Antwort aber natürlich nicht vorenthalten. Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Roth Geschrieben 10. September 2021 Teilen Geschrieben 10. September 2021 Hallo Das Problem von deinem Script wird sein, dass es keinen korrekten Output ausgibt. Das heisst, die Tabelle kann nicht viel damit anfangen. Um ein Script zu bauen, dass in einer Runscript-Funktion ausgeführt werden kann, musst du zwingend die WSScript_usw. Funktionen aus der Function Reference gebrauchen. Damit kannst du die Parameter, die du dem Objekt mitgibst, auslesen und auch ein korrektes Ergebniss ausgeben. Als Beispiel hier einige Textfunktionen, die ich vor einiger Zeit gebaut habe. Von Marionette erzeugte Python-Scripte sind aber meist nicht so schön gecodet. Von demher wirst du wahrscheinlich Schwierigkeiten haben, die Funktionen an der korrekten Stellen einzubauen. Wenn du das Marionette postest, kann ich schauen, wie viel Aufwand es gibt, es sauber umzubauen. Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 13. September 2021 Autor Teilen Geschrieben 13. September 2021 Hey Manuel, kannst Du die nicht aus der vwx herausholen? Wenn du den Wrapper aufmachst, solltest du die Marionette sehen. HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 13. September 2021 Autor Teilen Geschrieben 13. September 2021 is ja nurn spass, er liest aus, ob eine 1,2,3 oder 4 in dem Inputdatensatz enthalten ist und schreibt dann "ABS" HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Roth Geschrieben 13. September 2021 Teilen Geschrieben 13. September 2021 Ok. Habe das File nicht gesehen. Ich habe das ganze noch ein bisschen allgemeiner gebaut und stattdessen eine SUCHEN und eine FINDEN Excelfunktion gebaut. FINDEN unterscheidet zwischen Gross- und Kleinschreibung, SUCHEN nicht. Die beiden Scripts kannst in dein Dokument ablegen und in der Tabelle wie folgt aufrufen. =Runscript('FINDEN',[Text in dem gesucht wird],[Suchtext]) Das Ergebnis kannst du in einer If-Funktion verwenden. #Excelfunktion SUCHEN #by MRoth V1.0 Text = vs.WSScript_GetPrmStr(0) Suchtext = vs.WSScript_GetPrmStr(1) vs.WSScript_SetResStr(Suchtext.upper() in Text.upper()) #Excelfunktion FINDEN #by MRoth V1.0 Text = vs.WSScript_GetPrmStr(0) Suchtext = vs.WSScript_GetPrmStr(1) vs.WSScript_SetResStr(Suchtext in Text) @alle Scripter Wie kann ich sauber einen Boolean aus einem solchen Script ausgegen. Momentan ist es ja noch ein String. Habe aber keine Boolausgabefunktion gefunden. Funktioniert zwar, ist aber nicht schön. 1 Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 13. September 2021 Autor Teilen Geschrieben 13. September 2021 HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 13. September 2021 Autor Teilen Geschrieben 13. September 2021 Danke Dir, haut hin, auch wenn ich probleme hatte die richtige syntax zu benutzen gehts nun. Jetzt muss ich nur noch auf die Bauteilmenge zugreifen koennen, da ja Bauteile 3D auch mehr als einmal vorkommen koennen. Dummerweise finde ich bei der Auswahl kein Datenbankfeld, wo die Menge auslesbar ist. Weiss Du, ob es eine Liste gibt mit allen auslesbaren Datenbankfeldern? gruß kc HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Roth Geschrieben 13. September 2021 Teilen Geschrieben 13. September 2021 Meiner Meinung nach sollte in der Tabelle eigentlich alle aufgeführt werden. Vielleicht weiss aber @Stephan Mönninghoff mehr. Freundliche Grüsse Manuel Roth _________________________________________________ Vectorworks 2022 SP3 | Architektur | Windows 10 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingchaos Geschrieben 13. September 2021 Autor Teilen Geschrieben 13. September 2021 Hinderlich ist auf jeden Fall dass einige Auswahlpunkte doppelt vorhanden sind oder entweder seltsam uebersetzt wurden oder die zuordnung zu den menues fragwuerdig ist. Ich habe leider auch noch nicht geblickt, warum ich manchmal 'Objekt - Zuordnung'.'Container' nicht auswaehlen kann. Ein Trick schlug fehl, ich hatte mit der Pipette die Eigenschaften-Datenbank auf Bauteile 3D uebertragen, womit natuerlich auch der "Containername" uebertragen wurde. Leider sind diese uebertragenen Eintraege "read only". Das mit dem Containernamen ist grosse Klasse, leider bin ich entweder zu doof oder da funktioniert was nicht, weil ich das auch in meiner Liste/Tabelle brauche. Ich hatte es einmal "irgendwie" hinbekommen, 'Objekt - Zuordnung'.'Container' des zu verknuepfen und meiner (Bau)Gruppe, wo Bauteile 3D drin waren" einen Containernamen zuzuweisen. Leider tauchte dieser dann nicht in meiner Tabelle auf. Das war sehr frustrierend HP Z6 G4 Intel(R) Xeon(R) W-3223 CPU @ 3.50 GHz - NVIDIA Quadro RTX 4000 VWX IC 2023 SP7-F7 R1 Windows 10 64 GB 64 bit Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden