Agregar un objeto a una Metric View
En este procedimiento se explica cómo agregar nuevos objetos a una vista de métricas ya cargada y configurar sus propiedades. Este patrón se aplica a todas las colecciones de Metric View.
Note
Estos procedimientos están dirigidos 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 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");
Agregar un campo
Use AddField para crear y devolver un nuevo Field que luego pueda manipular.
var sb = new System.Text.StringBuilder();
var view = SemanticBridge.MetricView.Model;
sb.AppendLine($"Fields before adding: {view.Fields.Count}");
var field = view.AddField("customer_city", "customer.city");
sb.AppendLine($"Fields after adding: {view.Fields.Count}");
Output(sb.ToString());
Salida
Fields before adding: 6
Fields after adding: 7
Agregar y configurar un Join
AddJoin
Funciona de forma similar a AddField: construye el objeto, lo agrega a la vista de métricas y lo devuelve para que pueda configurar propiedades adicionales.
Establezca la cardinalidad con la enumeración JoinCardinality.
using MetricView = TabularEditor.SemanticBridge.Platforms.Databricks.MetricView;
var view = SemanticBridge.MetricView.Model;
// add a join, then set its remaining properties
var supplier = view.AddJoin("supplier", "sales.dim.supplier");
supplier.On = "source.supplier_id = supplier.supplier_id";
supplier.Cardinality = MetricView.JoinCardinality.ManyToOne;
AddJoin también es un método en cualquier Join existente.
Puede usarlo para crear Join anidados; por ejemplo, supplier.AddJoin("region", "sales.dim.region"),
que modela una dimensión de copo de nieve.
Agregar y configurar una medida
AddMeasure funciona de forma similar a los demás métodos Add.
Algunas propiedades, como el Format de un campo o una medida, tienen sus propios tipos, que debe crear para poder configurarlas.
Cree la variante de Format que desee, como Format.Currency o Format.Percentage, y asígnela.
using MetricView = TabularEditor.SemanticBridge.Platforms.Databricks.MetricView;
var sb = new System.Text.StringBuilder();
var view = SemanticBridge.MetricView.Model;
// add a new measure, then give it a currency format
var totalCost = view.AddMeasure("total_cost", "SUM(cost)");
totalCost.Format = new MetricView.Format.Currency { CurrencyCode = "USD" };
// read the format back off the measure
sb.AppendLine($"{totalCost.Name} format: {totalCost.Format}");
Output(sb.ToString());
Salida
total_cost format: Currency { Type = Currency, DecimalPlaces = , HideGroupSeparator = , Abbreviation = , CurrencyCode = USD }
Pasos a seguir
- Eliminar objetos de una vista de métricas
- Cambiar el nombre de un campo
- Serializar una vista de métricas a YAML