Workflow

cancel
Showing results for 
Search instead for 
Did you mean: 
ckempf
Member II

Workflow

Hi ich beschäftige mich gerade mit der Alfresco Community Version 3.2 und versuche hierbei einen Workflow zu definieren. Mein Problem besteht darin, das ich es nicht schaffe innerhalb eines Workflows Attribute aus einem Dokument auszulesen, die ich für diverse Decisionknoten innerhalb meines Workflows benötige. Ich finde lediglich nur Informationen ,wie ich "Maskenínformationen" aus dem bpm_package laden kann: durch Beispiele wie: bpm_package.children
  • .properties["cm:status"], abner wie komme ich an Informationen aus einer angehängten Datei, die bei einem Workflow mit geführt wird? Ich hoffe es kann mir jemdand weiter. ´Falls meine Frage diverse unverständlichkeiten aufweist einfach Fragen.

  • Danke schon mal an alle die mir weiterhelfen können!!!
    7 Replies
    bwerner
    Member II

    Re: Workflow

    Hallo,

    Hast Du Dir schon ein mal folgenden Artikel im Wiki angesehen:
    http://wiki.alfresco.com/wiki/WorkflowSample_Lifecycle

    Dort wird das Zusammenspiel der Modelle anhand eines Beispiels erklärt.
    Die Informationen, die Du auswerten möchtest müssen natürlich schon am Deinem Dokument vorhanden sein oder beim Start des Workflows als Aspect angelegt werden.

    Viele Grüße,
    Bernhard
    ckempf
    Member II

    Re: Workflow

    Hallo Bernand erstmal Danke für deine Antwort, hat mir gut weiter geholfen. Ich hätte da noch eine andere Frage. Wenn ich einen Workflow entworfen habe und diverse Javaklassen mit Task-Nodes verknüpft habe, wie ist es möglich von den verknüpften Javaklassen auf Variablen zuzugreifen, die sich innerhalb des bpm_packages befinden. Bisher habe ich lediglich über die Processdefiniton auf Dokumentenproperties zugegriffen , aber nicht von angehängten Javaklassen heraus.

    Danke schon mal für jeden sinnvollen Beitrag!!
    bwerner
    Member II

    Re: Workflow

    Hi,

    Ich bin mir nicht ganz sicher ob ich verstanden habe was genau Du implementieren möchtest, aber IMHO sollte die folgende Beschreibung weiter helfen können:
    http://dev.alfresco.com/resource/docs/java/repository/org/alfresco/repo/jscript/ScriptNode.html

    Viele Grüße,
    Bernhard
    saru0002
    Member II

    Re: Workflow

    Hallo,

    ich bin noch ein richtiger NEWBIE in Sachen Alfresco. Und hoffe Ihr könnt mir weiterhelfen …. Smiley Wink

    Ich möchte gerne einen Workflow für einen Urlaubsantrag erstellen. Das Formular ist natürlich für jeden offen. Nach dem starten des Workflows soll die Information direkt an einen entsprechenden Vorgesetzten weitergeleitet werden.

    Kann mir jemannd sage wo ich da ansetzen muss? Oder gibt es eine Anleitung? Ich hab gar keinen Plan wo ich da in Alfreso ansetzen muss….

    Danke
    bwerner
    Member II

    Re: Workflow

    Hallo,

    Ein guter Einstiegspunkt ist diese WIKI page:
    http://wiki.alfresco.com/wiki/Workflow

    Für Dich werden dann erst ein mal Administration und Developer Teil interessant sein.
    Wenn Du im Netzt mal nach "alfresco developer guide" suchst findest Du auch ein Buch, das eine sehr gute Einstiegslektüre ist.
    Darin ist auch eine Step-by-Step Anleitung zum generieren von Workflows enthalten.

    Viele Grüße,
    Bernhard
    ckempf
    Member II

    Re: Workflow

    Hallo Werner der Tipp mit der ScriptNode war nicht schlecht Danke schon mal !
    Aber ich schaffe es irgendwie nicht auf die Properties(Beispielsweise den Author) einer angehängten Datei zu greifen die sich innerhalb des bmp_packages befinden.

    ich habe in meiner Klasse:

    public classe BpmZugriff implements Actionhandler{

    public void execute(ExecutionContext context) throws Exception {

    Object var=context.getVariable("wf_notify");    //Das Funktioniert einwandfrei
    Object var2=context.getVariable("bpm_workflowDueDate");    //Das Funktioniert ebenfalls einwandfrei
    Object var3=context.getVariable("bpm_package");                 //Das Funktioniert bekomme das bpm_package aber ich weis nicht wie ich auf die Atribute der
                                                                                                  angehängten Datei(en) komme

    Map map= ((JBPMNode)var3).getChildAssociations();               // hierbei bekomme ich eine NullPointerExeception
    map= ((JBPMNode)var3).getAssociations().size();                      //Hierbei bekomme ich zwar keinen Fehler aber die Map hat eine size von 0
    map= ((JBPMNode)var3).getProperties();                                   //Hierbei bekomme ich jegliche Informationen über das bpm_package aber wie komme ich die
                                                                                                   //atribute des 1.bzw 2. oder 3. Dokumentes, welchen Befehl müsste ich nutze, damit
                                                                                                    // ich  eine List oder Map oder Was auch immer bekomme um dann durch  weiteren
                                                                                                     // Aufrufe  auf die einzelnen Dokumenattributen zugreifen zu können
    }

    }

    Ich hoffe es kann mir jemand weiterhelfen bin verzweifelt Smiley Sad

    Gefunden habe ich folgendes:

    ContextInstance contextInstance = executionContext.getContextInstance();
    JBPMNode jbpmNode = (JBPMNode) contextInstance.getVariable("bpm_package"); // there might be a constant that has this somewhere
    NodeRef packageNodeRef = jbpmNode.getNodeRef();
    List<ChildAssociationRef> childRefList = nodeService.getChildAssocs(packageNodeRef);    ///NullPointer Exception in dieser Zeile

    for (ChildAssociationRef childAssocRef : childRefList) {
        // do something with each document in the workflow package
        NodeRef nodeRef = childAssocRef.getChildRef()
    }

    Aber wo wird das Objekt nodeService deklariert, also bzw. es handelt sich hier um ein Interface, aber so wie es da steht kann man es nicht benutzen, weiß jemnad, wie man den oberen Codeauschnitt zum laufen bekommt??
    thestorm
    Member II

    Re: Workflow

    var temp = bpm_package.children[0].properties["ccs:fname"];
    taskInstance.setVariable("ccswfcredential_firstname",temp);


    Get the value of a property from the Content, put it in the workflow's property.

    Siehe http://anipossible3.blogspot.com/2007/09/alfresco-workflow-model-setup-features.html