Table of Contents

Renombrar objetos en una Metric View

Esta guía práctica muestra cómo cambiar el nombre de un campo de una vista de métricas. Los mismos patrones se aplican a todas las colecciones de una Metric View.

Note

Estas guías prácticas están orientadas a Tabular Editor 3.26.2 y versiones posteriores. Las versiones anteriores no admiten las características de la vista de métricas v1.1 que se muestran aquí.

Carga la Metric View de ejemplo para estas muestras de código

Antes de empezar, asegúrate de tener abierto Tabular Editor 3 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 cualquiera de los métodos siguientes para cargarla («Descargar y cargar» o «Copiar y deserializar»), y luego sigue con el resto de esta guía paso a paso. Puedes ejecutar cualquiera de los dos comandos en el mismo C# Script que el resto de este ejemplo, o puedes ejecutarlo primero en su propio C# Script y el resto del ejemplo en otro C# Script.

Descarga sample-metricview.yaml y cárgalo indicando la ruta:

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

Cambiar el nombre de un campo

Cambie el nombre de un campo agregando uno nuevo con el nombre nuevo, copiando sus demás propiedades y, después, eliminando el original. AddField solo establece el nombre y la expresión, por lo que debe copiar manualmente las propiedades restantes (Comment, DisplayName, Synonyms, Format).

var view = SemanticBridge.MetricView.Model;

var old = view.Fields["order_month"];

// add the replacement, copy the remaining properties, then remove the original
var renamed = view.AddField("Order Month", old.Expr);
renamed.Comment = old.Comment;
renamed.DisplayName = old.DisplayName;
renamed.Synonyms = old.Synonyms;
renamed.Format = old.Format;
old.Delete();

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 campo que se vuelve a agregar pasa al final de la colección.

Siguientes pasos

Ver también