public override void SetupData(XmlDocument doc) { XmlNodeList methods = null; try { // In case GetStoreId fails Summa.ErrorLevelFile = FileLogger.LogErrorLevelFile.TransactionXMLFile; Summa.ErrorStrDetail = doc.DocumentElement.Attributes["id"].Name; FULLFILEPATH += SummaFileName.GetName(SummaFileName.SummaFileType.TransactionPaymentMethods, SummaTransactionCommon.GetStoreId(doc)); methods = doc.DocumentElement.SelectNodes("/Transaction/Receipt/Payment"); if (methods.Count == 0) { Summa.SingletonLoggerStatic.Log(string.Format(string.Format("No payment methods for txn # {0}", SummaTransactionCommon.GetTransactionID(doc)))); //Summa.LOGGER.Log(LogLevel.Warn, string.Format("No payment methods for txn # {0}", // SummaTransactionCommon.GetTransactionID(doc))); } int counter = 0; foreach (XmlNode paymentNode in methods) { csvData.Add(new List <string>()); csvData[counter].Add(SummaTransactionCommon.GetTransactionPaymentID(paymentNode)); csvData[counter].Add(SummaTransactionCommon.GetTransactionID(doc)); csvData[counter].Add(SummaPaymentMethodsCommon.GetPaymentId(paymentNode)); csvData[counter].Add(SummaPaymentMethodsCommon.GetCardNumber(paymentNode)); csvData[counter].Add(SummaPaymentMethodsCommon.GetSalesValue(paymentNode)); csvData[counter].Add(SummaTransactionCommon.GetStoreId(doc)); counter++; csvLineData.Add(new StringBuilder()); } } catch (Exception e) { SummaException se = new SummaException("Problem processing transaction payment methods", e); se.Data = doc.OuterXml; throw se; } }