Utiliser des flux de processus métier à l’aide de code

Un flux des processus d’entreprise vous permet de créer des processus de vente, de service et autres processus d’entreprise plus efficaces et rapides. Il crée une visualisation de votre processus d’entreprise en plaçant des contrôles spécifiques au sommet des formulaires d’entité. Les utilisateurs sont guidés par différentes étapes de processus de vente, de marketing ou de service jusqu’à la fin. Chaque processus prend en charge plusieurs phases et plusieurs étapes. Vous pouvez ajouter ou supprimer des étapes, modifier l’ordre des phases ou ajouter de nouvelles entités au flux des processus d’entreprise.

Différentes instances du flux de processus d’entreprise peuvent s’exécuter simultanément sur le même enregistrement d’entité. Les utilisateurs peuvent permuter entre des instances de processus d’entreprise simultanées et reprendre leur travail à une étape actuelle du processus.

Cette rubrique fournit des informations sur l’utilisation par programme des flux de processus d’entreprise.

Note

Il n’est pas nécessaire d’écrire du code pour utiliser les flux de processus d’entreprise. Pour plus d’informations sur l’utilisation du client Dynamics 365 Customer Engagement (interface utilisateur) pour créer et gérer des flux de processus d’entreprise, voir Vue d’ensemble des flux de processus d’entreprise

Conditions préalables pour les flux de processus d’entreprise

Les entités personnalisées et les entités qui ont mis à jour les formulaires d’interface utilisateur peuvent participer au flux des processus d’entreprise. Les entités d’interface utilisateur mises à jour sont la propriété IsAIRUpdated définie sur true.

Pour activer une entité pour le flux des processus d’entreprise, définissez la propriété IsBusinessProcessEnabled sur true.

Important

L’activation d’une entité pour le flux des processus d’entreprise est un processus unilatéral. Vous ne pouvez pas l’inverser.

Définir le flux des processus d’entreprise

Utilisez le concepteur de flux de processus d’entreprise visuel pour définir un flux de processus d’entreprise. Pour plus d’informations, voir Créer un flux de processus d’entreprise

Par défaut, un enregistrement de flux des processus d’entreprise est créé à l’état Draft.

La définition d’un flux de processus d’entreprise est stockée dans l’entité workflow, et les informations de phase du flux de processus d’entreprise sont stockées dans l’entité processstage.

Activer le flux des processus d’entreprise

Avant de pouvoir utiliser le flux de processus, vous devez l’activer. Pour l’activer, vous devez avoir le privilège prvActivateBusinessProcessFlow pour l’entité Workflow. Utilisez le message UpdateRequest pour définir l’état de l’enregistrement d’entité Workflow sur Activated. Pour plus d′informations : Effectuer des opérations spécialisées à l′aide de la fonction de mise à jour

Note

Vous pouvez également utiliser le concepteur de flux de processus d’entreprise pour activer un flux de processus d’entreprise.

Entité du flux de processus d’entreprise

Lorsque vous activez une définition du flux de processus d'entreprise en modifiant l'état de l'enregistrement d'entité Workflow correspondant ou en utilisant le concepteur de flux de processus d'entreprise, une entité personnalisée portant le nom ci-après est automatiquement créée pour stocker les instances du flux de processus d'entreprise activées : « <préfixe de la solution active>_<nom unique> », où le nom unique est dérivé du nom vous spécifiez.

Par exemple, si vous avez spécifié « Mon FPE personnalisé » comme nom unique de la définition du flux de processus d’entreprise et vous utilisez l’éditeur par défaut (nouveau) pour votre solution active, le nom de l’entité personnalisée créée pour stocker les instances de processus est « nouveau_monfpepersonnalisé ».

Si la valeur uniquename n’est pas disponible pour une définition de flux des processus d’entreprise, par exemple si le flux des processus d’entreprise a été importé dans le cadre de la solution à partir d’une version antérieure, le nom par défaut de l’entité personnalisée est « <préfixe de la solution active>_bpf_<Définition_FPE_GUID> :

Important

