Compartir a través de


Implementación de la traducción de datos mediante parámetros de campos

En este artículo se muestra cómo implementar la traducción de datos mediante un parámetro de campos. El proceso consta de los siguientes pasos:

  • Creación de un parámetro de campo
  • Usar una segmentación y una tabla de datos
  • Editar los nombres traducidos
  • Agregar una columna de id. de idioma

Creación de un parámetro de campo

  1. Para crear un parámetro de campos en Power BI Desktop, en Modelado, seleccione Nuevo parámetro>Campos.

    Screenshot shows the Modeling ribbon with the New parameter button selected and Fields highlighted.

  2. En el cuadro de diálogo Parámetros, escriba un nombre Translated Product Names (Nombres de productos traducidos).

  3. Rellene la conexión de campos de este parámetro de campos con las columnas de la tabla Products (Productos) con los nombres de productos traducidos.

    Screenshot shows the Parameters dialog box with a name added and several fields selected.

  4. Asegúrese de que la opción Agregar segmentación a esta página está habilitada.

  5. Seleccione Crear.

Una vez creado un parámetro de campos, aparecerá en la lista Campos de la derecha como una nueva tabla. En Datos, seleccione Translated Product Names (Nombres de productos traducidos) para ver el código de expresiones de análisis de datos (DAX) que define el parámetro de campos, como se muestra en la captura de pantalla siguiente.

Screenshot shows DAX code for the field parameter.

Usar una segmentación y una tabla de datos

  1. En Datos, expanda el nodo Translated Product Names (Nombres de productos traducidos). Luego, seleccione el elemento Translated Product Names (Nombres de productos traducidos). Aparece una tabla en el lienzo.

    Screenshot shows the translated product names table.

    Puede ver el tipo de tabla en Visualizaciones y Translated Product Names (Nombres de productos traducidos) como el valor de Columnas. Coloque la segmentación y la tabla de datos en cualquier lugar del lienzo.

  2. Seleccione un elemento de la segmentación, como ProductTranslationSpanish. La tabla ahora muestra una sola columna correspondiente.

    Screenshot shows a slicer with one value selected and a table that displays that value.

Editar los nombres traducidos

Los valores de la columna de los nombres de productos se han traducido al español. El encabezado de columna aún muestra el nombre de columna del origen de datos subyacente, que es ProductTranslationSpanish. Esto se debe a que esos valores del encabezado de columna se codifican de forma rígida en la expresión DAX cuando Power BI Desktop crea el parámetro de campos.

Screenshot shows DAX values, which include hard-coded column names.

Si examina la expresión DAX, aparecen los nombres de columna codificados de forma rígida del origen de datos subyacente, como ProductTranslationEnglish y ProductTranslationSpanish.

Translated Product Names = {
  ("ProductTranslationEnglish", NAMEOF('Products'[ProductTranslationEnglish]), 0),
  ("ProductTranslationSpanish", NAMEOF('Products'[ProductTranslationSpanish]), 1),
  ("ProductTranslationFrench", NAMEOF('Products'[ProductTranslationFrench]), 2),
  ("ProductTranslationGerman", NAMEOF('Products'[ProductTranslationGerman]), 3)
}

Actualice la expresión DAX para reemplazar los nombres de las columnas por traducciones localizadas para la palabra Product (Producto), como se muestra en el código siguiente.

Translated Product Names = {
  ("Product", NAMEOF('Products'[ProductTranslationEnglish]), 0),
  ("Producto", NAMEOF('Products'[ProductTranslationSpanish]), 1),
  ("Produit", NAMEOF('Products'[ProductTranslationFrench]), 2),
  ("Produkt", NAMEOF('Products'[ProductTranslationGerman]), 3)
}

Al hacer este cambio, el encabezado de columna se traduce junto con los nombres de los productos.

Screenshot shows a slicer set to a translated product name and that column displayed in a table.

Editar los nombres de las columnas en la vista Datos

Hasta este punto, se ha examinado el parámetro de campos en la vista Informe. Ahora abra la vista Datos. Allí puede ver dos campos más en el parámetro de campos que están ocultos en la vista Informe.

Screenshot shows the Data view of a field parameter with the DAX code displayed.

Los nombres de las columnas de un parámetro de campos se generan en función del nombre que asigne al parámetro de campos de nivel superior. Debe cambiar el nombre de las columnas para simplificar el modelo de datos y mejorar la legibilidad.

  1. Para cambiar el nombre de una etiqueta de columna, haga doble clic en el campo. Cambie el nombre de Translated Product Names (Nombres de productos traducidos) por Product (Producto).

    Screenshot shows a table in the Data view with the column name changed to Product.

  2. Cambie el nombre de los dos campos ocultos por nombres más cortos, como Fields (Campos) y Sort Order (Criterio de ordenación).

    Screenshot shows a table in the Data view with the column names changed to Fields and Sort Order.

Agregar una columna de id. de idioma

El parámetro de campos es una tabla con tres columnas denominadas Product (Producto), Fields (Campos) y Sort Order (Criterio de ordenación). El siguiente paso consiste en agregar una cuarta columna con un identificador de idioma para habilitar el filtrado por idioma. Para agregar la columna, modifique la expresión DAX del parámetro de campos.

  1. Agregue un cuarto parámetro de cadena a la fila para cada idioma con el identificador de idioma de dos caracteres en minúsculas.

    Translated Product Names = {
      ("Product", NAMEOF('Products'[ProductTranslationEnglish]), 0, "en" ),
      ("Producto", NAMEOF('Products'[ProductTranslationSpanish]), 1, "es" ),
      ("Produit", NAMEOF('Products'[ProductTranslationFrench]), 2, "fr" ),
      ("Produkt", NAMEOF('Products'[ProductTranslationGerman]), 3, "de" )
    }
    

    Después de actualizar la expresión DAX con un identificador para cada idioma, aparece una nueva columna en la vista Datos de la tabla Products (Productos) denominada Value4.

    Screenshot shows a table in the Data view with a new column called Value4.

  2. Haga doble clic en el nombre Value4 y cámbielo por LanguageId.

    Screenshot shows a table in the Data view with a new column renamed to LaguageId.

  3. Seleccione LanguageId para resaltarlo. En la cinta de opciones de control, seleccione Ordenar por columna>Sort order (Criterio de ordenación).

    Screenshot shows a table in the Data view with the Language ID column selected and SortOrder selected as its sort order.

    No es necesario configurar la columna de ordenación de los dos campos preexistentes. Power BI Desktop los configuró cuando usted configuró el parámetro de campos.

  4. Abra la vista Modelo y, junto a LanguageId (Id. de idioma), seleccione Más opciones (tres puntos). Seleccione Ocultar en la vista de informes.

Screenshot shows a table in the Model view with the LanguageId marked as hidden.

Los creadores de los informes nunca tendrán que ver esta columna, porque se usa para seleccionar un idioma mediante el filtrado en segundo plano.

En este artículo, se ha creado un parámetro de campos denominado Translated Product Names (Nombres de productos traducidos) y lo ha ampliado con una columna denominada LanguageId (Id. de columna). La columna LanguageId (Id. de columna) se usa para filtrar qué columna de origen se usa. Esa acción determina qué idioma se muestra a los usuarios de los informes.