public async Task <GetSelectableColumnsResponse> GetSelectableColumnsAsync(string platform, int?organizationId = null, int?userId = null, int?groupBy = null) { var result = new GetSelectableColumnsResponse(); var apiRequest = SetupGetSelectableColumnsRequest(platform, organizationId, userId, groupBy); try { // GET var response = await ExecuteAsync <GetSelectableColumnsResponse>(apiRequest); return(response); } catch (Exception ex) { result.Error = new ResponseError().Load(ex); } return(result); }
public GetSelectableColumnsResponse GetSelectableColumns(string platform, int?organizationId = null, int?userId = null, int?groupBy = null) { var result = new GetSelectableColumnsResponse(); try { using (new RequestTimer(result)) { var dataSource = _reportsDataSourceFactory.GetDataSource(platform); var columns = dataSource.GetAllSelectableColumnDefinitions(organizationId, groupBy); result.Data = columns; } } catch (Exception ex) { result.Error = new ResponseError().Load(ex); _logger.LogException(ex); } return(result); }
public static SearchRequest AddFilter(this SearchRequest request, GetSelectableColumnsResponse allColumns, string uniqueColumnName, object value, FilterModeEnum mode = FilterModeEnum.Equal) { if (request.Filters == null) { request.Filters = new List <SearchRequestFilter>(); } var column = allColumns.Data.Where(x => x.UniqueName == uniqueColumnName).Select(x => new SelectedColumn(x.Id)).FirstOrDefault(); request.Filters.Add(new SearchRequestFilter() { ColumnId = column.ColumnId, Mode = mode, Values = new List <string>() { value.ToString() } }); return(request); }
public void Setup() { _client = new ReportsServiceClient(); _allColumnInfo = _client.GetColumnMappings(_platform, 1, null, clearCache: true); _allColumns = _client.GetSelectableColumns(_platform, null, null); }