Partager via


Recherchez les valeurs de propriété de produit

Les noms de produits peuvent être localisés pour différentes régions. Avec Dynamics 365 Sales, vous pouvez fournir des étiquettes localisées pour certains attributs de produit afin que les utilisateurs puissent voir les noms localisés qui correspondent à leurs préférences linguistiques. Cet article traite de la façon dont les développeurs peuvent interagir avec cette fonctionnalité. Pour obtenir des instructions détaillées sur l’utilisation de cette fonctionnalité dans l’application, voir la documentation des versions précédentes sur Traduction des noms et propriétés de produits dans plusieurs langues.

Attributs qui prennent en charge les valeurs de propriété localisées

La liste suivante contient les attributs qui prennent en charge les valeurs localisables :

  • Product.Name

  • DynamicProperty.Name

  • DynamicPropertyOptionSetItem.DynamicPropertyOptionName

  • DynamicPropertyOptionSetItem.DynamicPropertyOptionDescription

    Les classes StringAttributeMetadata et MemoAttributeMetadata contiennent une propriété booléenne IsLocalizable en lecture seule qui est false pour tous les attributs sauf les quatre du tableau précédent.

Extraire les valeurs de propriété localisées

Vous n’avez rien à faire différemment pour récupérer la valeur localisée qui correspond à la préférence de l’utilisateur. Si une valeur localisée existe pour la langue préféré de l’utilisateur, elle est retournée. Si une valeur localisée n’existe pas, la valeur de la langue de base de l’organisation est retournée. Ce comportement maintient la compatibilité descendante ; tout code qui utilise actuellement l’attribut de nom de produit continuera à fonctionner avec les valeurs localisées. Si la localisation des valeurs de propriété est incomplète, les utilisateurs peuvent voir des valeurs de langue mixtes.

Pour récupérer les étiquettes localisées d’un attribut localisable spécifique, utilisez le message RetrieveLocLabelsRequest.

Requête utilisant des valeurs localisées

Lorsque vous interrogez des tables dont les conditions utilisent des valeurs pour des attributs localisés, les conditions sont évaluées en premier lieu dans la langue de votre choix. S’il n’y a pas de valeurs localisées pour l’attribut, la requête revient à la langue de base. Les résultats de la requête pour les valeurs d’attribut localisées sont renvoyés dans votre langue préférée, s’ils existent. Sinon, les résultats sont renvoyés dans votre langue de base.

Créer ou mettre à jour les enregistrements avec attributs localisables

Les enregistrements avec des attributs localisés sont en lecture seule à moins que votre langue par défaut ne soit la langue de base de l’organisation. Vous pouvez uniquement créer des enregistrements avec des valeurs de propriété localisées à l’aide de la langue de base de l’organisation. Si vous mettez à jour la valeur de la langue de base pour un attribut localisable, toutes les valeurs localisées pour cet attribut ne sont pas modifiées, sauf si vous effacez la valeur de la langue de base. Si vous définissez la valeur de la langue de base sur null ou une chaîne vide, toutes les valeurs localisées pour cette propriété sont également effacées.

Pour ajouter ou mettre à jour les étiquettes localisées d’un attribut localisé spécifique, utilisez le message SetLocLabelsRequest ou importez les valeurs traduites. Toutes les modifications apportées aux attributs localisables apparaissent dans l’historique d’audit de l’enregistrement. L’identificateur du code de langue (LCID) pour la valeur localisée apparaît dans l’historique d’audit.

Traduire les attributs localisables

