Table of Contents

Renombrar objetos en una Metric View

Este procedimiento muestra cómo cambiar el nombre de un campo de una vista de métricas. El mismo patrón se aplica a todas las colecciones de una vista de métricas: Fields, Measures, Dimensions y Joins.

Note

Estos procedimientos están dirigidos a Tabular Editor 3.26.2 y versiones posteriores. Las versiones anteriores no admiten las funcionalidades de la vista de métricas v1.1 que se muestran aquí.

Carga la Metric View de ejemplo para estos fragmentos de código

Antes de empezar, asegúrate de tener Tabular Editor 3 abierto y de haber abierto un modelo tabular, o crea uno nuevo.

Este tutorial paso a paso utiliza una Vista de Métricas de comercio electrónico de ejemplo que representa datos de ventas, con tres tablas de dimensiones (producto, cliente y fecha) unidas a una tabla de hechos (pedidos). Usa uno de los métodos siguientes para cargarla ("descargar y cargar" o "copiar y deserializar"); después, sigue con el resto de esta guía. Puedes ejecutar cualquiera de los comandos en el mismo C# Script que el resto de este ejemplo, o bien ejecutarlo primero en un C# Script independiente y luego el resto del ejemplo en otro C# Script.

Descargar sample-metricview.yaml y cárgalo usando la ruta:

SemanticBridge.MetricView.Load("C:/path/to/sample-metricview.yaml");

Cambiar el nombre de un campo

Asigna la propiedad Name del objeto. Todo lo demás del objeto (su expresión, comentario, nombre para mostrar, sinónimos y formato) se mantiene sin cambios, y conserva su lugar en la colección.

var view = SemanticBridge.MetricView.Model;

view.Fields["order_month"].Name = "Order Month";

var sb = new System.Text.StringBuilder();
sb.AppendLine("Fields:");
foreach (var field in view.Fields)
{
    sb.AppendLine($"  {field.Name}");
}
Output(sb.ToString());

Salida:

Fields:
  product_name
  product_category
  customer_segment
  order_date
  order_year
  Order Month

El índice de nombres de la colección se actualiza con el objeto, de modo que se puede acceder al campo de inmediato con su nuevo nombre:

var field = view.Fields["Order Month"];

Reglas

  • Los nombres deben ser únicos dentro de su colección. Si cambias el nombre de un campo por uno que ya usa otro campo, se produce una ArgumentException y no se modifica ni el objeto ni la colección.
  • La coincidencia de nombres no distingue entre mayúsculas y minúsculas, de acuerdo con Databricks SQL. view.Fields["ORDER MONTH"] encuentra el campo cuyo nombre se cambió anteriormente. Aunque un cambio de nombre solo modifique las mayúsculas y minúsculas, sigue siendo útil, ya que actualiza el nombre almacenado.
  • El cambio de nombre se aplica al modelo de objetos en memoria. Serializa la vista para escribirla.

Pasos a seguir

Ver también