cancel
Showing results for 
Search instead for 
Did you mean: 

no consigo ejecutar codigo en workflow

giorgio
Champ in-the-making
Champ in-the-making
Buenas, estoy intentando que al realizar alguno de los pasos dentro del workflow review, por ejemplo al crearlo, o al aprobarlo
me asigne el valor de una property personalizada que me he creado en un tipo, pero no consigo hacerlo.
Alguien sabe como y en que sitio exactamente hay que ponerel código para se ejecute correctamente?

esto es lo que estoy poniendo en el review_processdefinition.xml



<?xml version="1.0" encoding="UTF-8"?>

<process-definition xmlns="urn:jbpm.org:jpdl-3.1" name="wf:review">

    <swimlane name="initiator" />

    <start-state name="start">
        <task name="wf:submitReviewTask" swimlane="initiator" />
        <transition name="" to="review" />
    </start-state>

    <swimlane name="reviewer">
        <assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
            <actor>#{bpm_assignee}</actor>
        </assignment>   
    </swimlane>

    <task-node name="review">
        <task name="wf:reviewTask" swimlane="reviewer">
            <event type="task-create">
                <script>
            document.properties["my:dedonde"]="valorquequieroasignaralcrearelflujo";
            document.save();

                    if (bpm_workflowDueDate != void) taskInstance.dueDate = bpm_workflowDueDate;
                    if (bpm_workflowPriority != void) taskInstance.priority = bpm_workflowPriority;
                </script>
            </event>
        </task>
        <transition name="reject" to="rejected" />
        <transition name="approve" to="approved" />
    </task-node>

    <task-node name="rejected">
        <task name="wf:rejectedTask" swimlane="initiator" />
        <transition name="" to="end" />
    </task-node>

    <task-node name="approved">
        <task name="wf:approvedTask" swimlane="initiator" />
        <transition name="" to="end" />
    </task-node>

    <end-state name="end" />

</process-definition>


Gracias y saludos
22 REPLIES 22

giorgio
Champ in-the-making
Champ in-the-making
del modelo del workflow? ese no lo he tocado

si te refieres a la definicion del tipo? mmm me extraña mucho.

seguiré revisando el código.

gracias.

pjcaracuel_2349
Confirmed Champ
Confirmed Champ
TE encuenta que tienes que desplegar el workflow para que este disponible

http://wiki.alfresco.com/wiki/Workflow_Console

Saludos

giorgio
Champ in-the-making
Champ in-the-making
pero eso es si es un workflow nuevo no?

yo donde meto el codigo es en el  review_processdefinition que ya existe

pjcaracuel_2349
Confirmed Champ
Confirmed Champ
Una cosa es el workflow y otra la definicion del modelo que use.

Saludos

giorgio
Champ in-the-making
Champ in-the-making
entonces quieres decir que la definicion de la propiedad a la que quiero asignar el valor desde el workflow, tengo que tenerlo definico en el modelo del workflow?
ahora mismo donde la tengo definida es en el modelo del tipo de contenido.

giorgio
Champ in-the-making
Champ in-the-making
a ver parece que voy aclarandome cosas he ejecutado el siguiente comando en la consola de workflows y me ha tirado un warning

Last command: deploy alfresco/workflow/review_processdefinition.xml
Duration: 83ms
—– 
[WARNING] swimlane 'initiator' does not have an assignment
deployed definition id: jbpm$9 , name: jbpm$wf:review , title: Review & Approve , version: 2
definition: jbpm$9 , name: Review & Approve , version: 2
workflow: None
path: None

Esto me lo ha tirado con el siguiente review_processdefinittion


<?xml version="1.0" encoding="UTF-8"?>

<process-definition xmlns="urn:jbpm.org:jpdl-3.1" name="wf:review">

    <swimlane name="initiator" />

    <start-state name="start">
        <task name="wf:submitReviewTask" swimlane="initiator" />
        <transition name="" to="review" />
    </start-state>

    <swimlane name="reviewer">
        <assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
            <actor>#{bpm_assignee}</actor>
        </assignment>   
    </swimlane>

    <task-node name="review">
        <task name="wf:reviewTask" swimlane="reviewer">
            <event type="task-create">
                <script>
bpm_package.children[0].properties["my:haciadonde"] = "valorjorge";
bpm_package.children[0].save();

                    if (bpm_workflowDueDate != void) taskInstance.dueDate = bpm_workflowDueDate;
                    if (bpm_workflowPriority != void) taskInstance.priority = bpm_workflowPriority;
                </script>
            </event>
        </task>
        <transition name="reject" to="rejected" />
        <transition name="approve" to="approved" />
    </task-node>

    <task-node name="rejected">
        <task name="wf:rejectedTask" swimlane="initiator" />
        <transition name="" to="end" />
    </task-node>

    <task-node name="approved">
        <task name="wf:approvedTask" swimlane="initiator" />
        <transition name="" to="end" />
    </task-node>

    <end-state name="end" />

</process-definition>

y la propiedad que estoy intentando asignarle valor, recordemos que está definida en el tipo de contenido nota,
y el fichero adjunto de este workflow es del tipo nota, osea que contiene esa propiedad.
Sabes por donde pueden ir los tiros?

gracias y saludos

pjcaracuel_2349
Confirmed Champ
Confirmed Champ
Buenas,

Yo no es que ande muy puesto en temas de workflow, pero entiendo que quizas se te haya olvidado este paso
http://wiki.alfresco.com/wiki/WorkflowAdministration#Step_2:_Create_the_Task_Model

Saludos

giorgio
Champ in-the-making
Champ in-the-making
Bueno, ahi seria para crear un nuevo workflow, pero yo estoy haciendo lo mismo que el ejemplo pero sobre los que ya existen entonces el modelo ya esta creado, yo estoy modificando sobre el archivo review_processdefinition que es la definicion  del workflow avanzado de tipo review & aprove.

Saludos y gracias.

pjcaracuel_2349
Confirmed Champ
Confirmed Champ
Echale un vistazo a este post

http://forums.alfresco.com/en/viewtopic.php?f=34&t=14546

Saludos

giorgio
Champ in-the-making
Champ in-the-making
ahora lo he intentado con el código del
ejemplo y me tira esta excepcion que no me deja terminar de asignar el workflow

Si us plau, corregiu els errors de sota i després cliqueu 'Finalitza.'
Sha produït un error en el sistema durant loperació: Failed to signal transition 'null' from workflow task 'jbpm$134'


quedando asi el codigo dond e lo he puesto


    <task-node name="approved">
        <task name="wf:approvedTask" swimlane="initiator" />
        <transition name="" to="end" >
     <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
        <script>
          if (wf_notifyMe)
          {
            var mail = actions.create("mail");
            mail.parameters.to = initiator.properties["cm:email"];
            mail.parameters.subject = "Adhoc Task " + bpm_workflowDescription;
            mail.parameters.from = bpm_assignee.properties["cm:email"];
            mail.parameters.text = "It's done";
            mail.execute(bpm_package);
          }
        </script>
      </action>
        </transition>
    </task-node>

yo no me lo explico no puede ser tan dificil

Saludos.
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.