/// <summary>
        /// Consulta el estado de cada CFE asociado uno id de respuesta determinado
        /// </summary>
        /// <param name="comp"></param>
        /// <param name="token"></param>
        /// <param name="idRespuesta"></param>
        /// <returns></returns>
        public ArrayList ConsultarCFEProcesado(string token, string idRespuesta)
        {
            string    consulta                    = "";
            ArrayList listaComporobantes          = new ArrayList();
            CertificadosRecProcesados certificado = new CertificadosRecProcesados();
            Recordset recSet = null;

            try
            {
                recSet   = ProcConexion.Comp.GetBusinessObject(BoObjectTypes.BoRecordset);
                consulta = "select T1.DocEntry, U_Aprobado, U_TipoCFE, U_SerCom, U_NumCom, U_FecEmi, U_FeFir from [@TFESOBREC] as T1 inner join [@TFECONS] as T2 on T1.U_IdCons = T2.DocEntry where T2.U_IdRec = " + idRespuesta + " and U_Token = '" + token + "' and U_Aprobado in ('Y', 'N')";
                recSet.DoQuery(consulta);
                int i = 0;

                while (i < recSet.RecordCount)
                {
                    certificado              = new CertificadosRecProcesados();
                    certificado.DocEntry     = recSet.Fields.Item("DocEntry").Value + "";
                    certificado.TipoCom      = recSet.Fields.Item("U_TipoCFE").Value + "";
                    certificado.SerieCom     = recSet.Fields.Item("U_SerCom").Value + "";
                    certificado.NumCom       = recSet.Fields.Item("U_NumCom").Value + "";
                    certificado.FechaEmision = recSet.Fields.Item("U_FecEmi").Value + "";
                    certificado.FechaFirma   = recSet.Fields.Item("U_FeFir").Value + "";

                    if (recSet.Fields.Item("U_Aprobado").Value == "Y")
                    {
                        certificado.Aprobado = true;
                    }
                    else
                    {
                        certificado.Aprobado = false;
                    }

                    listaComporobantes.Add(certificado);
                    recSet.MoveNext();
                    i++;
                }
            }
            catch (Exception)
            {
                listaComporobantes = null;
            }
            finally
            {
                if (recSet != null)
                {
                    //Se libera de memoria el objeto recSet
                    System.Runtime.InteropServices.Marshal.ReleaseComObject(recSet);
                    GC.Collect();
                }
            }

            return(listaComporobantes);
        }
Example #2
0
 /// <summary>
 /// Retorna el codigo del estado del certificado
 /// </summary>
 /// <param name="certificadoRecProcesado"></param>
 /// <returns></returns>
 private string ObtenerEstadoCertificado(CertificadosRecProcesados certificadoRecProcesado)
 {
     if (certificadoRecProcesado.Aprobado)
     {
         return("AE");
     }
     else if (!certificadoRecProcesado.Aprobado)
     {
         return("BE");
     }
     else
     {
         return("");
     }
 }