Pregunta

Estoy tratando de ver si es posible que un campo en la oportunidad sea actualizado (una casilla de verificación que se verifica verdadera) cuando alguien completa una tarea relacionada. ¿Hay alguna forma de hacer esto?

¿Fue útil?

Solución

No creo que esto se pueda hacer con el flujo de trabajo de objeto cruzado, desde el WhatId campo de un Task es una "clave polimórfica". Si tengo razón, tendrás que usar un disparador en Task.

Otros consejos

Como Jeremy dijo que necesitará un desencadenante, el código se verá como (no he revisado los nombres de campo, etc. ¡Así que trate esto como un código pseudo casi real)!

trigger TaskAfterInsertUpdate on Task (after update, after insert)
{
    list<opportunity> liOpportunities = new list<opportunity>();
    list<id> liIDs = new list<id>();

    for(Task sTask : trigger.new)
    {
        if(sTask.Status == 'Complete' && ('' + sTask.WhatId).startsWith('006'))
        {
            liIDs.add(sTask.WhatId);
        }
    }

    for(Opportunity sOppty : [select Id, CheckBoxField__c from Opportunity where Id in : liIDS])
    {
        sOppty.CheckBoxField__c = true;
        liOpportunities.add(sOppty);
    }

    update liOpportunities;
}

¡Espero que esto sea de alguna ayuda!

Hay una aplicación en AppExchange que le permitirá hacerlo con objetos estándar.

Le permitirá activar una acción de flujo de trabajo en un registro (cuenta, plomo, oportunidad, caso, etc.) cuando se completa una tarea relacionada con ese objeto.

https://appexchange.salesforce.com/listingdetail?listingid=A0N30000000Q5KHEAA

Se llama flujo de trabajo fácil http://www.easyworkflow.co/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top