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
ArgumentExceptiony 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
- Agregar objetos a una vista de métricas
- Quitar objetos de una vista de métricas
- Serializar una vista de métricas a YAML
Ver también
- Modelo de objetos de la Metric View
- @validación de Metric View en Semantic Bridge