Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Autodesk Productstream Professional
  Bei Statuswechsel Aktion ausführen

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 Autodesk Produkte
  
Die Ähnlichkeit zu Productstream Professional ist bemerkenswert. (GAIN Collaboration,PDM,PDM System,PLM,PLM System)
Autor Thema:  Bei Statuswechsel Aktion ausführen (2220 mal gelesen)
BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 14. Jul. 2011 09:42    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 zusammen,

ich habe mir in meiner PSP 2010 PRO Umgebung eine neue Statusdefinition erstellt. Beim Wechsel auf diesen Status möchte ich jetzt, das eine bestimmte Aktion (angemeldeter Benutzername soll in das Feld CHECKED_2_BY geschrieben werden) geschieht.

Nun gibt es ja in der PSP Konfiguration die Definition für den Statusübergang und dort habe ich beim Attribut Command als Wert

Code:
___CHANGEFIELD(CHECKED_2_BY=$USERID)

Leider funktioniert das nicht - jemand eine Idee oder zumindestens ein Anhaltspunkt??

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

Jörg2
Mitglied



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

Beiträge: 509
Registriert: 20.02.2007

erstellt am: 15. Jul. 2011 14:58    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 BRein 10 Unities + Antwort hilfreich


Pro_1.jpg


Pro_2.jpg

 
Das geht auch so nicht.
Das Command verweist auf eine Prozedur, welche den Statuszustand an sich steuert.
Schau die mal die Statusglobal.dbp an, dann wirst du sehen was ich meine.

Zusätzliche Aktionen definierts du am Etype.

Ich habe mal zwei Sceenshots angehängt.
Beispiel:
Neuer Status 00501 "Projekt angelegt"
Bei der Anlage wird der JOBTYO-0003 ausgelöst

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 17. Jul. 2011 15:47    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

Ok, das ist doch schon mal ein Anhaltspunkt  

Also erweiter ich die Statusglobal.dbp nun mit meinen selbsterstellen Status 00025 :

Code:

procedure AIM_exec_cfg_OnStatus00025   /* arg1 ist der Ausgangsstatus oder leer bei Neueintrag */
exec_cfg_OnStatus("00025" $arg );
endproc

Code:

public Status_onEnter_00025, AIM_exec_cfg_OnStatus00025

Code:

public Status_onChange_00025, ___Return_0

Füge dann bei meinem Statusübergang bei onChange = Status_onChange_00025 und bei onEnter = Status_OnEnter_00025 hinzu.
Abschließend noch den Verweiß beim EntityTyp AIM.DOC.ENG OnStatus00025 = ___JobCreate(JOBXY)

Im JOBXY selbst, kann ich dann auf das jeweilige Element ___CHANGEFIELD(CHECKED_2_BY=$USERID) ausführen lassen?

Korrekt?

[Diese Nachricht wurde von BRein am 17. Jul. 2011 editiert.]

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

freak-tom
Moderator
PDM-/CAD-Admin


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

Beiträge: 347
Registriert: 07.03.2006

Productstream Professional Pro 2011 / Jobserver / Replikator
Productstream Professional Office 2011
Productstream Professional Pro 2010 / Jobserver / Replikator
Productstream Professional Office 2010
Inventor Suite 2011
Solid Works 2015
ECTR

erstellt am: 17. Jul. 2011 20:52    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 BRein 10 Unities + Antwort hilfreich

Hallo BRein,

ich würde eine eigene dbp erstellen und die dann in der Konfig einhängen.

MfG
Thomas

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 17. Jul. 2011 22:37    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 Thomas,

1. Welchen Vorteil erlaubt mir eine eigene dbp?
2. Wie ich hänge ich diese in die Konfig ein?

Desweiteren denkst du, dass mein Vorhaben so klappt wie ich es beschrieben habe?

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

Jörg2
Mitglied



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

Beiträge: 509
Registriert: 20.02.2007

erstellt am: 18. Jul. 2011 08:54    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 BRein 10 Unities + Antwort hilfreich

Ich würde auch keine vorhandene System-DBP ändern.
Bei jedem Hotfix könnte diese Überschrieben werden.
Wennn ich das richtig verstanden habe, ist für deinen Fall eine eigene DBP aber auch gar nicht notwendig.

Suche dir eine Aktion, aus einem vorhandenem Statusübergang, welche (bis auf das Ändern des Feldes) dass macht, was du möchtest.
Diese Aktion trägst du dann auch bei deinem neuen Status ein.
Zusätzlich legst du den Job zum Ändern des Feldes an und ruft den Job wie angegeben auf.

Der andere Weg wäre, eine eigene DPB, welche dann das Ändern des Feldes sofort enthalten kann.
Ein zusätzlicher Job wäre dabei nicht notwendig.

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 18. Jul. 2011 09:57    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

Hm...
das habe ich jetzt aber nicht ganz verstanden.
Angenommen ich nehme den Statusübergang von 00002 und kopiere diesen in meinen eigenserstellen Status und verweiße dann bei AIM.DOC.ENG auf OnStatus00002 (weil er ja kein OnStatus00025 kennt..) - macht ja aber keinen Sinn?! 
Oder wie meintest du das? 