Les exemples d’enregistrements de flux de processus d’entreprise disponibles dans Dynamics 365 utilisent les entités système pour stocker les enregistrements d’instance de flux de processus d’entreprise correspondants. Deux des exemples d’enregistrements d’entité de flux de processus d’entreprise sont Entité OpportunitySalesProcess et Entité LeadToOpportunitySalesProcess.

Toutefois, les nouvelles définitions du flux de processus d’entreprise que vous créez utilisent des entités personnalisées pour stocker les enregistrements d’instance comme décrit précédemment.

Vous pouvez extraire le nom de l’entité du flux de processus d’entreprise de l’un des manières suivantes :

  • Utilisation de l’interface utilisateur: utilisez l’interface utilisateur de personnalisation pour accéder à l’entité du flux de processus d’entreprise :

    Nom de l’entité BPF.

  • Utilisation de l’API web: utilisez la demande suivante :

    Demander

    GET [Organization URI]/api/data/v9.1/workflows?$filter=name eq 'My Custom BPF'&$select=uniquename HTTP/1.1
    

    Réponse

    {  
    "@odata.context":"[Organization URI]/api/data/v9.1/$metadata#workflows(uniquename)",
    "value":[  
         {  
             "@odata.etag":"W/\"1084677\"",
             "uniquename":"new_mycustombpf",
             "workflowid":"2669927e-8ad6-4f95-8a9a-f1008af6956f"
         }
      ]
    }
    
    
  • Utilisation du service d’organisation : utilisez l’exemple de code suivant :

    QueryExpression query = new QueryExpression
    {
        EntityName = "workflow",
        ColumnSet = new ColumnSet("uniquename"),
        Criteria = new FilterExpression
        {
            Conditions =
            {
                new ConditionExpression
                {
                    AttributeName = "name",
                    Operator = ConditionOperator.Equal,
                    Values = { "My Custom BPF" }
                }
            }
        }
    };
    Workflow Bpf = (Workflow)_serviceProxy.RetrieveMultiple(query).Entities[0]; 
    
    

Note

La propriété IsBPFEntity est true pour les entités de flux des processus d’entreprise. Vous pouvez récupérer toutes les entités de flux des processus d’entreprise dans votre instance en exécutant la requête d’API web suivante :

GET [Organization URI]/api/data/v9.1/EntityDefinitions?$select=SchemaName,LogicalName,DisplayName&$filter=IsBPFEntity eq true HTTP/1.1

Gérer la sécurité des flux des processus d’entreprise

L’entité personnalisée qui est automatiquement créée à l’activation d’un flux des processus d’entreprise pour stocker des instances de flux des processus d’entreprise adhère au modèle de sécurité standard comme n’importe quelle autre entité personnalisée dans Customer Engagement. Cela implique que les privilèges accordés sur ces entités définissent les privilèges d’exécution des utilisateurs pour les flux des processus d’entreprise.

L’entité de flux des processus d’entreprise personnalisé dispose de l’étendue de l’organisation. Les privilèges ordinaires de création, récupération, mise à jour et suppression sur cette entité définissent l’autorisation accordée à l’utilisateur en fonction de ses rôles attribués. Par défaut, lorsque l’entité personnalisée des flux des processus d’entreprise est créée, seuls les rôles de sécurité Administrateur système et Personnalisateur de système y ont accès, et vous devez explicitement accorder des autorisations à la nouvelle entité de flux des processus d’entreprise (par exemple, Mon BPF personnalisé) pour d’autres rôles de sécurité selon les besoins.

Privilèges BPF.

Créer, récupérer, mettre à jour et supprimer des enregistrements d’entité de flux des processus d’entreprise (instances de processus)

L’entité personnalisée qui est automatiquement créée à l’activation de la définition d’un flux des processus d’entreprise stocke toutes les instances de processus pour la définition de flux des processus d’entreprise. L’entité personnalisée prend en charge la création et la gestion programmatiques standard des enregistrements (instances de processus) à l’aide de l’API web et du point de terminaison CRM 2011.

Important

