CoreBOSBB
[RESUELTO] - WF programado funciona OK? - Printable Version

+- CoreBOSBB (https://discussions.corebos.org)
+-- Forum: Support (https://discussions.corebos.org/forumdisplay.php?fid=17)
+--- Forum: Administrator Support (https://discussions.corebos.org/forumdisplay.php?fid=8)
+--- Thread: [RESUELTO] - WF programado funciona OK? (/showthread.php?tid=438)

Pages: 1 2


[RESUELTO] - WF programado funciona OK? - julioval - 09-23-2016

Hola,
He hecho un WF que tiene la ejecución "programada" para actualizar un campo cuando se dan unas condiciones.
Si en lugar de que sea "programada", le digo que lo ejecute "cada vez que se guarda la entidad", funciona perfectamente.
El problema que tengo, es que he observado que cuando esta "programada" solo actualiza ese campo en un único registro que cumple la condición, pero no en todos los que sí la cumplen.
Funciona correctamente mi CRM? No debería cambiar ese campo en todos los registros que cumplan la condición?
Saludos.


RE: WF programado funciona OK? - joebordes - 09-23-2016

Sí debería cambiarlo en todos.
Sube una captura de tu configuración y/o verifica la consulta con el script evalwf.php

http://corebos.org/documentation/doku.php?id=en:devel:helperscripts&evalwfphp#evalwfphp


RE: WF programado funciona OK? - julioval - 09-28-2016

(09-23-2016, 04:18 PM)joebordes Wrote: Sí debería cambiarlo en todos.
Sube una captura de tu configuración y/o verifica la consulta con el script evalwf.php

http://corebos.org/documentation/doku.php?id=en:devel:helperscripts&evalwfphp#evalwfphp

Gracias Joe,
EL CRM ID que me solicita de donde lo saco? el otro ID del WF ya lo se.
Saludos.

Hola Joe,
Te dejo unas capturas con la configuracion del WF (hay una de la vista desde el PHPmyadmin)
Saludos.


RE: WF programado funciona OK? - joebordes - 09-28-2016

Busca Potentials en la table vtiger_ws_entity y utiliza el id delante de una 'x' seguida de cualquier id de potential.

13x999

donde el '13' es el ID de la fila con Potentials en esa tabla y 999 es un registro cualquiera de potentials


RE: WF programado funciona OK? - julioval - 09-29-2016

(09-28-2016, 10:24 PM)joebordes Wrote: Busca Potentials en la table vtiger_ws_entity y utiliza el id delante de una 'x' seguida de cualquier id de potential.

13x999

donde el '13' es el ID de la fila con Potentials en esa tabla y 999 es un registro cualquiera de potentials

Tengo la impresión que pongo algo mal, me sale NOT FOUND. El script está donde toca, eso sí.
He probado con todo lo que se me ha ocurrido:

evalwf110&13x62550.php
evalwf?110&13x62550.php
evalwf 110&13x62550.php
evalwf? 110&13x62550.php
evalwf? 110&13x62550.php
evalwf ?workflowid=110&crmid=13x62550.php
etc...

y siempre la respuesta es la misma, NOT FOUND.

Qué hago mal?
Saludos.


RE: WF programado funciona OK? - joebordes - 09-29-2016

evalwf.php?workflowid=110&crmid=13x62550


RE: WF programado funciona OK? - julioval - 09-30-2016

(09-29-2016, 08:44 PM)joebordes Wrote: evalwf.php?workflowid=110&crmid=13x62550


Gracias Joe.

He puesto esa cadena que me indicas y sale esto:

Scheduled: SQL for affected records:

SELECT vtiger_potential.potentialid FROM vtiger_potential INNER JOIN vtiger_crmentity ON vtiger_potential.potentialid = vtiger_crmentity.crmid WHERE vtiger_crmentity.deleted=0 AND ( (( vtiger_potential.sales_stage <> 'Closed Won') or ( vtiger_potential.sales_stage <> 'Closed Lost') or ( vtiger_potential.sales_stage <> 'Closed Lost (Competencia)') or ( vtiger_potential.sales_stage <> 'Closed Lost (WF)') ) and (( vtiger_crmentity.createdtime IS NULL or vtiger_crmentity.createdtime = '') )) AND vtiger_potential.potentialid > 0



Te dice algo?


Saludos.


RE: WF programado funciona OK? - joebordes - 09-30-2016

Sí, me dice.
No se pueden utilizar fórmulas en los flujos de trabajo programados. Esto es porque se convierte la condición en una consulta que recupera los registros a tratar en bloque, no es como los otros eventos que tienen un registro concreto con sus valores y pueden aplicar la fórmula. Por eso la condición que tienes de fecha está vacía

vtiger_crmentity.createdtime IS NULL or vtiger_crmentity.createdtime = ''

tienes que cambiar esa, debido a esa no está encontrando ningún registro


RE: WF programado funciona OK? - julioval - 09-30-2016

(09-30-2016, 10:18 AM)joebordes Wrote: Sí, me dice.
No se pueden utilizar fórmulas en los flujos de trabajo programados. Esto es porque se convierte la condición en una consulta que recupera los registros a tratar en bloque, no es como los otros eventos que tienen un registro concreto con sus valores y pueden aplicar la fórmula. Por eso la condición que tienes de fecha está vacía

vtiger_crmentity.createdtime IS NULL or vtiger_crmentity.createdtime = ''

tienes que cambiar esa, debido a esa no está encontrando ningún registro

Pues vaya Angry .

De todas formas, muchas gracias Joe por tu tiempo.

Pensando en ello...
No puedo de alguna manera pedírselo?
O sea, en lugar de lo que tengo y no funciona:

(fecha de creación)(es)(time_diffdays(get_date('yesterday'),createdtime )>180)

cómo puedo usar?:

(fecha de creación)(menos de x horas antes)(NO SE AQUÍ CÓMO DEBERÍA PONER PARA INDICARLE 4320 HORAS, QUE SON LOS 180 DÍAS)

Cómo debería hacerlo? Cuál es el formato a seguir?


RE: WF programado funciona OK? - joebordes - 09-30-2016

Mira a ver si esto te ayuda:

http://corebos.org/documentation/doku.php?id=en:scheduled_workflows#scheduled_workflow_conditions


[attachment=179]