| |
| Dassault PLM Integrationen mit der 3DViewStation, eine Pressemitteilung
|
Autor
|
Thema: G7MREA Parameterübergabe für FILE und TITLE (1367 mal gelesen)
|
Kulle Mitglied Mschbau-Ing
Beiträge: 86 Registriert: 20.06.2001
|
erstellt am: 08. Jun. 2004 09:46 <-- editieren / zitieren --> Unities abgeben:
Hallo, habe ein Problem mit der Funktion G7MREA. Will damit einen Datensatz laden, der in einem bestimmten Topf liegt, mit einem bestimmten Datensatznamen. Hierfür wird die Option FILE verwendet. Dann braucht es die ORIGIN. Die verlangt aber den DDname bzw FILE(C*8), sprich Verzeichnis, wo das Modell liegt und den Title (C*80), den Datensatznamen. Wie übergebe ich dies an die Routine. Ich übergebe ein LORG (Length of ORIGIN) von 78 und kann nur DDNAME übergeben oder Title, welches ich zuvor mit GIMNAM abfrage. Ich lade das Modell, verändere es und speichere es unter anderem Namen ab. Danach möchte ich es wieder laden und wieder verändern, usw. Wie muss ich die Parameter übergeben, damit Verzeichnis und Datensatzname in die Routine kommt? Vielen Dank für die Hilfe. Gruss Kulle
IP |
Brauburger Mitglied CAD-SystemIngenieur
Beiträge: 389 Registriert: 05.04.2001 NX_2000 TC_11.6.0.19
|
erstellt am: 09. Jun. 2004 08:10 <-- editieren / zitieren --> Unities abgeben: Nur für Kulle
Hallo Kulle, Du schreibst, Du willst 'einen Datensatz laden, der in einem bestimmten Topf liegt'. Was meinst Du mit Topf? Ich nehme an ein in CATIA.MODEL deklariertes Directory? Der Beschreibung nach kannst Du dafür auch G7MREA verwenden. Ich kenne diese CATGEO allerdings nur im Zusammenhang mit CDM/VPM. Versuch's stattdessen 'mal mit GIMREA: - GIFALL, um das Directory zu allokieren - GIMREA mit LINDEX=LDATA=0, um das Modell zu laden und dabei die aktuellen Deklarationen (CATIA.MODEL_KBYTES.MAX_ACTIVE_INDEX, ...) zu verwenden ... - GIMWRI, um das Modell zu speichern - GIFRES, um das Directory wieder zu deallokieren Und noch 'was: Du mußt bei allen Parametern genau darauf achten, daß die ParameterLänge stimmt. Viel Spaß Dirk [Diese Nachricht wurde von Brauburger am 09. Jun. 2004 editiert.] IP |
Kulle Mitglied Mschbau-Ing
Beiträge: 86 Registriert: 20.06.2001
|
erstellt am: 09. Jun. 2004 17:46 <-- editieren / zitieren --> Unities abgeben:
Hallo, GIFALL verlangt einen Wert namens MEMBER mit C*8. Wo bekomm ich den denn her? Gruss Kulle IP |
Brauburger Mitglied CAD-SystemIngenieur
Beiträge: 389 Registriert: 05.04.2001 NX_2000 TC_11.6.0.19
|
erstellt am: 14. Jun. 2004 08:04 <-- editieren / zitieren --> Unities abgeben: Nur für Kulle
Hallo Kulle, der Wert für MEMBER ist in Deinem Fall 'MODEL '. Die Notation ist historisch bedingt und stammt aus GroßRechnerZeiten, als es noch keine Deklarationen CATIA.MODEL dafür aber ein 'Verzeichnis' SYSDYN gab, in dem die CATIA-Töpfe deklariert wurden. Dirk IP |
Kulle Mitglied Mschbau-Ing
Beiträge: 86 Registriert: 20.06.2001
|
erstellt am: 14. Jun. 2004 14:57 <-- editieren / zitieren --> Unities abgeben:
Hallo, Hab' mir die Zähne ausgebissen an dem Problem. Wollte fast schon aufgeben, bis ich nochmal meine Aufmerksamkeit auf die Parameterlänge richtete. Du sagtest ja, die muss genau eingehalten werden. In der Doku steht für den Title Parameter C*80. Die sind aber so nicht deklarierbar. Daher hatte ich C*70 definiert. Das funzte allerdings nicht. Erst als ich aus Spass mal auf C*72 definierte fluschte die Funktion. Merkwürdig, oder? Na ja egal. Es läuft und dafür kriegst Du 20 Gummipunkte. Herzlichen Dank. Gruss Kulle IP |
Brauburger Mitglied CAD-SystemIngenieur
Beiträge: 389 Registriert: 05.04.2001 NX_2000 TC_11.6.0.19
|
erstellt am: 14. Jun. 2004 17:01 <-- editieren / zitieren --> Unities abgeben: Nur für Kulle
Hallo Kulle, Du schreibst "In der Doku steht für den Title Parameter C*80. Die sind aber so nicht deklarierbar." Was ist nicht deklarierbar? Ich kann C*80 (in FORTRAN) deklarieren. Mit welcher Sprache arbeitest Du? Dirk IP |
Kulle Mitglied Mschbau-Ing
Beiträge: 86 Registriert: 20.06.2001
|
erstellt am: 14. Jun. 2004 17:10 <-- editieren / zitieren --> Unities abgeben:
Ich programmiere (um Plattform unabhängig zu sein) in der IUA-Makro-Sprache. Für solche simplen Problemchen reich das. Gruss ps.: Leider gehen nur 10 Gummipunkte Kulle IP |
Brauburger Mitglied CAD-SystemIngenieur
Beiträge: 389 Registriert: 05.04.2001 NX_2000 TC_11.6.0.19
|
erstellt am: 15. Jun. 2004 07:53 <-- editieren / zitieren --> Unities abgeben: Nur für Kulle
Hallo Kulle, ich habe 'mal in meinem Fundus gekramt. Ich würde Dir empfehlen, Deinen ModellNamen wie folgt zu deklarieren: * Achtung: STUPMDL=STUPMDL1//STUPMDL2 | | VariablenReihenfolge nicht verändern CHAR*72 STUPMDL1 INIT 'STARTUP MODEL MRO.STD' CHAR*8 STUPMDL2 INIT ' ' STUPMDL ist lediglich ein Kommentar. An die CATGEOs wird (genaugenommen die SpeicherAdresse von) STUPMDL1 übergeben. Da die CATGEOs tatsächlich mit 80 Stellen arbeiten -ein Kollege von mir hat die nicht sichtbaren Stellen am Ende des ModellNamens auch schon genutzt- bist Du mit den angehängten 8 Blanks aus STUPMDL2 auf der sicheren Seite. Dirk IP |
Kulle Mitglied Mschbau-Ing
Beiträge: 86 Registriert: 20.06.2001
|
erstellt am: 15. Jun. 2004 08:10 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich danke Dir vielfach. Bei der nächsten Aktion werde ich mal die Deklaration ausprobieren. Die IUA-Programmierung ist teilweise in der Deklaration und Parameterübergabe recht cryptisch. Aber wenn's läuft, dann läuft das IUA erstaunlich stabil. Die Adressierung und Speicherverwaltung scheint sehr ausgefeilt zu sein. Alerdings stösst man mit komplexeren Problemen schnell an Grenzen (nur 100 Variablen, 50 Do-Schleifen und Blockifs). Als alter Fortranprogrammierer, sollte ich wohl beim nächsten Problem mich an Fortran heranwagen. Was für einen Compiler kann man für eine Sun empfehlen? Gruss
Kulle IP |
KlausJ Mitglied
Beiträge: 1336 Registriert: 17.03.2003 CATIA V4.2.4 Ref 2 CATIA V5R12SP6 AIX 4.3.3 und AIX 5.1 Windows 2000
|
erstellt am: 15. Jun. 2004 08:57 <-- editieren / zitieren --> Unities abgeben: Nur für Kulle
Hallo Kulle, wenn ich mich nicht irre, benötigst Du für die FORTRAN-Programmierung eine GII-Lizenz. Diese ist irre teuer, allerdings sind die Ergebnisse wesentlich besser als die IUA-Geschichten. ------------------ in diesem Sinne Klaus IP |
Stefan_I Mitglied Ing HTL
Beiträge: 867 Registriert: 04.07.2001
|
erstellt am: 15. Jun. 2004 11:08 <-- editieren / zitieren --> Unities abgeben: Nur für Kulle
Hallo zusammen, fuer die reine CATGEO Programmierung brauchst Du keine GII Lizenz, die ist nur noetig, wenn Du Dein Programm als CATIA Menu einbinden willst. Im Prinzip reicht ein C Kompiler, auch wenn die Sprache eigentlich FORTRAN ist. Falls ich mich nicht irre, sind in diesem Forum ein paar Beispiele wie das mit den Calls aus C funktioniert.
------------------ Gruss Stefan Inderbitzin IP |
Kulle Mitglied Mschbau-Ing
Beiträge: 86 Registriert: 20.06.2001
|
erstellt am: 15. Jun. 2004 13:32 <-- editieren / zitieren --> Unities abgeben:
Habt vielen Dank Kollegen! Gruss Kulle IP |