Le basculement vers une autre instance de processus pour un enregistrement d’entité n’est pris en charge que par le biais de l’interface utilisateur (client) ou par programmation à l’aide des informations disponibles dans cette section. Vous ne pouvez plus utiliser le message SetProcess (SetProcess Action ou SetProcessRequest) pour basculer par programmation des processus (définissez un autre flux des processus d’entreprise comme instance de processus active) pour l’enregistrement d’entité cible.

Prenons l’exemple suivant, où nous avons un flux des processus d’entreprise entre entités, « My Custom BPF » (Mon flux des processus d’entreprise personnalisé), comportant 3 phases : S1 : Compte, S2 : Compte et S3 : Contact.

Exemple BPF.

Récupérer tous les enregistrements (instances) pour une entité de flux des processus d’entreprise

Si le nom de votre entité de flux des processus d’entreprise est « new_mycustombpf », utilisez la requête suivante pour récupérer tous les enregistrements (instances de processus) liés à cette entité :

GET [Organization URI]/api/data/v9.1/new_mycustombpfs HTTP/1.1 

À ce stade, vous pouvez ne pas obtenir d’instances dans votre réponse, car il n’y en a aucune. Exécutez cette demande après avoir créé une instance de votre définition du flux de processus d’entreprise, comme décrit plus loin dans cette rubrique.

Note

Pour savoir comment récupérer le nom de l’entité du flux de processus d’entreprise, consultez la section précédente, Entité du flux de processus d’entreprise.

Créer un enregistrement d’entité pour un flux de processus d’entreprise (instance de processus)

Créez par programme un enregistrement d’entité pour un flux de processus d’entreprise (instance de processus) si vous souhaitez passer à un autre flux de processus d’entreprise pour un enregistrement d’entité sans utiliser l’interface utilisateur.

(!REMARQUE) Lorsque vous créez un enregistrement dans l'interface Unified Interface et que vous ne souhaitez pas qu'un flux des processus d'entreprise soit associé à l'enregistrement, créez un script onload qui appelle setActiveProcess et transmettez un processID (GUID) vide. Exemple de code formcontext.data.process.setActiveProcess(’00000000-0000-0000-0000-000000000000’, (a)=>{​​alert("changed -- " + a)}​​)

Pour créer un enregistrement d’entité pour un flux de processus d’entreprise, vous devez spécifier les valeurs suivantes :

  • Associez l’enregistrement d’entité du flux de processus d’entreprise à un enregistrement d’entité principale en définissant la propriété de navigation à valeur unique à l’aide de l’annotation @odata.bind. Pour déterminer le nom de la propriété de navigation qui pointe vers l’enregistrement d’entité principale pour votre définition du flux de processus d’entreprise, utilisez le Document de $métadonnées CSDL.

  • Associez l’enregistrement d’entité du flux de processus d’entreprise à une étape valide spécifiée dans la définition du flux de processus d’entreprise en définissant la propriété de navigation à valeur unique à l’aide de l’annotation @odata.bind. Pour déterminer le nom de la propriété de navigation (généralement activestageid) qui pointe vers l’enregistrement de phase pour votre définition du flux de processus d’entreprise, utilisez le Document de $métadonnées CSDL.

    En outre, vous pouvez récupérer des informations sur toutes les phases de la définition d’un flux de processus d’entreprise à l’aide de la demande de l’API web ci-après en supposant que l’ID de votre définition du flux de processus d’entreprise est 2669927e-8ad6-4f95-8a9a-f1008af6956f :

    Demande

    GET [Organization URI]/api/data/v9.1/processstages?$select=stagename&$filter=processid/workflowid eq 2669927e-8ad6-4f95-8a9a-f1008af6956f HTTP/1.1
    

    Réponse

    {
        "@odata.context": "[Organization URI]/api/data/v9.1/$metadata#processstages(stagename)",
        "value": [
            {
                "@odata.etag": "W/\"858240\"",
                "stagename": "S1",
                "processstageid": "9a9185f5-b75b-4bbb-9c2b-a6626683b99b"
            },
            {
                "@odata.etag": "W/\"858239\"",
                "stagename": "S3",
                "processstageid": "a107e2fd-7543-4c1a-b6b4-b8060ecb1a1a"
            },
            {
                "@odata.etag": "W/\"858238\"",
                "stagename": "S2",
                "processstageid": "19a11fc0-3398-4214-8522-cb2a97f66e4b"
            }
        ]
    }
    

