Re-editar aspectos

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

Re-editar aspectos

Hola a todos,

Necesito re-editar valores de unos aspectos a través de todo el flujo.  El problema es que solo al principio del flujo se puede ingresar sus valores pero a la siguiente tarea solo posibilita su visualización.

Por favor, me podrían indicar como debo configurar el modelo para lograr lo mencionado.

Gracias.

    <aspects>

        <aspect name="wf:fichaSolPractica">
            <title>Datos del Solicitante</title>
            <properties>
                <property name="wf:nombre">
                    <title>Nombre</title>
                    <type>d:text</type>
                </property>
                <property name="wf:cargo">
                    <title>Cargo</title>
                    <type>d:text</type>
                </property>
                <property name="wf:area">
                    <title>Area</title>
                    <type>d:text</type>
                </property>
            </properties>
        </aspect>          
 
    </aspects>
8 Replies
angelborroy
Expert

Re: Re-editar aspectos

¿Estás creando un workflow para su uso en Alfresco Share?

Software Engineer in Alfresco Search Team.
jceam
Member II

Re: Re-editar aspectos

Angel, gracias por contestar.   Y si, su uso es en Alfresco Share y parte de la configuración es la siguiente:

   <config evaluator="string-compare" condition="activiti$solicitudPractica3">
        <forms>
            <form>
                <field-visibility>
                    <show id="bpm:workflowDescription" />
                    <show id="bpm:workflowDueDate" />
                    <show id="bpm:workflowPriority" />
                    <show id="packageItems" />
                    <show id="wf:nombre" />
                    <show id="wf:cargo" />
                    <show id="wf:area" />        
                    <show id="bpm:comment" />
                </field-visibility>
                <appearance>
                    <set id="" appearance="title" label-id="workflow.set.general" />
                    <set id="info" appearance=""
                        template="/org/alfresco/components/form/2-column-set.ftl" />
                    <set id="items" appearance="title" label-id="workflow.set.items" />
                    <set id="work" appearance="title" label-id="workflow.set.work" />
                    <set id="other" appearance="title" label-id="workflow.set.other" />
                    <set id="response" appearance="title" label-id="workflow.set.response" />

                    <field id="bpm:workflowDescription" label-id="workflow.field.message">
                        <control template="/org/alfresco/components/form/controls/textarea.ftl">
                            <control-param name="style">width: 95%</control-param>
                        </control>
                    </field>

                    <field id="bpm:workflowDueDate" label-id="workflow.field.due"
                        set="info" />
                    <field id="bpm:workflowPriority" label-id="workflow.field.priority"
                        set="info">
                        <control
                            template="/org/alfresco/components/form/controls/workflow/priority.ftl" />
                    </field>

                    <field id="packageItems" set="items" />
                   
                    <field id="wf:nombre" set="response" />
                    <field id="wf:cargo" set="response" />
                    <field id="wf:area" set="response" />            

                    <field id="bpm:comment" label-id="workflow.field.comment"
                        set="response">
                        <control template="/org/alfresco/components/form/controls/textarea.ftl" />
                    </field>
                    <field id="transitions" set="response" />
                </appearance>
            </form>
        </forms>
    </config>

    <config evaluator="task-type" condition="wf:submitIngSolicitud01Task">
      <forms>
         <form id="workflow-details">
            <field-visibility>
               <show id="bpm:workflowDescription" />
               <show id="packageItems" />
               <show id="wf:nombre" />
               <show id="wf:cargo" />
               <show id="wf:area" />        
               <show id="wf:enPlazo" />          
               <show id="bpm:comment" />              
               <show id="transitions" />
               <show id="bpm:status" />              
            </field-visibility>
            <appearance>
               <set id="" appearance="title" label-id="workflow.set.general" />
               <set id="items" appearance="title" label-id="workflow.set.items" />
                  <set id="progress" appearance="title" label-id="workflow.set.task.progress" />              
               <set id="other" appearance="title" label-id="workflow.set.other" />
                  <set id="response" appearance="title" label-id="workflow.set.response" />              
              
               <field id="bpm:workflowDescription" label-id="workflow.field.message">
                  <control template="/org/alfresco/components/form/controls/textarea.ftl">
                     <control-param name="style">width: 95%</control-param>
                  </control>
               </field>
               <field id="packageItems" set="items" />
             
                <field id="wf:nombre" set="response" />
                <field id="wf:cargo" set="response" />
                <field id="wf:area" set="response" />            
                <field id="wf:enPlazo" set="response" />

               <field id="bpm:comment" label-id="workflow.field.comment"
                   set="response">
                   <control template="/org/alfresco/components/form/controls/textarea.ftl" />
               </field>
               <field id="bpm:status" set="progress" />
               <field id="transitions" set="response" />                             
            </appearance>
         </form>
      </forms>
    </config>
angelborroy
Expert

Re: Re-editar aspectos

Lo cierto es que nunca me había dado cuenta de este efecto. Prueba a utilizar el "for-mode" en la definición de campos en Share.

Algo así: 

<show id='wf:cargo' for-mode='edit' />
Software Engineer in Alfresco Search Team.
jceam
Member II

Re: Re-editar aspectos

Probé con lo sugerido y si es posible la edición pero no se graban los cambios al pasar de una tarea a otra.

angelborroy
Expert

Re: Re-editar aspectos

Lo imaginaba.

Las variables en Activiti están asociadas a una tarea, por lo que tendrías que utilizar una variable global (asociada a la instancia) y actualizarla tú mismo con JavaScript o Java a través de un listener en función de lo que el usuario haya introducido en la tarea.

<userTask id="sumbitIngSolicitud01Task" activiti:formKey="wf:submitIngSolicitud01Task">
  <extensionElements>
    <activiti:taskListener event="complete"
       class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener">
      <activiti:field name="script">
        <activiti:string><![CDATA[
          execution.setVariable('wf_cargo_global', task.getVariableLocal('wf_cargo'));
        ]]></activiti:string>
     </activiti:field>
   </activiti:taskListener>
</extensionElements>
</userTask>
Software Engineer in Alfresco Search Team.
jceam
Member II

Re: Re-editar aspectos

Con lo que has recomendado me fue posible ir actualizando los valores de los aspectos por cada tarea.   Tengo un solo problema con esto, si reviso el resumen del flujo, el aspecto que fue ingresado al inicio se mantiene, como se podría actualizar el valor del aspecto que aparece en el resumen del flujo... gracias.

angelborroy
Expert

Re: Re-editar aspectos

Los valores que aparecen son los asociados a la tarea de inicio del flujo, así que tendrás que actualizar esas variables con los valores que desees. Probablemente necesites hacerlo al final del flujo con otro listener.

Software Engineer in Alfresco Search Team.
jceam
Member II

Re: Re-editar aspectos

Angel, lo intentare pero si no funciona creo q intentare actualizar los datos directamente en las tablas.

Muchas gracias por la ayuda que me has brindado.