Vielleicht ein paar Infos mehr:
Mein selbsterstellter Status 00025(Geprüft) steht zwischen 00002(Zur Überprüfung) und 00003(Freigegeben).
Beim Wechsel von 00025 -> 00003 soll in das Feld CHECKED_2_BY der jeweilige User eingetragen werden.

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

Jörg2
Mitglied



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

Beiträge: 509
Registriert: 20.02.2007

erstellt am: 18. Jul. 2011 13:43    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 BRein 10 Unities + Antwort hilfreich

Gut, dann würde ich so vorgehen, dass ich alle Atribute von 00002 zu 00025 kopiere und die Werte (wo nötig) ändere.
Also z.B.
OnChange = Status_onChange_00025
und
OnEnter = Status_onEnter_00025
und
Name=
und
Icon=

Der Statuszustand muss natürlich an den richtigen Stellen, mit den erforderlichen Zielstatus (vermutlich 00003 und ?), so wie als Zielstatus von 00002 eingerichtet werden.

Dann am AIM.DOC.ENG das Attribut
OnStatus00025 = ___ChangeField(CHECKED_2_BY=$USERID)
erstellen.

Fertig!

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 18. Jul. 2011 15:00    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

Das hatte ich ganz zu Anfang auch schon probiert. Status ändert sich allerdings nicht und ich bekomme im errlog.err die Meldung

Code:
Mon Jul 18 14:56:18 2011 :(03449)___ChangeStatus "00002"->"00025": OnEnter "Status_OnEnter_00025" unknown, errno=2

Liegt aber bestimmt daran das PSP ja gar nicht "Status_OnEnter_00025" kennt .. nicht?

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

Jörg2
Mitglied



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

Beiträge: 509
Registriert: 20.02.2007

erstellt am: 18. Jul. 2011 15:09    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 BRein 10 Unities + Antwort hilfreich

Am Anfang hast du doch geschrieben, du hättest am Wert des Attributes Command am Status rumgespielt.
Was hast du nun genau gemacht?
Poste doch bitte ein paar Screenshots deiner Konfig.
Die Fehlermeldung deutet darauf hin, das der Statuswechsel nicht funktioniert, da sind wir noch gar nicht beim Auslösen irgendwelcher Aktionen beim Erreichen eines Statuszustandes.

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 18. Jul. 2011 15:31    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


00002_00025.png


status00025.png

 
Ich hatte am Wert des Attributs Command als auch am Wert des Attributs onChange und on Enter "rumgespielt".

Anbei ein paar Screenshots
(natürlich kein Life-System!   )

[Diese Nachricht wurde von BRein am 18. Jul. 2011 editiert.]

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

Jörg2
Mitglied



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

Beiträge: 509
Registriert: 20.02.2007

erstellt am: 18. Jul. 2011 16:05    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 BRein 10 Unities + Antwort hilfreich

Ganz ohne Command am Zielstatus geht es auch nicht.
Trag da mal
Command=Status_ToBeChecked
ein.
Das ist der Command, welcher auch beim Übergang 00001 zu 00002 ausgeführt wird.
Dann solltest du die Namen noch abgleichen.

Wenn die Statusfolge funktioniert, kannst du dich mit dem Ändern des Feldes beschäftigen.

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 18. Jul. 2011 16:28    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

Command und Namen habe ich angepasst. Ergebnis das selbe.

Meine Theorie ist eher die, das PSP von einem Status_OnEnter_00025 gar nichts wissen kann und deswegen auch die Fehlermeldung im Log erscheint (=unknown).
Wenn das so wäre, dann bleibt mir ja gar nichts anderes übrig als die Statusglobal.dbp anzupassen, nicht?

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

freak-tom
Moderator
PDM-/CAD-Admin


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

Beiträge: 347
Registriert: 07.03.2006

Productstream Professional Pro 2011 / Jobserver / Replikator
Productstream Professional Office 2011
Productstream Professional Pro 2010 / Jobserver / Replikator
Productstream Professional Office 2010
Inventor Suite 2011
Solid Works 2015
ECTR

erstellt am: 18. Jul. 2011 20:56    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 BRein 10 Unities + Antwort hilfreich

Hallo BRein,

die Fehlermeldung kommt, da er den Befehl Status_OnEnter_00025 nicht kennt.
Damit er diesen kennt würde ich in die Statusglobal.dbp gehen, den Befehl Status_OnEnter_00005 in eine eigene DBP kopieren und entsprechend zu Status_onEnter_00025 ändern.
Dann kompilieren und die DPQ Datei in die Konfig einhängen, an die gleiche Stelle wie die Statusglobal.dbq
Dazu suche einfach in der Konfig nach der Datei kopiere den Eintrag und ändere in so um, das deine DBQ Datei auch geladen wird.
Die Konfigänderungen würde ich in ein eigenes Profil machen, damit bei Updates die Änderungen nicht überschrieben werden.

MfG
Thomas

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

BRein
Mitglied



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

Beiträge: 38
Registriert: 02.08.2010

erstellt am: 20. Jul. 2011 10: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

Dachte ich mir doch dass das so nicht funktionieren kann.
Habe nun direkt die Statusglobal angepasst, da es für unsere PSP Umgebung keine weiteren Updates mehr geben wird.

Mein selbsterstellter Status tut jetzt auch genau das was er soll - Vielen Dank an Jörg2 sowie freak-tom !!!

[Diese Nachricht wurde von BRein am 21. Jul. 2011 editiert.]

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