static private void GenerarXML(MicrosCheck check, int index) { var filePath = $"{"TRX"}" + $"{_configuration.CodigoTerminal}" + $"{_configuration.CodigoBUPLA}" + $"{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Year.ToString().Substring(2, 2)}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month}" : DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day}" : DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour}" : DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute}" : DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute.ToString())}" + $"{check.Encabezado.IdDoc.Znumd}" + $"{".xml"}"; try { var doc = XmlFormatter.OpenFile(filePath); XmlFormatter.ImprimirDocumento(filePath, doc, index); XmlFormatter.ImprimirElementosEncabezado(doc, filePath, check.Encabezado, index); if (check.Detalle != null) { var j = 1; foreach (var detalle in check.Detalle) { XmlFormatter.ImprimirDetalle(doc, filePath, index, j); XmlFormatter.ImprimirCdgItem(doc, filePath, index, j); XmlFormatter.ImprimirElementosDetalle(doc, filePath, detalle, index, j); j++; } } XmlFormatter.ImprimirTotales(doc, filePath, index); XmlFormatter.ImprimirElementosTotales(doc, filePath, check.Totales, index); XmlFormatter.ImprimirDscrcgGlobal(doc, filePath, index); XmlFormatter.ImprimirElementosDscrcgGlobar(doc, filePath, check.DscrgGlobal, index); XmlFormatter.ImprimirParametros(doc, filePath, index); XmlFormatter.ImprimirElementosParametros(doc, filePath, check.Parametros, index, _configuration.EnviaMontoEscrito == "0"); XmlFormatter.RenameXmlNodes(doc, filePath); } catch (Exception ex) { throw; } }
private void GenerarXML(MicrosCheck check, int index) { var filePath = $"{@"D:\archivos-xml\"}" + $"{"TRX"}" + $"{_configuration.CodigoTerminal}" + $"{_configuration.CodigoBUPLA}" + $"{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Year.ToString().Substring(2, 2)}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month}" : DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day}" : DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour}" : DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute}" : DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute.ToString())}" + $"{check.Encabezado.IdDoc.Znumd}" + $"{".xml"}"; var copyPath = $"{@"D:\Netgroup\Ruby\xml\"}" + $"{"TRX"}" + $"{_configuration.CodigoTerminal}" + $"{_configuration.CodigoBUPLA}" + $"{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Year.ToString().Substring(2, 2)}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month}" : DateTime.Parse(check.Encabezado.IdDoc.Bldat).Month.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day}" : DateTime.Parse(check.Encabezado.IdDoc.Bldat).Day.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour}" : DateTime.Parse(check.Encabezado.IdDoc.Zhora).Hour.ToString())}" + $"{(DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute.ToString().Length == 1 ? $"0{DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute}" : DateTime.Parse(check.Encabezado.IdDoc.Zhora).Minute.ToString())}" + $"{check.Encabezado.IdDoc.Znumd}" + $"{".xml"}"; try { //Logger.WriteLog($"Grabo xml en {filePath}", _logFilePath); var doc = XmlFormatter.OpenFile(filePath); XmlFormatter.ImprimirDocumento(filePath, doc, index); XmlFormatter.ImprimirElementosEncabezado(doc, filePath, check.Encabezado, index); //Logger.WriteLog($"Detalles qty: {check.Encabezado.IdDoc.Znumd} - {check.Detalle.Count}", _logFilePath); if (check.Detalle.Count != 0) { var j = 1; foreach (var detalle in check.Detalle) { XmlFormatter.ImprimirDetalle(doc, filePath, index, j); XmlFormatter.ImprimirCdgItem(doc, filePath, index, j); XmlFormatter.ImprimirElementosDetalle(doc, filePath, detalle, index, j); j++; } } else { Logger.WriteLog("El documento aún no posee detalles grabados en base de datos.", _logFilePath); } XmlFormatter.ImprimirTotales(doc, filePath, index); XmlFormatter.ImprimirElementosTotales(doc, filePath, check.Totales, index); XmlFormatter.ImprimirDscrcgGlobal(doc, filePath, index); XmlFormatter.ImprimirElementosDscrcgGlobar(doc, filePath, check.DscrgGlobal, index); XmlFormatter.ImprimirParametros(doc, filePath, index); XmlFormatter.ImprimirElementosParametros(doc, filePath, check.Parametros, index, _configuration.EnviaMontoEscrito == "0"); XmlFormatter.RenameXmlNodes(doc, filePath); try { File.Copy(filePath, copyPath, true); } catch (Exception ex) { Logger.WriteLog($"Error al copiar xml: {ex.Message}", _logFilePath); throw; } Logger.WriteLog($"Se generó XML para fcrInvNumber: {check.Encabezado.IdDoc.Znumd} en la ruta {filePath}", _logFilePath); } catch (Exception ex) { Logger.WriteLog($"Error al generar XML: {ex.Message}", _logFilePath); throw; } }