| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
| |
 | MAIT erhält den Abas Partner Performance Award 2025, eine Pressemitteilung
|
Autor
|
Thema: werkstoff ts-werkstoff-abfragen techsoft SD Power (1504 mal gelesen)
|
Stork Mitglied Mech Eng
 Beiträge: 6 Registriert: 17.09.2008
|
erstellt am: 17. Sep. 2008 12:46 <-- editieren / zitieren --> Unities abgeben:         
Hallo Alle, Ich bin keine Lisper...wie komme ich an der werkstoff attribute was durch techsoft SD Power zugeorden war? Meine Lisp program muss der teilebaum mit werkstoff attributen schrieben: (in-package :my-special-bom-attr);define my own package (use-package li);include the package oli in my new package
(defun cvs-print-tree (node name) (declare (ignore name)) (let* ( ; ---------------------------------VARIABLE DECLARATION---------------------------------------- (objname (BrowserNode-objPname node));assign BrowserNode-objPname to objname (path (BrowserNode-objPath node));assign path of BrowserNode-objPath to path (obj (oli:sd-pathname-to-obj path));define obj = of sd object with pathname path (Material (bomattr-get-material obj)) ;(Material (ts-werkstoff-abfragen obj)) ;techsoft's ts --- how do I get to it? ) ; ---------------------------------VARIABLE DECLARATION END--------------------------------------- ; ---------------------------------DO SOMETHING USING ABOVE VARIABLES----------------------------- (if (not (eq Material nil)) ;get the Bill of Materials material attribute of object obj and assign it to Material ;;anything not evaluating to NILL is automatically TRUE therefore if Material returns not nill then it is true (progn (setq CommaMaterial (concatenate 'string "," Material)) (setq NewString (concatenate 'string objname CommaMaterial)) ) ;;else (setq NewString (concatenate 'string objname ",keine")) );;end if (if (sd-string=(BrowserNode-objPath node) (BrowserNode-objPath node)) NewString ) ;; end if ) ) (sd-browser-add-interrogator "parcel-gbrowser" :interrogator-type :tree-print-name :interrogator-func 'cvs-print-tree) ;;----------------------------------------------------------------------------- ;; function to inquire attached BOM information of an SD part or assembly ;;----------------------------------------------------------------------------- (defun bomattr-get-material (object) (let ((attr (sd-inq-item-attribute object "MY_SPECIAL_BOM_ATTR" :values :attachment :contents))) (if attr (getf attr :material) nil) ) ) ;;----------------------------------------------------------------------------- Gruß, Jean Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
     

 Beiträge: 2166 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.6, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook Fury 16 G9, Windows 10 Pro 64
|
erstellt am: 17. Sep. 2008 13:54 <-- editieren / zitieren --> Unities abgeben:          Nur für Stork
|
Stork Mitglied Mech Eng
 Beiträge: 6 Registriert: 17.09.2008
|
erstellt am: 17. Sep. 2008 13:55 <-- editieren / zitieren --> Unities abgeben:         
der package war doch TS-SD-STL: Dass heiß: (in-package :my-special-bom-attr);define my own package (use-package li);include the package oli in my new package
(defun cvs-print-tree (node name) (declare (ignore name)) (let* ( ; ---------------------------------VARIABLE DECLARATION---------------------------------------- (objname (BrowserNode-objPname node));assign BrowserNode-objPname to objname (path (BrowserNode-objPath node));assign path of BrowserNode-objPath to path (obj (oli:sd-pathname-to-obj path));define obj = of sd object with pathname path ;(Material (bomattr-get-material obj)) (Material (TS-SD-STL::ts-am-stl-get-info-sel-item (sd-pathname-to-obj path) "WERKSTOFF")) ;techsoft's ts --- how do I get to it? ) ; ---------------------------------VARIABLE DECLARATION END--------------------------------------- ; ---------------------------------DO SOMETHING USING ABOVE VARIABLES----------------------------- (if (not (eq Material nil)) ;get the Bill of Materials material attribute of object obj and assign it to Material ;;anything not evaluating to NILL is automatically TRUE therefore if Material returns not nill then it is true (progn (setq CommaMaterial (concatenate 'string "," Material)) (setq NewString (concatenate 'string objname CommaMaterial)) ) ;;else (setq NewString (concatenate 'string objname ",keine")) );;end if (if (sd-string=(BrowserNode-objPath node) (BrowserNode-objPath node)) NewString ) ;; end if ) ) (sd-browser-add-interrogator "parcel-gbrowser" :interrogator-type :tree-print-name :interrogator-func 'cvs-print-tree) ;;----------------------------------------------------------------------------- ;; function to inquire attached BOM information of an SD part or assembly ;;----------------------------------------------------------------------------- (defun bomattr-get-material (object) (let ((attr (sd-inq-item-attribute object "MY_SPECIAL_BOM_ATTR" :values :attachment :contents))) (if attr (getf attr :material) nil) ) ) ;;----------------------------------------------------------------------------- HAT FUNKSIONIERT!!! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
clausb Ehrenmitglied V.I.P. h.c.
     
 Beiträge: 2914 Registriert: 20.12.2000 Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.
|
erstellt am: 17. Sep. 2008 14:01 <-- editieren / zitieren --> Unities abgeben:          Nur für Stork
|
Stork Mitglied Mech Eng
 Beiträge: 6 Registriert: 17.09.2008
|
erstellt am: 18. Sep. 2008 11:38 <-- editieren / zitieren --> Unities abgeben:         
|
Stork Mitglied Mech Eng
 Beiträge: 6 Registriert: 17.09.2008
|
erstellt am: 18. Sep. 2008 11:47 <-- editieren / zitieren --> Unities abgeben:         
|
Stork Mitglied Mech Eng
 Beiträge: 6 Registriert: 17.09.2008
|
erstellt am: 30. Sep. 2008 14:06 <-- editieren / zitieren --> Unities abgeben:         
Hallo Alle, Ich habe eine excel-macro zusammen gebastert was der geschriebene baum schön zusammen fassen. Leider habe ich es nur auf MS Office 2007 getesten und es sieht so aus das es nicht gut by 98 funktioniert. 1) peudo ordners in OSD ausmachen 2) printBOM.lsp in OSD in schleppen 3) RAW10mitLisp.xls öffen 4) Sicherheid in Excel anpassen für macros 5) Gererate BOM knopf drucken Cheers, Jean. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |