Compartir a través de


Localizar los valores de propiedad del producto

Los nombres de productos se pueden localizar para distintas regiones. Con Dynamics 365 Sales puede proporcionar etiquetas localizadas para algunos atributos del producto para que la gente vea los nombres localizados que coinciden con sus preferencias de idioma. Este tema trata de cómo los desarrolladores pueden interactuar con esta característica. Para instrucciones paso a paso para usar esta característica en la aplicación, vea la documentación de versiones anteriores sobre Traducir los nombres y las propiedades del producto a varios idiomas.

Atributos que admiten valores de propiedad localizados

La siguiente lista contiene los atributos que admiten valores localizables:

  • Product.Name

  • DynamicProperty.Name

  • DynamicPropertyOptionSetItem.DynamicPropertyOptionName

  • DynamicPropertyOptionSetItem.DynamicPropertyOptionDescription

    Las clases StringAttributeMetadata y MemoAttributeMetadata tienen una propiedad booleana IsLocalizable de solo lectura que es false para todos los atributos excepto los cuatro en la tabla precedente.

Recuperar valores de propiedad localizados

No es necesario que realice nada de forma distinta para recuperar el valor localizado que coincida con la preferencia de idioma del usuario. Si existe un valor localizado para el idioma preferido del usuario, se devolverá. Si no existe un valor localizado, se devolverá el valor del idioma base de la organización. Este comportamiento mantiene la compatibilidad con versiones anteriores; el código que tenga actualmente utilizando el atributo de nombre de producto seguirá funcionando con los valores. Si la localización de los valores de propiedad es incompleta, los usuarios pueden ver valores de idioma mezclados.

Para recuperar todas las etiquetas localizadas de un atributo localizable específico, use el mensaje de RetrieveLocLabelsRequest.

Consulta con valores localizados

Cuando consulta tablas con condiciones utilizando valores para atributos localizados, las condiciones se evaluarán utilizando primero su idioma y revertirán al idioma base si no hay ningún valor localizado para ese atributo. Los resultados de la consulta para los valores de atributo localizados serán los de su idioma preferido si existen. De lo contrario, los resultados usarán los valores del idioma base.

Cree o actualice registros con atributos localizables

Los registros con atributos localizados son de solo lectura a menos que su idioma preferido sea el idioma base de la organización. Puede crear solo registros con valores de propiedad localizados utilizando el idioma base de la organización. Si actualiza el valor del idioma base para un atributo localizable, los valores localizados para ese atributo no cambian a menos que borre el valor del idioma base. Si establece el valor del idioma base como nulo o una cadena vacía, todos los valores localizados para esa propiedad también se borrarán.

Para agregar o actualizar etiquetas localizadas para cualquier atributo localizado específico, use el mensaje de SetLocLabelsRequest o importe valores traducidos. Cualquier cambio en los atributos localizables aparecerá en el historial de auditoría para el registro. El identificador del código de idioma (LCID) para el valor localizado aparecerá en el historial de auditoría.

Traducir atributos localizables

El proceso de localizar atributos localizables mediante programación es similar al proceso usado para traducir etiquetas de soluciones localizadas. [!INCLUDE[proc_more_information]Traducir texto de tabla personalizada y columna de texto

A diferencia de la traducción de valores de metadatos, el usuario que exporta e importa valores de atributos localizados no tiene por qué tener el rol de seguridad de administrador del sistema. El rol de seguridad de jefe de ventas tiene los privilegios necesarios para traducir atributos localizables. La persona que traduce valores de propiedad localizados sólo puede exportar los registros a los que tienen acceso de visualización y actualizar los registros para los que tiene privilegios de actualización.

Para traducir atributos localizables mediante programación primero debe exportar las definiciones de etiquetas localizadas actuales usando ExportFieldTranslationRequest. El ExportFieldTranslationResponse. La propiedad ExportTranslationFile contiene un byte[] para un archivo crmFieldTranslations.zip comprimido que contiene un archivo [Content_types].xml y un archivo crmFieldTranslations.xml que se puede abrir con Office Excel. La hoja de cálculo Etiquetas localizadas contiene una columna con un valor de LCID para cada idioma aprovisionado para la organización. La columna con los valores del idioma base se rellenará y las columnas para cada idioma aprovisionado contendrán cualquier valor anteriormente localizado. Este archivo puede editarlo un traductor para proporcionar etiquetas localizadas para las propiedades localizables.

Propina

Si desea realizar una actualización en masa solo de los nombres de idioma base, también puede editar los valores de idioma base.

Después de editar el archivo crmFieldTranslations.xml para proporcionar etiquetas localizadas, comprímalo junto con el archivo [Content_types].xml y establezca ese archivo como la propiedad TranslationFile de ImportFieldTranslationRequest.

Modificar los valores incluidos al exportar valores de propiedad traducidos

Los valores que se incluyen en las traducciones exportadas se controlan mediante vistas personalizables asociadas con las tablas que admiten valores de propiedad localizables. Solo las tablas de producto muestra esta vista en la interfaz de usuario de personalización. Estas vistas se denominan Exportar traducciones de campos. La siguiente tabla proporciona el SavedQueryId de estas vistas.

Table SavedQueryId FetchXml predeterminado
product 9cfe2a9f-13c4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical"
distinct="false">
<entity name="product">
<attribute name="name" />
</entity>
</fetch>
dynamicproperty 4833cf48-1ac4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="logical">
<entity name="dynamicproperty">
<attribute name="name" />
</entity>
</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" />
</entity>
</fetch>

Puede editar la propiedad de FetchXml de estas vistas para filtrar valores de cualquier propiedad de los atributos que no desea incluir. Por ejemplo, es posible que desee excluir registros archivados o incluir sólo los actualizados después de una fecha determinada.

Controlar el progreso de los trabajos de importación de traducción de campos

Las tablas de trabajo del sistema contiene las vistas siguientes para supervisar el progreso de los trabajos de importación de traducción de campos:

  • Todos los trabajos de importación de traducción de campos

  • Trabajos de importación de traducción de campos completados

  • Trabajos de importación de traducción de campos en curso

  • Mis trabajos de importación de traducción de campos

  • Trabajos de importación de traducción de campos no iniciados

    Las siguientes condiciones producirán errores al importar trabajos de traducción:

Mensaje Descripción
Advertencia: No tiene permisos de escritura a una o más filas especificadas en el archivo de importación para la hoja de cálculo {0}, línea {1}. La persona que ejecuta la importación puede no tener permisos de escritura a una fila incluida en el archivo importado.

El procesamiento de otras filas continuará.
Advertencia: La cadena de traducción del idioma base presente en la hoja de cálculo {0}, fila {1}, columna {2} es nula. Un valor del idioma base no se puede borrar importando traducciones.

El procesamiento de otras filas continuará
Advertencia: El número de celdas en la fila {0} no coincide con el número de celdas en la fila 1 de la hoja de cálculo {1}. Todas las filas de la hoja de cálculo deben tener el mismo número de celdas.

El procesamiento de otras filas continuará.
Advertencia: Un nombre de tabla no válido se encontró en la hoja de cálculo {0}, línea {1}, columna A. No hay una tabla válida en el sistema utilizando un nombre en la hoja de cálculo.

El procesamiento de otras filas continuará.
Advertencia: Un nombre de columna de objeto no válido se encontró en la hoja de cálculo {0}, línea {1}, columna C. No hay un atributo localizable válido en el sistema utilizando un nombre en la hoja de cálculo.

El procesamiento de otras filas continuará.
Advertencia: Un identificador de objeto no válido se encontró en la hoja de cálculo {0}, línea {1}, columna B. No hay ningún registro coincidente en la organización para el elemento de esta fila.

El procesamiento de otras filas continuará.
Error: No se encontró ninguna fila en la hoja de cálculo {0}. La hoja de cálculo a importar está vacía.
Error: El Id. de organización presente en la hoja de cálculo {0} no coincide con el identificador de la organización actual. Solo se pueden importar traducciones a la misma organización desde la que se exportaron.
Advertencia: Un código de idioma no válido se encontró en la hoja de cálculo {0}, Columna {1}. | Detalles: {2} El LCID de la columna no es un entero válido o el paquete de idioma para el idioma no está instalado.

Las traducciones de la columna se omiten.

Los valores de identificadores de configuración regional válidos pueden encontrarse en el gráfico de identificadores de configuración regional (LCID).
Error: Un código de idioma duplicado se encontró en la hoja de cálculo {0}, Columna {1}. Cada columna debe tener un código de idioma diferente.
Error: El archivo de traducción no es válido. El archivo comprimido debe contener los siguientes archivos en root: CrmFieldTranslations.xml, [Content_Types].xml El archivo comprimido (zip) que se importa solo debe contener los archivos descritos en el error.
Error: El archivo de traducciones no es válido o no se ajusta al esquema requerido. El archivo CrmFieldTranslations.xml que se incluye en el archivo comprimido (zip) debe ser un archivo que se exportó del sistema y solo se modificó para proporcionar valores localizados. Otros cambios pueden invalidar el archivo.

Desinstalar un idioma

Las etiquetas localizadas proporcionadas para un idioma que se desinstalen permanecerán en el sistema, por lo que estarán listas si se reinstala el idioma.

Consulte también

Tablas del catálogo de productos
Traducir texto personalizado de tablas y columnasTraducir nombres y propiedades de productos a varios idiomas