/// <summary> /// Metodo para crear sobre para el comprobante /// </summary> /// <param name="cfe"></param> private Sobre CrearSobre(CFE cfe, bool sobreDgi) { Sobre sobre = new Sobre(cfe); string infoCertificado = ""; try { infoCertificado = ProcTransformacion.ObtenerCadenaCertificado(); if (infoCertificado.Equals("")) { sobre = null; } else { if (sobreDgi) { ManteUdoDocumento manteUdoDocumento = new ManteUdoDocumento(); string rutConfigurado = manteUdoDocumento.ObtenerRut(); //Proceso para DGI if (rutConfigurado != null) { sobre.RucReceptor = rutConfigurado;//214844360018;//219999830019 } else { sobre.RucReceptor = "214844360018";//219999830019 } sobre.X509Certificate = infoCertificado; sobre.ObtenerCertificadosCreados(listaCertificadosCreados); string xmlSobreDGI = ProcSerializacion.CrearXmlSobre(sobre); ProcTransformacion.GuardarSobrePrevio(sobre.NombrePrev, xmlSobreDGI, true); ProcTransformacion.TransformarSobre(sobre.NombrePrev, sobre.Nombre, sobre.ListaCertificados, "", true); } else { //Proceso para Tercero sobre.X509Certificate = infoCertificado; sobre.ObtenerCertificadosCreados(listaCertificadosCreados); string xmlSobreCliente = ProcSerializacion.CrearXmlSobre(sobre); ProcTransformacion.GuardarSobrePrevio(sobre.NombrePrev, xmlSobreCliente, false); if (!cfe.TextoLibreAdenda.Equals("")) { ProcTransformacion.TransformarSobre(sobre.NombrePrev, sobre.Nombre, sobre.ListaCertificados, cfe.TextoLibreAdenda, false); } else { ProcTransformacion.TransformarSobre(sobre.NombrePrev, sobre.Nombre, sobre.ListaCertificados, "", false); } } } } catch (Exception ex) { SAPbouiCOM.Framework.Application.SBO_Application.MessageBox("ERROR: " + ex.ToString()); } return(sobre); }