Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  MaxxDB
  Skripte in der MaxxDB

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
Autor Thema:  Skripte in der MaxxDB (3991 mal gelesen)
Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

erstellt am: 22. Feb. 2011 13:11    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,

auch wenn ich langsam der Einzige bin der hier Fragen stellt muß ich doch nochmals eine Stellen. Es geht um das Thema Skripte.

Die Ausgangslage:

  • Externe Daten (Zeichnungen und Teile keine Baugruppen) werden mittels Import Funktion der MaxxDB eingelesen.
  • Die eingelesenen Teile haben voll ausgefüllte Dateieigenschaften die ich mittels PropCheckin auch in die MaxxDB bekomme, die Daten der Teile sind auch vollständig in der MaxxB Maske zu sehen.
  • Die eingelesenen Zeichnungen haben keine Dateieigenschaften, die Optionen in der MaxxDB sind so eingestellt, daß der Datensatz der Zeichnung gleich dem des Teiles ist.

Die Probleme:

  • Damit der externe Dienstleister auf seiner Zeichnung die Benennung und die restlichen Eigenschaften auch im Schriftfeld sehen kann habe ich ihm extra Dokumentvorlagen erstellt die, die Eigenschaften darstellen also nicht MaxxDB like. In diesen Zeichnungen muß also das Blattformat getauscht werden um den Bezug zur MaxxDB herzustellen. Für das Blattformat tauschen habe ich auch ein Makro (Makro Nr. 29 von Stefan Berlitz).
  • Bei den Teilen gibt es auch noch ein sehr starkes Manko. Ich nutze die Materialbibliothek von SolidWorks, das bedeutet die MaxxDB muß das Material aber auch noch das Gewicht aus der Datei auslesen. Diese Werte werden beim Import nicht geholt.
  • Der Datenbankeintrag der Zeichnungen ist nach dem Import auch nicht vollständig bzw. fehlt komplett bis auf die Artikelnummer.

Soweit, jetzt kann man sagen diese Probleme sind sehr gering aber wenn es dann 200 Zeichnungen sind und ebensoviele Teile wirds doch aufwendig. Man muß nun alle Teile öffnen und speichern, genauso muß man alle Zeichnungen öffnen und speichern. Also kommen hier nun Skripte ins spiel.

Die Skripte habe ich mir dann mal angeschaut, das heißt ich habe versucht welche zu erstellen. Es gibt da zum einen die ProzessDoc Befehle und zum anderen die call_intern Befehle. Die ProzessDoc Befehle sind sehr seltsam, der speichern Befehl speichert mir aber immerhin die Datei jedoch ist es kein MaxxDB speichern denn der Datensatz einer Zeichnung wird nicht aktualisiert (Gleichsetzen mit dem des Teils). Bei den call_intern Befehlen bin ich immerhin zu dem Problem Material und Gewicht einlesen fündig geworden. Mit call_intern(calcweight) liest er nun das Gewicht und nettwerweise auch gleich das Material aus dem Teil aus, somit ist der Datensatz der Teile wenigstens schonmal vollständig. Um das Blattformat zu tauschen gibt es den runmakro Befehle der macht mir das auch schon.

Aber wie bekomme ich es hin über ein Skript die Datensätze auf "Vordermann" zu bekommen?

hier mal meine zwei Skripte die funktionieren:

Code:
call_intern(LoadDocReserved);
runmacro(W:\Vorlagen\Makros\Blattformat_tauschen_ohne_speichern.swp| || |);
ProcessDoc(Speichern)

Dieses Skript öffnet die Zeichnungen, lässt das Makro Blattformat tauschen laufen und speichert die Datei. Durch den PrzessDoc(Speichern) wird auch automatisch die Datei geschlossen (eines der Dinge die ich nicht verstehe).

Code:
call_intern(LoadDocReserved);
call_intern(CalcWeight);
ProcessDoc(Speichern)

Dieses Skript aktualisiert mir Teile und Baugruppen in Bezug auf Gewicht und Material.

Also nachdem ich nun ausführlich die Ausgangslage und mein Problem beschrieben habe nochmals die gnaz konkrete Frage: Wie bekomme ich nun den Datensatz der Zeichnung aktuell ohne händisch jede einzelne Zeichnung zu speichern (ProzessDoc(Speichern) geht nicht). Es wäre für mich auch vorstellbar wenn ein API Befehl MaxxDB speichern zur Verfügung steht, den könnte ich dann in ein Makro integrieren.

Oder gibt es definitiv keine Möglichkeit dies hinzubekommen?

gruß Heiko

P.S. Durch eine Skript Makro Kombination habe ich mir jetzt schon einen einfachen Stapelplot gebastelt bzw. bin fast fertig mit dem SWX Makro.

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