Ensuite, utilisez la demande suivante pour créer une instance de votre définition du flux de processus d’entreprise pour un enregistrement de compte (ID=a176be9e-9a68-e711-80e7-00155d41e206), avec la phase active définie comme première phase de l’instance de processus, S1 (ID=9a9185f5-b75b-4bbb-9c2b-a6626683b99b) :

Demande

POST [Organization URI]/api/data/v9.1/new_mycustombpfs HTTP/1.1 
Content-Type: application/json; charset=utf-8 
OData-MaxVersion: 4.0 
OData-Version: 4.0 
Accept: application/json 

{
    "bpf_accountid@odata.bind": "/accounts(a176be9e-9a68-e711-80e7-00155d41e206)",
    "activestageid@odata.bind": "/processstages(9a9185f5-b75b-4bbb-9c2b-a6626683b99b)"    
}

Réponse

HTTP/1.1 204 No Content
OData-Version: 4.0
OData-EntityId: [Organization URI]/api/data/v9.1/new_mycustombpfs(cc3f721b-026e-e811-80ff-00155d513100)

Notez que si vous souhaitez créer une instance de votre définition du flux de processus d’entreprise avec la phase active définie comme une phase autre que la première phase, vous devez également fournir traversedpath dans votre demande. Le chemin d’accès traversé est une chaîne séparée par des virgules dans laquelle figurent des identificateurs de phases représentant les phases consultées de l’instance du flux de processus d’entreprise. La demande suivante crée une instance pour un enregistrement de compte (ID=679b2464-71b5-e711-80f5-00155d513100) et l’étape active définie comme seconde étape, S2 (ID=19a11fc0-3398-4214-8522-cb2a97f66e4b).

POST [Organization URI]/api/data/v9.1/new_mycustombpfs HTTP/1.1 
Content-Type: application/json; charset=utf-8 
OData-MaxVersion: 4.0 
OData-Version: 4.0 
Accept: application/json 

{
    "bpf_accountid@odata.bind": "/accounts(679b2464-71b5-e711-80f5-00155d513100)",
    "activestageid@odata.bind": "/processstages(19a11fc0-3398-4214-8522-cb2a97f66e4b)",
    "traversedpath":"9a9185f5-b75b-4bbb-9c2b-a6626683b99b,19a11fc0-3398-4214-8522-cb2a97f66e4b"   
}

Mettre à jour un enregistrement d’entité pour un flux de processus d’entreprise (instance de processus)

Vous pouvez mettre à jour une instance de processus pour passer à la phase suivante ou précédente, abandonner une instance de processus, réactiver une instance de processus ou terminer une instance de processus.

Navigation dans les phases

Pour accéder à une autre phase, vous devez mettre à jour un enregistrement d’instance de processus pour modifier son ID de phase active et mettre à jour en conséquence le chemin d’accès traversé. Notez que vous devez uniquement passer à la phase suivante ou précédente lors de la mise à jour d’une instance du flux de processus d’entreprise.

Pour naviguer dans les phases, vous aurez besoin de l’ID de l’instance du flux de processus d’entreprise que vous souhaitez mettre à jour. Pour récupérer toutes les instances de votre flux de processus d’entreprise, consultez la section Récupérer tous les enregistrements (instances) pour une entité du flux de processus d’entreprise plus haut.

En supposant que l’ID de l’instance de processus que vous souhaitez mettre à jour est dc2ab599-306d-e811-80ff-00155d513100, utilisez la demande suivante pour mettre à jour la phase active de S1 à S2 :

