public FATCA_OECD ParseData(IEnumerable <string[]> FATCAData) { FATCA_OECD FATCAObj = new FATCA_OECD(); int line = 0; bool errorsInFile = false; foreach (var item in FATCAData) { line++; try { if (FATCAValidator.Validate(item)) { FATCAMapper.Map(item, ref FATCAObj); } } catch (Exception ex) { applicationLog.LogError(ex, $"Error en la linea:{line}"); errorsInFile = true; } } if (errorsInFile) { throw new ArgumentException("Se han encontrado errores en el archivo, revise el Log del proceso"); } return(FATCAObj); }
public void ProcessFATCA() { try { var FACTData = FATCADataProvider.GetFATCAData(); if (FACTData.Count() > 0) { var FACTRecords = FATCAParser.ParseData(FACTData); FATCAFileGenerator.GenerateFile(FACTRecords); } } catch (Exception ex) { applicationLog.LogError(ex, "Error al procesar archivo"); } }