Localizar los valores de los atributos del producto

Los nombres de producto se pueden localizar para diferentes regiones. Mediante el uso de Dynamics 365 Sales, puede proporcionar etiquetas localizadas para determinados atributos de producto para que las personas vean los nombres localizados que coinciden con sus preferencias de idioma. En este artículo se explica 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 hacer nada diferente 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, el sistema lo devuelve. Si no existe un valor localizado, el sistema devuelve el valor del idioma base de la organización. Este comportamiento mantiene la compatibilidad con versiones anteriores; Cualquier código que use actualmente el atributo de nombre de producto sigue funcionando mediante cualquier valor localizado. 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.

Consultar utilizando valores localizados

Cuando se consultan tablas mediante el uso de valores para atributos localizados en condiciones, el sistema evalúa primero las condiciones mediante el idioma preferido. Si no hay valores localizados para el atributo, la consulta vuelve al idioma base. Los resultados de la consulta para los valores de atributo localizados se devuelven en el idioma preferido si existen. De lo contrario, los resultados se devuelven en su idioma base.

Cree o actualice registros con atributos localizables

Los registros con atributos localizables son de solo lectura a menos que su idioma preferido sea el idioma base de la organización. Solo puede crear registros con valores de propiedad localizados mediante 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, excepto si borra el valor del idioma base. Si establece el valor de idioma base en null o en una cadena vacía, también se borran todos los valores localizados de esa propiedad.

Para agregar o actualizar etiquetas localizadas para cualquier atributo localizable específico, use el mensaje o importe los SetLocLabelsRequest 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 atributo localizados no necesita el rol de seguridad de administrador del sistema. El rol de seguridad del gerente de ventas posee 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 mediante ExportFieldTranslationRequest. El ExportFieldTranslationResponse. ExportTranslationFile propiedad contiene un byte[] para un archivo de crmFieldTranslations.zip comprimido que contiene un archivo [Content_types].xml y un archivo crmFieldTranslations.xml que se puede abrir mediante 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 de idioma base se rellena y las columnas de cada idioma aprovisionado contienen los valores localizados anteriormente. Un traductor puede editar este archivo para proporcionar etiquetas localizadas para las propiedades localizables.

Sugerencia

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, comprima junto con el archivo [Content_types].xml y establezca ese archivo como la TranslationFile propiedad de ImportFieldTranslationRequest.

Modificar los valores incluidos al exportar valores de propiedad traducidos

Las vistas personalizables asociadas a las tablas que admiten valores de propiedad localizables controlan los valores incluidos en las traducciones exportadas. Solo la tabla 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 para estas vistas.

Tabla SavedQueryId Predeterminado FetchXml
producto 9cfe2a9f-13c4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapping="lógico"
distinct="false">
<nombre de entidad="producto">
<attribute name="name" />
</entidad>
</obtener>
propiedad dinámica 4833cf48-1ac4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapeo="lógico">
<entity name="dynamicproperty">
<attribute name="name" />
</entidad>
</obtener>
elemento de conjunto de opciones de propiedades dinámicas d64cce30-1fc4-e311-8f2e-00155d9d2505 <fetch version="1.0"
output-format="xml-platform"
mapeo="lógico">
<entity name="dynamicpropertyoptionsetitem">
<attribute name="dynamicpropertyoptionname" />
<attribute name="dynamicpropertyoptiondescription" />
</entidad>
</obtener>

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

Supervisar el progreso de los procesos de importación de traducción de campo

Las tablas de trabajos del sistema incluyen las siguientes vistas para supervisar el progreso de los trabajos de traducción de campos para importación.

  • Importación de trabajos de traducción de todos los campos

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

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

  • Mis tareas de importación de traducciones de campos

  • Trabajos de importación de traducción de campo no comenzados

    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 continúa.
Advertencia: Las cadenas de traducción del idioma base presente en la hoja de cálculo {0}, fila {1}, columna {2} es nula. No se puede borrar un valor de idioma base importando traducciones.

El procesamiento de otras filas continúa.
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 continúa.
Advertencia: Un nombre de tabla no válido se encontró en la hoja de cálculo {0}, línea {1}, columna A. No hay ninguna tabla válida en el sistema con el nombre especificado en la hoja de cálculo.

El procesamiento de otras filas continúa.
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 continúa.
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 continúa.
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 va a importar debe contener solo 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

El sistema mantiene las etiquetas localizadas para un idioma que desinstale. Si vuelve a instalar el idioma, las etiquetas ya están en su lugar.

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