/// <summary> /// Agrega un comprobante a la generación del archivo desde un Documento Xml. /// </summary> /// <param name="input"> /// Un System.Xml.XmlDocument que contiene al comprobante fiscal.</param> /// <param name="estado"> /// El estado del comprobante.</param> public void AddCfd(XmlDocument input, EstadoDelComprobante estado) { MemoryStream streamXML = new MemoryStream(); input.DocumentElement.Attributes[_attributeSello].InnerText = estado.ToString(); input.Save(streamXML); streamXML.Position = 0; XmlReader xmlCfd = XmlReader.Create(streamXML); _streamXSLT.Position = 0; MemoryStream memoryStream = new MemoryStream(); XslCompiledTransform xslCompiledTransform = new XslCompiledTransform(); XmlReader xsltStyleSheet = XmlReader.Create(_streamXSLT); xslCompiledTransform.Load(xsltStyleSheet); xslCompiledTransform.Transform(xmlCfd, null, memoryStream); memoryStream.Position = 0; StreamReader streamReader = new StreamReader(memoryStream); _dataFile.WriteLine(streamReader.ReadToEnd()); streamXML.Close(); streamXML = null; memoryStream.Close(); memoryStream = null; streamReader.Close(); streamReader = null; }
/// <summary> /// Agrega un comprobante a la generación del archivo desde una cadena que representa un xml. /// </summary> /// <param name="xml"> /// Un System.String que contiene el cuerpo del comprobante con formato xml.</param> /// <param name="estado"> /// El estado del comprobante.</param> public void AddCfdX(string xml, EstadoDelComprobante estado) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(xml); AddCfd(xmlDoc, estado); }
/// <summary> /// Agrega un comprobante a la generación del archivo desde una ruta de archivo. /// </summary> /// <param name="filename"> /// La ruta de archivo donde se encuentra el coprobante.</param> /// <param name="estado"> /// El estado del comprobante.</param> public void AddCfd(string filename, EstadoDelComprobante estado) { XmlDocument xml = new XmlDocument(); xml.Load(filename); AddCfd(xml, estado); }
/// <summary> /// Agrega un comprobante a la generación del archivo desde un flujo de datos. /// </summary> /// <param name="reader"> /// El flujo de datos que contiene al comprobante.</param> /// <param name="estado"> /// El estado del comprobante.</param> public void AddCfd(XmlReader reader, EstadoDelComprobante estado) { XmlDocument xml = new XmlDocument(); xml.Load(reader); AddCfd(xml, estado); }
/// <summary> /// Agrega un comprobante a la generación del archivo desde un flujo de datos. /// </summary> /// <param name="inStream"> /// El flujo de datos que contiene al comprobante.</param> /// <param name="estado"> /// El estado del comprobante.</param> public void AddCfd(Stream inStream, EstadoDelComprobante estado) { XmlDocument xml = new XmlDocument(); xml.Load(inStream); AddCfd(xml, estado); }