namespace AnalyticsDAL.DTO.AnalysisAggregation.V1 { public class AnalysisDimensionDefinitionDTO { /// Field reference. For Warehouse-kind datasets: a bare fact/DIMOU/DIMDATE /// column name, or "DIMOU." / "DIMDATE." when the column isn't on the /// fact table itself (see WarehouseDAL's allowlist-based resolution — only DIMOU and /// DIMDATE are joinable in this pass, since the ported facts are OU+Date grained only). /// For AnalysisQuery/ApiService-kind datasets: whatever field name that source uses. public string Field { get; set; } = string.Empty; public string Label { get; set; } = string.Empty; /// Mirrors MREPORTVSFIELDS.FIELDTYPE numbering: 0 INT,1 STRING,2 LONG,3 DATE,4 BOOL,6 DOUBLE. public byte DataType { get; set; } /// 0 = leaf (deepest level currently shown); matches MREPORTVIEWFIELDS.ROWLEVEL convention. public int HierarchyLevel { get; set; } } }