Le processus de localisation des attributs localisables par programmation est similaire au processus utilisé pour traduire les étiquettes de solution localisées. [!INCLUDE[proc_more_information]Traduire le texte de table et de colonne personnalisé

Contrairement à la traduction des valeurs des métadonnées, il n’est pas nécessaire que l’utilisateur exportant et important des valeurs d’attributs localisées dispose du rôle de sécurité d’administrateur système. Le rôle de sécurité directeur commercial a les privilèges nécessaires pour traduire les attributs localisables. La personne traduisant les valeurs de propriété localisées peut uniquement exporter ces enregistrements auxquels elle a accès pour afficher et mettre à jour ces enregistrements à jour pour lesquels elle a les privilèges de mise à jour.

Pour traduire les attributs localisables par programmation, vous devez d’abord exporter les définitions d’étiquette localisées actives à l’aide de ExportFieldTranslationRequest. L’attribut ExportFieldTranslationResponse. La propriété ExportTranslationFile contient un byte[] pour un fichier crmFieldTranslations.zip contenant un fichier [Content_types].xml et un fichier crmFieldTranslations.xml pouvant être ouvert à l’aide d’Office Excel. La feuille de calcul Étiquettes localisées contient une colonne avec une valeur LCID pour chaque langue mise en service de l’organisation. La colonne avec les valeurs de la langue de base est renseignée et les colonnes pour chaque langue approvisionnée contiennent toutes les valeurs précédemment localisées. Ce fichier peut être modifié par un traducteur pour fournir les étiquettes localisées des propriétés localisables.

Pourboire

Si vous souhaitez effectuer une mise à jour en bloc des seuls noms de la langue de base, vous pouvez également modifier les valeurs de la langue de base.

Après la modification du fichier crmFieldTranslations.xml pour fournir les étiquettes localisées, compressez-le avec le fichier [Content_types].xml et définissez ce fichier en tant que propriété TranslationFile de la ImportFieldTranslationRequest.

Modifier les valeurs incluses lors de l’exportation des valeurs de propriété traduites

Les valeurs incluses dans les traductions exportées sont contrôlées par des vues personnalisables associées aux tables prenant en charge les valeurs de propriété localisables. Seules les tables du produit affichent cette vue dans l’interface utilisateur de personnalisation. Ces vues sont intitulées Exporter les traductions de champ. Le tableau suivant présente le SavedQueryId de ces vues.

Table SavedQueryId FetchXml par défaut
produit 9cfe2a9f-13c4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical"
distinct="false">
<entity name="produit«>
<attribute name="name » />
</entité>
</fetch>
dynamicproperty 4833cf48-1ac4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical">
<entity name="dynamicproperty »>
<attribute name="name » />
</entité>
</fetch>
dynamicpropertyoptionsetitem d64cce30-1fc4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical">
<entity name="dynamicpropertyoptionsetitem">
<attribute name="dynamicpropertyoptionname" />
<attribute name="dynamicpropertyoptiondescription" />
</entité>
</fetch>

Vous pouvez modifier la propriété FetchXml de ces vues pour filtrer toutes les valeurs de propriété d’attribut que vous ne souhaitez pas inclure. Par exemple, vous voudrez peut-être exclure les enregistrements archivés ou inclure uniquement les enregistrements mis à jour après une certaine date.

Surveiller la progression des tâches d’importation de traduction de champ

Les table de tâches système contiennent les vues suivantes pour surveiller la progression des tâches d’importation de traduction de champ :

  • Tâches d’importation de traduction de tous les champs

  • Tâches d’importation de traduction de champ terminées

  • Tâches d’importation de traduction de champ en cours

  • Tâches d’importation de traduction de mon champ

  • Tâches d’importation de traduction de champ non commencées

    Les conditions suivantes provoquent des erreurs lors de l’importation de tâches de traduction :

Message Description
Avertissement : vous n’avez pas les autorisations en écriture sur une ou plusieurs des lignes spécifiées dans le fichier d’importation pour le classeur {0}, ligne {1}. La personne exécutant l’importation peut ne pas disposer des autorisations d’écriture sur une ligne incluse dans le fichier importé.

Le traitement des autres lignes se poursuit.
Avertissement : les chaînes de traduction de la langue de base présentes dans la feuille de calcul {0}, ligne {1}, colonne {2}, ont la valeur null. Une valeur de langue de base ne peut pas être effacée en important des traductions.

Le traitement des autres lignes se poursuit.
Avertissement : le nombre de cellules de la ligne {0} ne correspond pas au nombre de cellules de la ligne 1 de la feuille de calcul {1}. Toutes les lignes de la feuille de calcul doivent avoir le même nombre de cellules.

Le traitement des autres lignes se poursuit.
Avertissement : un nom de table non valide a été trouvé dans la feuille de calcul {0}, ligne {1}, colonne A. Il n’existe aucune table valide dans le système utilisant un nom dans la feuille de calcul.

Le traitement des autres lignes se poursuit.
Avertissement : un nom de colonne d’objet non valide a été trouvé dans la feuille de calcul {0}, ligne {1}, colonne C. Il n’existe aucun attribut localisable valide dans le système utilisant un nom dans la feuille de calcul.

Le traitement des autres lignes se poursuit.
Avertissement : un ID d’objet non valide a été trouvé dans la feuille de calcul {0}, ligne {1}, colonne B. Il n’existe aucun enregistrement correspondant dans l’organisation pour l’élément de cette ligne.

Le traitement des autres lignes se poursuit.
Erreur : aucune ligne n’a été détectée dans la feuille de calcul {0}. La feuille de calcul à importer est vide.
Erreur : l’ID d’organisation présent dans la feuille de calcul {0} ne correspond pas à l’ID d’organisation actuel. Vous pouvez uniquement des traductions dans la même organisation d’où elles ont été exportées.
Avertissement : un code de langue non valide a été trouvé dans la feuille de calcul {0}, colonne {1}. | Détails : {2} Le LCID de la colonne n’est pas un entier valide ou le module linguistique de la langue n’est pas installé.

Les traductions de la colonne sont ignorées.

Les valeurs d’ID de paramètres régionaux valides sont disponibles sur la page Tableau des ID de paramètres régionaux (LCID).
Erreur : un code de langue dupliqué a été trouvé dans la feuille de calcul {0}, colonne {1}. Chaque colonne doit avoir un code de langue différent.
Erreur : fichier de traduction non valide. Le fichier compressé doit contenir les fichiers suivants à sa racine : CrmFieldTranslations.xml, [Content_Types].xml Le fichier compressé (zip) à importer doit contenir uniquement les fichiers décrits dans l’erreur.
Erreur : le fichier de traductions n’est pas valide ou n’est pas conforme au schéma requis. Le fichier CrmFieldTranslations.xml inclus dans le fichier compressé (zip) doit être un fichier qui a été exporté depuis le système et uniquement modifié pour fournir des valeurs localisées. D’autres modifications peuvent rendre le fichier non valide.

Désinstaller une langue

Les étiquettes localisées fournies pour une langue désinstallée demeurent dans le système afin qu’elles soient disponibles si la langue est réinstallée.

Tables du catalogue de produits
Traduire le texte de table et de colonne personnaliséTraduction des noms et propriétés de produits dans plusieurs langues