public List<MMUnitUsageData> GetWPMediaAddOnDataStandBildUsagePerTabelle (String TableName, List<Guid> IdList = null) { List<MMUnitUsageData> Result = new List<MMUnitUsageData>(); foreach (IContainTableAttributes tableEntry in GeWPMediaAddOnDataPerTabelle(TableName, IdList)) { if (tableEntry.NumberOfPages == null) tableEntry.NumberOfPages = 1; MMUnitUsageData Entry = new MMUnitUsageData() { ContentToUse = tableEntry, TimingsToUse = Timings.Find_via_ConnectedId(tableEntry.Id).OrderBy(ord => ord.TimeA) .ToArray<IContainTimingAttributes>(), NumberOfPages = (int) tableEntry.NumberOfPages }; Entry.FillMe(); Result.Add(Entry); } return Result; }
GetWPMediaAddOnDataStandBildUsageForTables(Dictionary<String,List<Guid>> tablesAndIds) { Dictionary<String, List<MMUnitUsageData>> Result = new Dictionary<String, List<MMUnitUsageData>>(); if (tablesAndIds.Keys.Count == 0) return Result; List<String> SelectedStatementsForRefresh = new List<string>(); foreach (String tableName in tablesAndIds.Keys) { String idSelector = String.Empty; if ((tablesAndIds[tableName] != null) && (tablesAndIds[tableName].Count > 0)) { List<String> idStringList = new List<string>(); foreach (Guid guid in tablesAndIds[tableName]) { idStringList.Add(guid.ToString()); } idSelector = $" where Id = '{String.Join("' or Id = '", idStringList)}' "; } String Entry = $"select * from {tableName} {idSelector}"; SelectedStatementsForRefresh.Add(Entry); } DownloadTables(String.Join(";", SelectedStatementsForRefresh)); foreach (String tableName in tablesAndIds.Keys) { TableDefinition tableDefinition = TableDefinitions.Find_via_TableName(tableName); Result[tableName] = new List<MMUnitUsageData>(); CsDbTableBase tableBase = GetTableByName(tableName); foreach (Guid tableContentGuid in tablesAndIds[tableName]) { IContainTableAttributes tableEntry = (IContainTableAttributes) tableBase.Generic_Find(tableContentGuid); if (tableEntry.NumberOfPages == null) tableEntry.NumberOfPages = 1; MMUnitUsageData Entry = new MMUnitUsageData() { ContentToUse = tableEntry, TimingsToUse = Timings.Find_via_ConnectedId(tableEntry.Id).OrderBy(ord => ord.TimeA) .ToArray<IContainTimingAttributes>(), NumberOfPages = (int)tableEntry.NumberOfPages }; Entry.FillMe(); Result[tableName].Add(Entry); } } return Result; }