PATCH [Organization URI]/api/data/v9.1/new_mycustombpfs(dc2ab599-306d-e811-80ff-00155d513100) HTTP/1.1
Content-Type: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0

{
    "activestageid@odata.bind": "/processstages(19a11fc0-3398-4214-8522-cb2a97f66e4b)",
    "traversedpath": "9a9185f5-b75b-4bbb-9c2b-a6626683b99b,19a11fc0-3398-4214-8522-cb2a97f66e4b"
}

Modifier l’état d’une instance de processus : Abandonner, réactiver ou terminer

Une instance de processus peut avoir un des états suivants : Actif, Terminé ou Abandonné. L’état est déterminé par les attributs suivants sur l’enregistrement de l’instance de processus :

  • statecode : affiche le statut de l’instance de processus.

    Value Étiquette
    0 Actives
    1 Inactives
  • statuscode : affiche des informations sur le statut de l’instance de processus.

    Value Étiquette
    1 Actives
    2 Terminé(e)
    3 Abandonné

Par conséquent, pour Abandonner une instance de processus, utilisez la demande suivante pour définir les valeurs statecode et statuscode de manière appropriée :

PATCH [Organization URI]/api/data/v9.1/new_mycustombpfs(dc2ab599-306d-e811-80ff-00155d513100) HTTP/1.1   
Content-Type: application/json   
OData-MaxVersion: 4.0   
OData-Version: 4.0 
  
{ 
    "statecode" : "1", 
    "statuscode": "3" 
}

Note

Vous pouvez abandonner une instance de processus à n’importe quelle phase.

De même, pour réactiver une instance de processus, remplacez les valeurs statecode et statuscode dans le code ci-dessus par 0 et 1 respectivement.

Enfin, pour définir le statut d’une instance de processus comme Terminé, ce qui est uniquement possible à la dernière phase d’une instance de processus, remplacez les valeurs statecode et statuscode dans le code ci-dessus par 0 et 2 respectivement.

Navigation entre entités

Pour la navigation entre entités dans cet exemple, vous devez définir la phase active de l’instance de processus sur la dernière phase, S3 (ID=a107e2fd-7543-4c1a-b6b4-b8060ecb1a1a), mettre à jour le chemin d’accès traversé en conséquence et définir un enregistrement de contact en tant qu’enregistrement d’entité principale conformément à la définition du flux de processus d’entreprise.

PATCH [Organization URI]/api/data/v9.1/new_mycustombpfs(dc2ab599-306d-e811-80ff-00155d513100) HTTP/1.1   
Content-Type: application/json   
OData-MaxVersion: 4.0   
OData-Version: 4.0 
  
{
    "activestageid@odata.bind": "/processstages(a107e2fd-7543-4c1a-b6b4-b8060ecb1a1a)",
    "traversedpath":"9a9185f5-b75b-4bbb-9c2b-a6626683b99b,19a11fc0-3398-4214-8522-cb2a97f66e4b,a107e2fd-7543-4c1a-b6b4-b8060ecb1a1a",
    "bpf_contactid@odata.bind": "/contacts(0e3f10b0-da33-e811-80fc-00155d513100)"
}

Supprimer un enregistrement d’entité pour un flux de processus d’entreprise (instance de processus)

Utilisez la demande de l’API web suivante :

Demande

DELETE [Organization URI]/api/data/v9.1/new_mycustombpfs(dc2ab599-306d-e811-80ff-00155d513100) HTTP/1.1

Réponse

Si l’enregistrement existe, vous recevrez une réponse normale avec le statut 204 pour indiquer que la suppression a réussi. Si l’entité n’est pas détectée, vous recevrez une réponse avec le statut 404.

Utiliser les messages RetrieveProcessInstances et RetrieveActivePath

Utilisez le message RetrieveProcessInstances (fonction RetrieveActivePath ou RetrieveProcessInstancesRequest) pour récupérer toutes les instances de flux de processus d’entreprise d’un enregistrement d’entité dans toutes les définitions de processus d’entreprise. Les instances de flux de processus d’entreprise retournées pour une entité sont classées selon l’attribut modifiedon de l’instance. Par exemple, l’instance de flux de processus d’entreprise modifiée en dernier sera le premier enregistrement dans la collection retournée. L’instance du flux de processus d’entreprise modifiée en dernier est l’instance active dans l’interface utilisateur pour un enregistrement d’entité.