Metallica88
Mitglied
Konstrukteur; CAD Admin


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

Beiträge: 379
Registriert: 01.04.2009

ehem. CAx Admin für ~70 Konstrukteure in verteilten Standorten.

erstellt am: 22. Feb. 2011 20:22    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 Press play on tape 10 Unities + Antwort hilfreich

Hi,

zuerst mal freut es mich sogar, dass das MaxxDB Forum hier nicht ganz ausstirbt und dass dann auch noch Fragen kommen, wo man selber auch noch etwas überlegen muss...

Die aller einfachste Lösung für dich wäre eigentlich bei deinem externen Dienstleister mal nachzufragen ob dieser sich nicht die kostenlose Version von MaxxDB installieren will (geht bis 500 Datensätze)
Die Einstellungen könnten dabei ja von eurer Firma weitgehend übernommen werden.
Dadurch könnte dann auch der Dienstleister die Import\Export Funktion nutzen, wodurch die ganzen Scripte\Makros etc. völlig wegfallen würden.
(Einfachste Lösung)

Ansonsten würd ich mal probieren deinen Scripten vor dem Speichern noch ein ProcessDoc(Eigenschaften aktualisieren) anzuhängen (hab grad kein MaxxDB zur Hand, sollte aber irgendwie in dieser Form vorhanden sein. Einfach in den Aktionen kurz nachsehen...)
Damit müsste es dann eigentlich auch klappen...

Durch das Speichern wird wahrscheinlich auch gleich automatisch die Reservierung zurück genommen, wodurch auch das Dokument wieder geschlossen wird...

Es gäbe übrigens noch eine Möglichkeit per convswx.exe hier wäre dann die Frage ob diese Dokumente evtl. in einem eigenen Speicherbereich liegen?

Mfg Metallica88

[Diese Nachricht wurde von Metallica88 am 22. Feb. 2011 editiert.]

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

erstellt am: 23. Feb. 2011 11:14    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 Metallica,

recht herzlichen Dank für Deine Antwort.

Zitat:
Original erstellt von Metallica88:
Hi,

zuerst mal freut es mich sogar, dass das MaxxDB Forum hier nicht ganz ausstirbt .....


Ja hier ist doch relativ wenig los, vermutlich nutzen die meisten doch nicht die ganze Bandbreite an Möglichkeiten, schade denn es ist doch einiges Möglich.

Zitat:
Original erstellt von Metallica88:
......Ansonsten würd ich mal probieren deinen Scripten vor dem Speichern noch ein ProcessDoc(Eigenschaften aktualisieren) anzuhängen (hab grad kein MaxxDB zur Hand, sollte aber irgendwie in dieser Form vorhanden sein. Einfach in den Aktionen kurz nachsehen...)
Damit müsste es dann eigentlich auch klappen...

Den habe ich schon getestet auch den call_intern(updatecustomproperties), das Problem beim ProzessDoc(Eigenschaften aktualisieren) ist daß er die Zeichnungseigenschaften aktualisiert mit den momentanen Datenbankeinträgen die ja bis auf die Artikelnummern leer sind.

Zitat:
Original erstellt von Metallica88:
......Es gäbe übrigens noch eine Möglichkeit per convswx.exe hier wäre dann die Frage ob diese Dokumente evtl. in einem eigenen Speicherbereich liegen?

Leider nein, beim Import wird bei meiner SP zwar noch alles in den selben Speicherbereich gelegt aber ich habe mehrere Packete (mal kommen 10 dann 20 am nächsten Tag dann wieder 10) und möchte eigentlich nicht alles in den gleichen Speicherbereich legen da ich ja auch extra die Speicherbereiche generieren lasse.

Das einzige was mir bisher aufgefallen ist, ist dass alles nur in die eine Richtung geht nämlich in richtung des Dokuments. Nichts aktualisiert die Datenbank. Gerade nochmals getestet wie es ist wenn ich das Dokument Freigebe im selben skript die Freigabe wieder zurücknehme, aber da ist es gleich, der Datensatz bleibt falsch. Entweder es ist nicht möglich mit den Skripten in der Datenbank selbst rumzuwursteln oder es muß in einer komplett anderen Richtung liegen

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 23. Feb. 2011 18:40    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 hab da gerade eben entdeckt daß zwei Beiträge weiter unten eigentlich ein Teil meines Problems gelöst wird

Dieser Beitrag von Jochen Renz scheint mir des Rätsels Lösung für das aktualisieren des Datensatzes. Verwunderlich ist nur daß ich das nicht mit einem Skript hinbekomme.

Also Aufgabe für die nächster Zeit......herausbekommen wie man ein Modul in ein Makro einbindet (ich bin da doch ein blutiger Anfänger)

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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