private void AlmacenaFacturas_NoAceptadas(String Compania, String tipoFactura, String NumFactura, String Motivo, String Estado)
 {
     try
     {
         AccesoDatos ad = new AccesoDatos();
         string SigloOper = "1";
         string AnioOper = DateTime.Now.Year.ToString().Substring(2, 2).PadLeft(2,'0');
         string MesOper = DateTime.Now.Month.ToString().PadLeft(2,'0');
         string DiaOper = DateTime.Now.Day.ToString().PadLeft(2,'0');
         string HoraOper = DateTime.Now.Hour.ToString().PadLeft(2, '0') + DateTime.Now.Minute.ToString().PadLeft(2, '0') + DateTime.Now.Second.ToString().PadLeft(2, '0');
         string dml = String.Format(Query.AlmacenaNoAceptadas,Compania,tipoFactura,NumFactura,SigloOper,AnioOper,MesOper,DiaOper,HoraOper,(Motivo.Length>50)?Motivo.Substring(0,50):Motivo,Estado);
         int almacena = ad.RealizaDml(dml);
         if (almacena == 1)
         {
             ;
         }
         else
         {
             throw new Exception("Al Insertar el Registro xTFAC043");
         }
     }
     catch (Exception err)
     {
         throw new Exception("Error al Almacenar Facturas No Aceptadas - "+err.Message);
     }
 }
        private string ObtieneUltimoLote(String Cia, String TipoDocumento)
        {
            try
            {
                AccesoDatos cpm = new AccesoDatos();
                DataTable NumLote = cpm.RealizaConsulta(String.Format(Query.NumeroLote, Cia, TipoDocumento));
                Decimal lote = Convert.ToDecimal(NumLote.Rows[0]["NUMLOT"].ToString());
                string loteActual = Convert.ToString(lote + 1);
                string dml = String.Format(Query.IncrementaLote, loteActual, Cia, TipoDocumento);
                int valorUpdate = cpm.RealizaDml(dml);
                if (valorUpdate == 1)
                {
                    return lote.ToString();
                }
                else
                {
                    throw new Exception("Al Actualizar Numero Lote xTFAC045");
                }
            }
            catch (Exception err)
            {

                throw new Exception("Error al Obtener Numero de Pedido Lote - "+err.Message);
            }
        }
        private void AlmacenaEnvioDocumentos(bool Lote, String Cia, String TipoFactura, String FechaLoteI, String FechaLoteF, String horaEnvio, String UsuarioOperacion, String NumLote, String Factura)
        {
            try
            {
                AccesoDatos CapaMedia = new AccesoDatos();
                if (Lote)
                {
                    string AnioInicio= desglosaFecha(FechaLoteI,"A");
                    string MesInicio = desglosaFecha(FechaLoteI,"M");
                    string DiaInicio = desglosaFecha(FechaLoteI,"D");
                    string AnioFin = desglosaFecha(FechaLoteF,"A");
                    string MesFin = desglosaFecha(FechaLoteF,"M");
                    string DiaFin = desglosaFecha(FechaLoteF,"D");
                    string SigloInicio = "1";
                    string SigloFin = "1";
                    string SigloOper = "1";
                    string AnioOper = DateTime.Now.Year.ToString().Substring(2,2);
                    AnioOper = AnioOper.PadLeft(2, '0');
                    string MesOper = DateTime.Now.Month.ToString();
                    MesOper = MesOper.PadLeft(2, '0');
                    string DiaOper = DateTime.Now.Day.ToString();
                    DiaOper = DiaOper.PadLeft(2, '0');
                    string HoraOper = DateTime.Now.Hour.ToString().PadLeft(2, '0') + DateTime.Now.Minute.ToString().PadLeft(2, '0') + DateTime.Now.Second.ToString().PadLeft(2, '0');
                    if (CapaMedia.RealizaDml(String.Format(Query.AlmacenaDocumentoEnvio, Cia, TipoFactura, SigloInicio, AnioInicio, MesInicio, DiaInicio, SigloFin, AnioFin, MesFin, DiaFin, HoraOper, SigloOper, AnioOper, MesOper, DiaOper, UsuarioOperacion, NumLote, Factura)) == 1)
                    {
                        ;
                    }
                    else
                    {
                        throw new Exception("Error al Insertar Datos TFAC042");
                    }
                }
                else //si es Documento Individual
                {
                    string AnioInicio = "";
                    string MesInicio = "";
                    string DiaInicio = "";
                    string AnioFin = "";
                    string MesFin = "";
                    string DiaFin = "";
                    string SigloInicio = "";
                    string SigloFin = "";
                    string SigloOper = "1";
                    string AnioOper = DateTime.Now.Year.ToString().Substring(2, 2);
                    AnioOper = AnioOper.PadLeft(2, '0');
                    string MesOper = DateTime.Now.Month.ToString();
                    MesOper = MesOper.PadLeft(2, '0');
                    string DiaOper = DateTime.Now.Day.ToString();
                    DiaOper = DiaOper.PadLeft(2, '0');
                    string HoraOper = Convert.ToString(DateTime.Now.Hour.ToString().PadLeft(2, '0') + DateTime.Now.Minute.ToString().PadLeft(2, '0') + DateTime.Now.Second.ToString().PadLeft(2, '0'));
                    string dml = String.Format(Query.AlmacenaDocumentoEnvio, Cia, TipoFactura, SigloInicio, AnioInicio, MesInicio, DiaInicio, SigloFin, AnioFin, MesFin, DiaFin, HoraOper, SigloOper, AnioOper, MesOper, DiaOper, UsuarioOperacion, NumLote, Factura);
                    if (CapaMedia.RealizaDml(dml) == 1)
                    {
                        ;
                    }
                    else
                    {
                        throw new Exception("Error al Insertar Datos xTFAC042");
                    }
                }

            }
            catch (Exception err)
            {
                throw new Exception("Error al Almacenar el Envio del Lote - "+err.Message);
            }
        }