Chaque enregistrement de l’instance du flux de processus d’entreprise retourné pour un enregistrement d’entité comme résultat de l’utilisation du message RetrieveProcessInstances stocke l’ID de la phase active dans l’attribut processstageid qui peut être utilisé pour rechercher la phase active et passer à la phase précédente ou suivante. Pour ce faire, vous devez d’abord rechercher le chemin d’accès actif d’une instance de flux de processus d’entreprise et les phases disponibles dans l’instance de flux de processus à l’aide du message RetrieveActivePath message (fonction RetrieveActivePath ou RetrieveActivePathRequest).

Une fois que vous disposez des informations sur la phase active et le chemin d’accès actif pour une instance de flux de processus d’entreprise, vous pouvez les utiliser pour passer à une phase précédente ou suivante dans le chemin d’accès actif. La navigation vers l’avant dans les phases doit être effectuée dans l’ordre, c’est-à-dire vous devez uniquement passer à la phase suivante dans le chemin d’accès actif.

Pour obtenir un exemple complet de l’utilisation de ces deux méthodes et de la navigation dans les phases à l’aide du Service d’organisation, consultez Exemple : Utiliser les flux de processus d’entreprise.

Appliquer le flux des processus d’entreprise lors de la création d’un enregistrement d’entité

Cette section fournit des informations sur le comportement par défaut pour l’application de flux des processus d’entreprise automatique aux nouveaux enregistrements d’entités créés dans Customer Engagement, et comment le remplacer pour appliquer un flux des processus d’entreprise de votre choix au nouveaux enregistrements d’entités.

Par défaut, pour une entité qui a plusieurs flux des processus d’entreprise définis, le système applique un flux des processus d’entreprise au nouvel enregistrement d’entité à l’aide de la logique à plusieurs étapes suivante :

  1. Identifiez tous les flux des processus d’entreprise applicables aux nouveaux enregistrements d’entité basés sur l’attribut Workflow.PrimaryEntity des enregistrements de définition de flux des processus d’entreprise.
  2. Identifiez les définitions de flux des processus d’entreprise auxquelles l’utilisateur actuel a accès. Pour plus d’informations sur la façon dont l’accès à un flux des processus d’entreprise est déterminé et géré, voir Gérer la sécurité des flux des processus d’entreprise précédemment dans cette rubrique.
  3. Toutes les définitions de flux des processus d’entreprise dans le système sont soumises à ordre global par entité. L’ordre du flux des processus d’entreprise est stocké dans l’attribut Workflow.ProcessOrder. Les définitions des flux des processus d’entreprise d’une entité sont triées en fonction de ce ordre, et celle présentant la valeur d’ordre la plus petite est prélevée.
  4. Enfin, si l’enregistrement d’entité est créé à partir d’une application d’entreprise (module d’application), un niveau de filtrage supplémentaire est appliqué pour choisir le flux des processus d’entreprise à appliquer automatiquement au nouvel enregistrement d’entité. En travaillant dans une application, les utilisateurs peuvent accéder uniquement aux entités, flux des processus d’entreprise, vues et formulaires appropriés auxquels ils ont accès grâce aux rôles de sécurité attribués à l’application d’entreprise.
    • Si l’application d’entreprise ne contient aucun flux des processus d’entreprise, le flux des processus d’entreprise est appliqué comme décrit jusqu’à l’étape 3.
    • Si l’application d’entreprise comporte un ou plusieurs flux des processus d’entreprise, seuls les flux des processus d’entreprise présents dans l’application s’appliquent. Dans ce cas, lorsque l’utilisateur travaille dans le contexte d’une application d’entreprise, la liste de flux des processus d’entreprise de l’étape 3 est filtrée davantage pour afficher ceux font partie de l’application d’entreprise dans le module d’application, et ceux-ci sont triés en fonction de l’ordre de traitement.
    • Si aucun flux des processus d’entreprise n’est disponible dans une application d’entreprise pour l’entité ou auquel l’utilisateur a accès, aucun flux des processus d’entreprise n’est appliqué au nouvel enregistrement d’entité.

