Exemple : Insérer ou mettre à jour un enregistrement à l'aide de Upsert

 

Date de publication : novembre 2016

S’applique à : Dynamics CRM 2015

Cet exemple de code montre comment insérer ou mettre à jour des enregistrements à l'aide du message Upsert. Pour plus d'informations sur la fonctionnalité que cet exemple illustre, voir Utilisation de Upsert pour insérer ou mettre à jour un enregistrement.

Cet exemple est pour Mise à jour 1 de Microsoft Dynamics CRM Online 2015. Il est possible de la télécharger à partir de Insert or update a record using Upsert (Insérer ou mettre à jour un enregistrement à l'aide de Upsert).

Conditions préalables

  1. Accédez à une organisation Mise à jour 1 de Microsoft Dynamics CRM Online 2015.

  2. Téléchargez le projet Visual Studio UpsertSample.

  3. Ouvrez le projet Visual Studio UpsertSample et installez le package NuGet Microsoft.CrmSdk.CoreAssemblies version 7.1.0-preview. Voir Installer les packages NuGet pour plus d'instructions.

  4. Après avoir installé les packages NuGet, voir Exécuter l'exemple pour obtenir des instructions sur le mode d'exécution de l'exemple et les prévisions possibles.

Contenu de la rubrique

En quoi consiste cet exemple :

Installer les packages NuGet

Exécuter l'exemple

En quoi consiste cet exemple :

  1. La méthode Run de la classe ProductUpsertSample appelle la méthode ImportUpsertSampleSolution qui détecte d'abord si la solution gérée UpsertSample est déjà installée. Si ce n'est pas le cas, le fichier UpsertSample_1_0_0_0_managed.zip est importé pour installer cette solution gérée.

    Cette solution gérée contient une entité sample_product personnalisée qui est utilisée par cet exemple. Cette entité a une clé secondaire sample_productcode qui crée une contrainte unique sur les valeurs stockées dans cet attribut.

  2. La méthode WaitForEntityAndKeysToBeActive est nécessaire car les clés secondaires requises pour cet exemple peuvent ne pas être prêtes immédiatement après l'installation de la solution UpsertSample. Cette méthode interroge les métadonnées de l'entité sample_product pour retarder l'exécution du reste de l'exemple jusqu'à ce que les clés secondaires soient prêtes.

  3. La première fois que la méthode ProcessUpsert est appelée, elle traite les données du fichier newsampleproduct.xml pour représenter de nouveaux produits.UpsertRequest est passé à la méthode Execute pour créer 13 enregistrements.

    La propriété UpsertResponse.RecordCreated retourne la valeur true pour indiquer que les enregistrements ont été créés.

    Avant l'exécution de la méthode ProcessUpsert, le programme vous demandera si vous souhaitez afficher les exemples d'enregistrements d'entités de produits. Si vous répondez « y » (oui), le programme essaiera d'ouvrir Internet Explorer sur une vue affichant les enregistrements récemment créés.

  4. La deuxième fois que la méthode ProcessUpsert est appelée, elle traite les données du fichier updatedsampleproduct.xml pour représenter les mises à jour des produits créés précédemment. Le message Upsert permet de mettre à jour 6 enregistrements. La propriété UpsertResponse.RecordCreated retourne la valeur true pour indiquer que les enregistrements ont été mis à jour.

    Une fois encore, la méthode ProcessUpsert demande si vous souhaitez afficher les enregistrements dans le navigateur. Si la vue est déjà ouverte, vous ne pourrez qu'actualiser la vue pour observer les modifications.

  5. Enfin, DeleteUpsertSampleSolution vous invitera à supprimer la solution gérée Upsert Sample (Exemple Upsert).

    Si vous choisissez « y » (oui), la solution gérée est supprimée incluant l'entité sample_product et toutes les données contenues dans cette entité. Votre organisation sera totalement vide.

    Si vous choisissez « n » (non), vous pourrez consulter les détails de la solution notamment les données créées par l'exemple. Cependant, vous devrez supprimer la solution gérée manuellement pour rétablir l'état d'origine de votre organisation.

Installer les packages NuGet

Suivez les étapes suivantes pour installer les assemblys requis par exemple :

  1. Téléchargez cet exemple et extrayez les fichiers.

  2. Accédez au dossier C# et ouvrez le fichier UpsertSample.sln à l'aide de Visual Studio.

  3. Dans Visual Studio, cliquez avec le bouton droit sur le projet UpsertSample et choisissez Gérer les packages NuGet.

  4. Pour la version de prévisualisation, veillez à choisir Inclure la version préliminaire au lieu de Stable uniquement dans les critères de recherche. Ensuite recherchez « Microsoft Dynamics CRM 2015 SDK core assemblies ». Veillez à sélectionner la version 7.1.0-preview.

  5. Cliquez sur Installer. Vous devrez accepter les termes du contrat de licence pour terminer l'installation de ce package.

Exécuter l'exemple

  1. Dans Visual Studio, avec la solution ouverte et les packages NuGet nécessaires installés, appuyez sur F5.

  2. Si vous n'avez pas encore exécuté l'un des exemples de code gérés Microsoft Dynamics CRM, vous devez entrer les informations permettant d'exécuter le code, sinon entrez le numéro de l'un des serveurs CRM que vous avez déjà configurés.

    Invite

    Description

    Entrer un nom de serveur et de port CRM [crm.dynamics.com]

    Tapez le nom de votre serveur Microsoft Dynamics CRM. La valeur par défaut est Microsoft Dynamics CRM Online (crm.dynamics.com) en Amérique du Nord.

    Exemple :
    crm5.dynamics.com

    Est-ce que cette organisation est mise en service dans les services en ligne de Microsoft (y/n) [n] ?

    Tapez y s'il s'agit d'une organisation mise en service dans les services en ligne de Microsoft. Sinon, tapez n.

    Entrez le domaine\nomutilisateur.

    Tapez votre compte Microsoft.

    Entrez le mot de passe.

    Tapez votre mot de passe. Dans la fenêtre, les caractères s’afficheront sous la forme de « * ». Le mot de passe est enregistré de façon sécurisée dans le gestionnaire d’informations d’identification Microsoft pour être réutilisé ultérieurement.

    Spécifiez un numéro d'organisation (1-n) [1].

    Dans la liste des organisations auxquelles vous appartenez, tapez le numéro correspondant. La valeur par défaut est 1, indiquant la première organisation de la liste.

  3. L'exemple effectuera les opérations décrites dans En quoi consiste cet exemple : et pourra vous demander des options supplémentaires.

  4. À la fin de l'exemple, appuyez sur Entrée pour fermer la fenêtre de la console.

Voir aussi

Utilisation de Upsert pour insérer ou mettre à jour un enregistrement

© 2017 Microsoft. Tous droits réservés. Copyright