public void Normalize(ITable initialTable, ITable accountTable, ITable managerTable, ITable relationTable) { _initialTable = initialTable; _accountTable = accountTable; _managerTable = managerTable; _relationTable = relationTable; var initialTableColumnTitles = GetInitialTableColumnTitles(); _initialTableColumnAmount = initialTableColumnTitles.Count; FormatAccountTable(initialTableColumnTitles); FormatManagerTable(); FormatRelationTable(); using (ExecutionTimer.StartNew("ProccessInitialTable")) ProccessInitialTable(); }
static void Main(string[] args) { const string accountTablePostfix = "-accounts"; const string managerTablePostfix = "-managers"; const string relationTablePostfix = "-account-manager-relations"; const string outputFileExtension = "xlsx"; var initialTableUrl = GetInitialTableFileUrl(); var accountTableUrl = GetOutputFileUrl(initialTableUrl, accountTablePostfix, outputFileExtension); var managerTableUrl = GetOutputFileUrl(initialTableUrl, managerTablePostfix, outputFileExtension); var relationTableUrl = GetOutputFileUrl(initialTableUrl, relationTablePostfix, outputFileExtension); var xlsNormalizer = new AccountManagerNormalizer(); try { var initialTable = new OpenXMLTable(initialTableUrl, false); var accountTable = new OpenXMLTable(accountTableUrl, true); var managerTable = new OpenXMLTable(managerTableUrl, true); var relationTable = new OpenXMLTable(relationTableUrl, true); Console.WriteLine("Normalization in progress..."); using (ExecutionTimer.StartNew("Normalization")) { xlsNormalizer.Normalize(initialTable, accountTable, managerTable, relationTable); } accountTable.SaveAndClose(); managerTable.SaveAndClose(); relationTable.SaveAndClose(); } catch (Exception exception) { Console.WriteLine("EXCEPTION Occured:"); Console.WriteLine(exception.Message); Close(); return; } Console.WriteLine("Normalization has been successfully done."); Close(); }