Vous pouvez remplacer la logique par défaut des flux de processus d’entreprise appliquée automatiquement aux nouveaux enregistrements d’entités. Pour cela, sélectionnez l’attribut ProcessId de l’entité sur l’une des valeurs suivantes lors de la création d’un enregistrement d’entité :

  • Définissez sur Guid.Empty pour ignorer la définition d’un flux des processus d’entreprise pour de nouveaux enregistrements d’entités. Vous voudrez peut-être procéder ainsi si vous créez des enregistrements d’entité en bloc, mais que vous ne souhaitez pas que le flux des processus d’entreprise soit appliqués à ceux-ci.
  • Définissez une entité de flux des processus d’entreprise spécifique (comme référence de l’entité). Dans ce cas, le système appliquera le flux des processus d’entreprise spécifié au lieu de la logique par défaut.

Si vous ne définissez pas une valeur de l’attribut ProcessId lors de la création d’un enregistrement d’entité, le système appliquera la logique par défaut comme décrit précédemment.

Note

Le remplacement de la logique par défaut des flux de processus d’entreprise appliquée automatiquement aux nouveaux enregistrements d’entités est pris en charge uniquement par programme. Vous ne pouvez pas le faire avec l’interface utilisateur.

Les attributs hérités liés aux processus (ProcessId, StageId et TraversedPath) sur les entités activées pour les flux de processus d’entreprise, ainsi que l’API client setProcess sont déjà obsolètes. La manipulation de ces attributs hérités liés aux processus pour les enregistrements d’entité cibles ou l’utilisation de l’API client setProcess hérité ne garantit pas la cohérence de l’état du flux de processus d’entreprise, et ne sont pas des scénarios pris en charge. La méthode recommandée consiste à utiliser les attributs de l’entité du flux de processus d’entreprise comme décrit précédemment dans la section Créer, récupérer, mettre à jour et supprimer des enregistrements d’entité pour un flux de processus d’entreprise (instances de processus)

La seule exception est la modification par programme de l’attribut ProcessId lors de la création d’un enregistrement d’entité pour remplacer l’application par défaut du flux de processus d’entreprise par le nouvel enregistrement, comme décrit dans la section précédente : Appliquer le flux de processus d’entreprise lors de la création d’un enregistrement d’entité.

Prise en charge de la programmabilité côté client pour les flux des processus d’entreprise

Avec Dynamics 365, vous disposez d’un objet côté client vous permettant d’interagir avec les flux de processus d’entreprise dans vos scripts de formulaire. Les flux des processus d’entreprise déclenchent des événements côté client à chaque fois qu’un processus est appliqué à un enregistrement, que la phase soit modifiée ou que son statut passe à Active, Finished ou Aborted. Pour plus d’informations : formContext.data.process (référence de l’API client)

Nombre maximal de processus, de phases et d’étapes

Par entité, la valeur par défaut pour le nombre maximal de flux de processus d’entreprise activés est égale à 10. Vous pouvez spécifier une autre valeur en utilisant l’attribut Organization.MaximumActiveBusinessProcessFlowsAllowedPerEntity. Toutefois, si la valeur est supérieure à 10, vous pouvez constater une diminution de la performance de votre système lorsque vous basculez entre les processus ou lorsque vous ouvrez un enregistrement comportant un flux de processus d’entreprise attribué. Cela peut être particulièrement visible si les processus s’étendent à plusieurs entités.

Les paramètres suivants ne sont pas personnalisables :

  • Le nombre maximal de phases par entité dans le processus est égal à 30.

  • Le nombre maximal d’étapes dans chaque phase est égal à 30.

  • Le nombre maximal d’entités pouvant prendre part au flux de processus est égal à 5.

Voir aussi