Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  Lisp einbinden

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 Creo
Autor Thema:  Lisp einbinden (850 mal gelesen)
edgar
Mitglied
Dipl. Ing. Maschinenbau


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

Beiträge: 386
Registriert: 06.06.2001

ME10 8.7F
OSDM 11.50A
OSDD 11.5
HPUX 10.20
C3600

erstellt am: 03. Mrz. 2005 11: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,
Folgendes Lisp möchte ich in OSD einbinden:

;; export all sheets of current drawing to dir /users/transfer/
;;  the 100% oli variant:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(in-package :custom)


(use-package  LI)

(defun sd-am-export-all-sheets ( &optional (prefix "adm_prefix"))
  (dolist (a-sheet (OLI::SD-AM-INQ-ALL-SHEETS))
    (setf a-sheet (oli::SD-AM-INQ-SHEET a-sheet))    ;;; get the structure out of sel-item
    (setf a-sheet (oli::sd-am-sheet-struct-name a-sheet)) ;;; get the sheet name out of the structure
    ;; save sheet via AM command
    (AM_SAVE_SHEET_MI
    :SHEET a-sheet
    :filename
    (format nil "~A~A_sheet_~A.mi"
"/users/transfer/" prefix a-sheet)  verwrite)
        ;;    (oli::sd-inq-temp-dir) prefix a-sheet)  verwrite)
    ) ;; end dolist
  )

So, wenn ich das Lisp von der Befehlszeile mit
(load "/opt/PE/MACRO/SD_MACROS/Anno_all_to_mi.lsp")
starte und dann (sd-am-export-all-sheets) aufrufe, klappt alles bestens.

Wenn ich das Lisp allerdings in die am_customize einbinde mit
(load "/opt/PE/MACRO/SD_MACROS/Anno_all_to_mi.lsp")
und dann (sd-am-export-all-sheets) aufrufe, kommt eine Fehlermeldung.

LISP-Fehler:
The function SD-AM-EXPORT-ALL-SHEETS is undefined.

Tatsache ist, dass die richtige am_customize geladen wurde, wo kann also der Fehler liegen?

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

Dorothea
Mitglied



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

Beiträge: 242
Registriert: 22.11.2001

erstellt am: 03. Mrz. 2005 11: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 Nur für edgar 10 Unities + Antwort hilfreich

Hallo Edgar,

Deine Funktion sd-am-export-all-sheets is im package custom definiert. Versuch doch mal, es wie folgt aufzurufen:

Code:
(custom::sd-am-export-all-sheets)

Gruss Dorothea

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

Klaus Lörincz
Mitglied
Consultant


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

Beiträge: 533
Registriert: 06.08.2003

OSD M = aktuell
OSD D = aktuell
OS M = aktuell
auf WIN und HP-UX

erstellt am: 03. Mrz. 2005 11: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 Nur für edgar 10 Unities + Antwort hilfreich

Hallo edgar,

Als erste regel würde ich vorschalgen das Funktionen oder
Dialoge die nicht von OSDm bereitgestellt werden nicht mit
der Bezeichnung "sd-" oder "sd_" beginnen sollten.

Man ist dan leicht der Meinung das es sich um std. Funktionen handelt.

So nun zu deinem Problem:

Da Du eine Funktion und keinen Dialog geschrieben hast musst
Du das "Paket" (= in deienm Fall "custom") vor den namen der
Funktion schreiben.

(custom::sd-am-export-all-sheets)

Als Anregung würde ich raten einen Dialog daraus zu machen.
Der Vorteil ist das Du die Funktion dann aus der Toolbox
aufrufen kannst.

Grüßle

------------------
Klaus Lörincz
0174 3439 428
Sindelfingen
Germany

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)2023 CAD.de | Impressum | Datenschutz