Exemple #1
0
        private void ConsultarDGI(Object parametros, SobreTransito sobreTransito)
        {
            string xmlConsulta  = "";
            string xmlRespuesta = "";

            WebServiceDGI webServiceDgi = new WebServiceDGI(parametros);

            try
            {
                //Armar el xml con los datos de para la consulta
                xmlConsulta = "<ConsultaCFE xmlns=\"http://dgi.gub.uy\"> <IdReceptor>" + sobreTransito.IdReceptor + "</IdReceptor><Token>" + sobreTransito.Token + "</Token> </ConsultaCFE>";
                //Invocar el web service
                xmlRespuesta = webServiceDgi.WSDGI.SendWSDGI(xmlConsulta, clsWSDGI.WsMethod.Query);

                if (ValidarRespuesta(xmlRespuesta) == false)
                {
                    //Procesar la respuesta
                    respuestaCertificado.ProcesarRespuesta(xmlRespuesta, CFE.ESTipoReceptor.DGI, sobreTransito.DocEntry);
                }
                else
                {
                    // Elimino sobre con error.
                    //manteUdoSobreTransito.Eliminar(sobreTransito.DocEntry);
                }
            }
            catch (Exception)
            {
                //SAPbouiCOM.Framework.Application.SBO_Application.MessageBox("consultarDGI " + ex.ToString());
            }
        }
Exemple #2
0
        /// <summary>
        /// Consume el web service
        /// </summary>
        /// <param name="parametros"></param>
        /// <returns></returns>
        public string Consumir(object parametros)
        {
            string respuesta = "";

            WebServiceDGI      webServiceDgi      = new WebServiceDGI(parametros);
            ParametrosJobWsDGI parametrosJobWsDGI = parametros as ParametrosJobWsDGI;

            XmlDocument xmlDocumento = new XmlDocument();

            try
            {
                if (File.Exists((RutasCarpetas.RutaCarpetaSobresDgi + "\\" + parametrosJobWsDGI.SobreDgi.Nombre + ".xml")))
                {
                    xmlDocumento.Load(RutasCarpetas.RutaCarpetaSobresDgi + "\\" + parametrosJobWsDGI.SobreDgi.Nombre + ".xml");
                }
                else if (File.Exists((RutasCarpetas.RutaCarpetaContingenciaSobresDgi + "\\" + parametrosJobWsDGI.SobreDgi.Nombre + ".xml")))
                {
                    xmlDocumento.Load(RutasCarpetas.RutaCarpetaContingenciaSobresDgi + "\\" + parametrosJobWsDGI.SobreDgi.Nombre + ".xml");
                }



                //SAPbouiCOM.Framework.Application.SBO_Application.MessageBox("Envio a DGI " + xmlDocumento.InnerXml);
                respuesta = webServiceDgi.WSDGI.SendWSDGI(xmlDocumento.InnerXml, clsWSDGI.WsMethod.Envelope);
                //SAPbouiCOM.Framework.Application.SBO_Application.MessageBox("Respuesta " + respuesta);
                //respuesta = respuesta.Replace("<IDEmisor>0</IDEmisor>", "<IDEmisor>" + xmlDocumento.GetElementsByTagName("DGICFE:Idemisor").Item(0).InnerText + "</IDEmisor>");
                //respuesta = respuesta.Replace("<IDEmisor>0</IDEmisor>", "<IDEmisor>" + xmlDocumento.GetElementsByTagName("Idemisor").Item(0).InnerText + "</IDEmisor>");
            }
            catch (Exception)
            {
                app.MessageBox("No se pudo enviar a DGI por problemas de conexión, recordar reenvio de documento.");
                respuesta = "";
            }

            finally
            {
                if (webServiceDgi != null)
                {
                    //Libera de memoria el objeto factura
                    GC.SuppressFinalize(webServiceDgi);
                    GC.Collect();
                }


                if (parametrosJobWsDGI != null)
                {
                    //Libera de memoria el objeto factura
                    GC.SuppressFinalize(parametrosJobWsDGI);
                    GC.Collect();
                }


                if (xmlDocumento != null)
                {
                    //Libera de memoria el objeto factura
                    GC.SuppressFinalize(xmlDocumento);
                    GC.Collect();
                }
            }

            return(respuesta);
        }