Exemple #1
0
        public List <datos> GetOrdenes(string Orden)
        {
            var persons = new List <datos>();

            IHojaRutaRepartidor hojaRutaRepartidor = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();
            //hojaRutaRepartidor.AgenciaID = Convert.ToInt32(Agencia);
            DsHojaRutaRepartidorOrdenes dso = new DsHojaRutaRepartidorOrdenes();

            dso = hojaRutaRepartidor.GetCodigoBarrasByOR(Orden);

            foreach (DsHojaRutaRepartidorOrdenes.DatosCBRow drr in dso.DatosCB.Rows)
            {
                datos person = new datos
                {
                    OrdenRetiroConceptoFacturacion = Convert.ToInt32(drr.OrdenRetiroConceptoFacturacion),
                    ordenRetiro     = Convert.ToInt32(drr.OrdenRetiroID),
                    descripProducto = drr.Descripcion,
                    Importe         = Convert.ToDouble(drr.ImporteConcepto),
                    CB = drr.CodigoBarras
                };

                persons.Add(person);
            }
            return(persons);
        }
Exemple #2
0
        public List <HRRmanual> GetGuiasOrdenes(string HRRID)
        {
            var persons = new List <HRRmanual>();
            DsHojaRutaRepartidorOrdenes dso = new DsHojaRutaRepartidorOrdenes();
            IHojaRutaRepartidor         hrr = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();

            hrr.HojaRutaRepartidorID = Convert.ToInt32(HRRID);
            dso = hrr.GetGuiasOrdenes();

            foreach (DsHojaRutaRepartidorOrdenes.HRRmanualRow drr in dso.HRRmanual)
            {
                HRRmanual person = new HRRmanual
                {
                    GuiaID        = Convert.ToInt32(drr.GuiaID),
                    Guia          = drr.NroGuia,
                    OrdenRetiroID = drr.OrdenRetiroID,
                    OrdenRetiro   = drr.NumeroOrden,
                    HRRManual     = drr.IsHRRManualNull() ? "0" : drr.HRRManual,//drror.IsUnidadVentaIDNull() ? 0 : Convert.ToInt32(drror.UnidadVentaID);
                    HRRID         = Convert.ToInt32(drr.HojaRutaRepartidorID)
                };
                persons.Add(person);
            }


            return(persons);
        }
        private void Editar()
        {
            IHojaRutaRepartidor hojaRutaRepartidor = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();

            hojaRutaRepartidor.HojaRutaRepartidorID = int.Parse(hdnHRR.Value);
            hojaRutaRepartidor.Consultar();
            ddlMoviles.SelectedValue = hojaRutaRepartidor.MovilID.ToString();//para que cargue el movilid
            ddlMoviles.Enabled       = false;
            txtFechaEmision.Text     = hojaRutaRepartidor.Fecha.ToShortDateString();
            if (hojaRutaRepartidor.EstadoHojaRutaRepartidor == 1)//generada
            {
                hdnCargaInicial.Value = "1";
            }
            else if (hojaRutaRepartidor.EstadoHojaRutaRepartidor == 8)//guardada
            {
                hdnCargaInicial.Value = "8";
            }
            else if (hojaRutaRepartidor.EstadoHojaRutaRepartidor == 2)//confirmada
            {
                hdnCargaInicial.Value = "2";
            }
            else if (hojaRutaRepartidor.EstadoHojaRutaRepartidor == 3)//Generada por Coelctora
            {
                hdnCargaInicial.Value = "8";
                CargarComboMovil();
                ddlMoviles.Enabled       = true;
                butValidaOrdenes.Visible = true;
                butValidaOrdenes.Enabled = true;
            }
            btnGenerar.Visible = true;
        }
Exemple #4
0
        private void butAgregar_Click(object sender, System.EventArgs e)
        {
            try
            {
                BaseValidator bv;
                bv         = (BaseValidator)phGuiaValid.FindControl("guiaEntero");
                bv.Enabled = true;
                bv.Validate();
                if (!bv.IsValid)
                {
                    return;
                }
                DsHojaRutaRepartidor ds = new DsHojaRutaRepartidor();
                if (Session["DsGuias"] != null)
                {
                    ds = (DsHojaRutaRepartidor)Session["DsGuias"];
                }
                string cadena = txtGuia.Text;
                if (cadena.Length >= 10)
                {
                    string tipo = cadena.Substring(0, 1);
//					tipo = tipo == "3" ? "A" : "B";
                    tipo = NegociosSisPackInterface.SisPack.TipoGuia(tipo);
                    string sucursal          = cadena.Substring(1, 4);
                    string guia              = cadena.Substring(5);
                    int    guiaID            = SisPackController.LlenarCombos.GuiaID(tipo, sucursal, Utiles.Validaciones.obtieneEntero(guia));
                    IHojaRutaRepartidor hoja = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();
                    hoja.AgenciaID = AgenciaConectadaID;
                    DsHojaRutaRepartidor dsNuevo = new DsHojaRutaRepartidor();
                    dsNuevo = hoja.AgregarGuiaHRR(guiaID);
                    if (dsNuevo.Guias.Count == 1)
                    {
                        foreach (DsHojaRutaRepartidor.GuiasRow drNuevo in dsNuevo.Guias)
                        {
                            DsHojaRutaRepartidor.GuiasRow dr = ds.Guias.NewGuiasRow();
                            dr.GuiaID           = drNuevo.GuiaID;
                            dr.NroCompletoGuia  = drNuevo.NroCompletoGuia;
                            dr.LocalidadDescrip = drNuevo.LocalidadDescrip;
                            ds.Guias.Rows.Add(dr);
                        }
                    }
                    Session["DsGuias"]         = ds;
                    Session["DsGuiasAAgregar"] = ds;
                    txtGuia.Text = "";
                    BindGrid();
                }
                else if (cadena.Length == 0)
                {
                    Exception ex = new Exception("Debe ingresar el código de la guía");
                    throw ex;
                }
            }
            catch (Exception ex)
            {
                ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message);
            }
        }
Exemple #5
0
        private void BindGrid(int currentPage)
        {
            try
            {
                SisPackController.AdministrarGrillas.Configurar(dtgHojasRuta, "HojaRutaRepartidorID", 20);

                IHojaRutaRepartidor hojaRutaRepartidor = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();
                hojaRutaRepartidor.AgenciaID             = this.AgenciaConectadaID;
                hojaRutaRepartidor.NroHojaRutaRepartidor = Utiles.Validaciones.obtieneEntero(this.txtHojaRuta.Text);
                hojaRutaRepartidor.Fecha            = this.txtFecha.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFecha.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900");
                hojaRutaRepartidor.MovilDescripcion = this.txtMovil.Text;
                this.dtgHojasRuta.DataSource        = hojaRutaRepartidor.GetHojaRutaRepartidorALLDataSet();
                this.dtgHojasRuta.CurrentPageIndex  = currentPage;
                this.dtgHojasRuta.DataBind();
            }
            catch (Exception ex)
            {
                ManejaErrores(ex);
            }
        }
Exemple #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // configuro el acceso a los webservices
            ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);

            scriptManager.Services.Add(new ServiceReference("~/WebServices/Colectora.asmx"));

            // Si es la primer vez que ingreso a la pagina, traigo las guias que estan en condiciones de ser incluidas en la HRR
            if (!IsPostBack)
            {
                IHojaRutaRepartidor hojaRutaRepartidor = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();
                hojaRutaRepartidor.AgenciaID = this.AgenciaConectadaID;
                ds = hojaRutaRepartidor.GetHojaRutaRepartidorDataSet();
                Session["HojaRutaRepartidorColectora"] = ds;
            }

            if (!Page.IsPostBack)
            {
                Session["GuiasDefectuosas"]            = null;
                Session["GuiasNRHojaRutaRepartidor"]   = null;
                Session["DsGuiasNRHojaRutaRepartidor"] = null;
            }
            //else
            //{
            //    Hashtable hGuiasNr = new Hashtable();
            //    if (Session["GuiasNRHojaRutaRepartidor"] != null)
            //    {
            //        hGuiasNr = (Hashtable)Session["GuiasNRHojaRutaRepartidor"];

            //        if (hGuiasNr.Count > 0)
            //        {
            //            MostrarGuiasNoRecepcionables(hGuiasNr);
            //        }
            //    }

            //}
        }
Exemple #7
0
        private void butConfirmar_Click(object sender, System.EventArgs e)
        {
            usuario = (IUsuarios)Session["usuario"];

            bool            ok        = true;
            Hashtable       hGuiasNR  = new Hashtable(); // Guías que no están en condiciones de ser recibidas
            DsGuiaColectora dsGuiasNR = new DsGuiaColectora();

            string CBIngresados = txtCodigosBarraIngresado.Text.Split('-')[0];

            // Obtengo el listado de códigos ingresados
            string[] codigosIngresados = CBIngresados.Split('@');

            int cant = Utiles.Validaciones.obtieneEntero(this.txtGuiaIndex.Text);
            DsDetalleHojaRutaRepartidor dsDetalle = new DsDetalleHojaRutaRepartidor();

            for (int i = 0; i < codigosIngresados.Length - 1; i++)
            {
                int guiaID = Utiles.Validaciones.obtieneEntero(codigosIngresados[i]);

                // si la guía existe en el sistema, la ingreso a la HRR
                if (guiaID > 0)
                {
                    ds = (DsHojaRutaRepartidor)Session["HojaRutaRepartidorColectora"];
                    // Reviso si la guía puede ser incluida en la HRRepartidor. Busco en el Ds que se cargo al principio
                    if (ds.Guias.Select("GuiaID = " + guiaID).Length > 0)
                    {
                        DsDetalleHojaRutaRepartidor.DatosRow drDetalle = (DsDetalleHojaRutaRepartidor.DatosRow)dsDetalle.Datos.NewRow();
                        drDetalle.AgenciaID = AgenciaConectadaID;
                        drDetalle.EstadoGuiaHojaRutaRepartidor = 1;
                        drDetalle.GuiaID               = guiaID;
                        drDetalle.Prioridad            = 0;
                        drDetalle.GenerarFacturaRemito = false;
                        dsDetalle.Datos.AddDatosRow(drDetalle);
                    } // fin if EsRecepcionable
                    else
                    // La guia no puede ser incluida. Consulto el motivo. Guardo el nro y el motivo por el cual no puede ser incluida
                    {
                        // acá debería guardar las que no se pueden recibir y luego mostrarlas en un alert...
                        IGuia oGuia = GuiaFactory.GetGuia();
                        oGuia.GuiaID = guiaID;
                        oGuia.ConsultarGuiaColectora();
                        oGuia.UnidadNegocioID = this.UnidadNegocioID;
                        oGuia.UsuarioID       = usuario.UsuarioID;

                        string guia = oGuia.NroSucursalGuia + "-" + oGuia.NroGuia + "-" + oGuia.TipoGuia;
                        //if (hGuiasNR.ContainsKey(guia) == false)
                        //{
                        //    hGuiasNR.Add(guia, oGuia.MotivoNoRecepcionable);
                        //}
                        ok = false;

                        if (dsGuiasNR.Datos.FindByGuiaID(oGuia.GuiaID) == null)
                        {
                            dsGuiasNR.Datos.AddDatosRow(oGuia.GuiaID, "", 0, 0, 0, 0, 0, 0, DateTime.Now, 0, 0, 0, "", DateTime.Now, "", DateTime.Now, "", "", 0, 0, 0, "", DateTime.Now, 0, "", false, 0, false, false, 0, 0, 0, 0, oGuia.MotivoNoRecepcionable, "", "", "", "", 0, 0, false, false, guia);
                        }
                    }
                }
            } // fin for
            this.txtSeGuardo.Text           = "0";
            this.txtSeGuardoSinErrores.Text = "0";

            // Si hay guias que guardar, genero la Hoja de Ruta del Repartidor
            if (dsDetalle.Datos.Count > 0)
            {
                IHojaRutaRepartidor hojaRutaRepartidor = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();
                hojaRutaRepartidor.DsDetalle = dsDetalle;
                hojaRutaRepartidor.Fecha     = DateTime.Now;
                hojaRutaRepartidor.EstadoHojaRutaRepartidor = (int)NegociosSisPackInterface.SisPack.EstadoHojaRutaRepartidor.GeneradaporColectoradeDatos; //Generada por Colectora de Datos
                hojaRutaRepartidor.UsuarioID = usuario.UsuarioID;
                hojaRutaRepartidor.AgenciaID = this.AgenciaConectadaID;
                hojaRutaRepartidor.Generar();
                hojaRutaRepartidor.Consultar();
                lblGuia.Text    = string.Empty;
                lblCliente.Text = string.Empty;
                lblDestino.Text = string.Empty;
                lblBultos.Text  = string.Empty;
                txtNroHojaRutaRepartidor.Text = hojaRutaRepartidor.NroHojaRutaRepartidor.ToString();
                //uppnlDatosGuias.Update();
                this.txtSeGuardo.Text = "1";
            }

            Session["GuiasNRHojaRutaRepartidor"] = hGuiasNR;
            if (ok)
            {
                Session["GuiasNRHojaRutaRepartidor"]   = null;
                Session["DsGuiasNRHojaRutaRepartidor"] = null;
                this.txtSeGuardoSinErrores.Text        = "1";
            }
            else
            {
                Session["GuiasNRHojaRutaRepartidor"]   = hGuiasNR;
                Session["DsGuiasNRHojaRutaRepartidor"] = dsGuiasNR;
                if (Session["DsGuiasNRHojaRutaRepartidor"] != null)
                {
                    dsGuiasNR = (DsGuiaColectora)Session["DsGuiasNRHojaRutaRepartidor"];

                    if (dsGuiasNR.Datos.Count > 0)
                    {
                        MostrarGuiasNoRecepcionables(dsGuiasNR);
                    }
                }
                //Response.Redirect("HojaRutaRepartidor.aspx?d=1");
            }


            string txtSeGuardo = this.txtSeGuardo.ClientID;
            string txtNroHojaRutaRepartidor1 = this.txtNroHojaRutaRepartidor.ClientID;
            string txtSeGuardoSinErrores     = this.txtSeGuardoSinErrores.ClientID;

            System.Text.StringBuilder scriptString = new System.Text.StringBuilder();
            scriptString.Append("<script language='javascript'>function MjeError(){\n");
            scriptString.Append("if (window.document.getElementById('" + txtSeGuardo + "').value == '0'){\n");
            scriptString.Append("	alert('No se genero Hoja de Ruta. Sin datos que guardar.');\n");
            scriptString.Append("if (window.document.getElementById('" + txtSeGuardoSinErrores + "').value == '0'){\n");
            scriptString.Append("		window.document.getElementById('tblGuias').style.display = 'none';\n");
            scriptString.Append("		window.document.getElementById('tblBotones').style.display = 'none';\n");
            scriptString.Append("		window.document.getElementById('tblDatos').style.display = 'none';\n");
            scriptString.Append("}\n");
            scriptString.Append("	} else {\n");
            scriptString.Append("	alert('Datos Guardados. Se generó la Hoja de Ruta de Reparto: Nº ' + window.document.getElementById('"+ txtNroHojaRutaRepartidor1 + "').value);\n");

            scriptString.Append("if (window.document.getElementById('" + txtSeGuardoSinErrores + "').value == '1'){\n");
            scriptString.Append("window.location = 'HojaRutaRepartidor.aspx';\n");
            scriptString.Append("}else{\n");
            scriptString.Append("		window.document.getElementById('tblGuias').style.display = 'none';\n");
            scriptString.Append("		window.document.getElementById('tblBotones').style.display = 'none';\n");
            scriptString.Append("		window.document.getElementById('tblDatos').style.display = 'none';\n");
            scriptString.Append("}\n");
            scriptString.Append("}\n");
            scriptString.Append("}\n</script>");

            Page.RegisterClientScriptBlock("MjeError", scriptString.ToString());

            //ScriptManager.RegisterClientScriptBlock(this.uppnlBotones,
            //                                                uppnlBotones.GetType(),
            //                                                "MjeError",
            //                                                script,
            //                                                true);
        }
Exemple #8
0
        public List <HRRmanual> GuardarHRRManuales(string nombrep)
        {
            bool bandera = false;
            var  persons = new List <HRRmanual>();
            //elimina las llaves
            string prueba1 = nombrep.Replace("}", " ");
            string prueba  = prueba1.Replace("{", " ");
            //elimina los puntos
            string datos = prueba.Replace(":", " ");

            DsHojaRutaRepartidorOrdenes.HRRmanualDataTable dso = new DsHojaRutaRepartidorOrdenes.HRRmanualDataTable();
            string[] separadas;

            string[] CadaLinea;

            separadas = datos.Split('$');

            int tamaño = separadas.Count();

            for (int i = 0; i < separadas.Count(); i++)
            {
                CadaLinea = separadas[i].Split(',');



                string GuiaID = CadaLinea[0].Replace("GuiaID", " ");

                if (GuiaID != "")
                {
                    string GuiaIDBien = GuiaID.ToString().Replace('"', ' ').Trim();

                    string OrdenRetiroID     = CadaLinea[1].Replace("OrdenRetiroID", " ");
                    string OrdenRetiroIDBien = OrdenRetiroID.ToString().Replace('"', ' ').Trim();

                    string HRRID     = CadaLinea[2].Replace("HRRID", " ");
                    string HRRIDBien = HRRID.ToString().Replace('"', ' ').Trim();

                    string Guia     = CadaLinea[3].Replace("Guia", " ");
                    string GuiaBien = Guia.ToString().Replace('"', ' ').Trim();

                    string OrdenRetiro     = CadaLinea[4].Replace("OrdenRetiro", " ");
                    string OrdenRetiroBien = OrdenRetiro.ToString().Replace('"', ' ').Trim();

                    string HRRManual     = CadaLinea[5].Replace("HRRManual", " ");
                    string HRRManualBien = HRRManual.ToString().Replace('"', ' ').Trim();


                    dso.AddHRRmanualRow(HRRIDBien, GuiaIDBien, GuiaBien, OrdenRetiroIDBien, OrdenRetiroBien, HRRManualBien);
                }
            }


            try
            {
                foreach (DsHojaRutaRepartidorOrdenes.HRRmanualRow drr in dso.Rows)
                {
                    IHojaRutaRepartidor hr = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();
                    hr.HojaRutaRepartidorID        = Convert.ToInt32(drr.HojaRutaRepartidorID);
                    hr.NroHojaRutaRepartidorManual = drr.HRRManual;
                    hr.OrdenRetiroID = drr.IsOrdenRetiroIDNull() ? 0 : Convert.ToInt32(drr.OrdenRetiroID);
                    hr.GuiaID        = drr.IsGuiaIDNull() ? 0 : Convert.ToInt32(drr.GuiaID);
                    if (hr.NroHojaRutaRepartidorManual != "0")
                    {
                        try
                        {
                            if (hr.NroHojaRutaRepartidorManual.Substring(0, 18).ToString() == "<input type=\\ text")
                            {//esto es para cuando no se cierra la grilla
                                throw new Exception("Guardar cambios antes de validar.");
                            }
                        }
                        catch {
                        }
                        //else
                        //{
                        hr.GuardarHRRmanual();


                        //}
                    }

                    HRRmanual person = new HRRmanual
                    {
                        GuiaID        = Convert.ToInt32((drr.GuiaID)),
                        Guia          = drr.NroGuia,
                        OrdenRetiroID = drr.OrdenRetiroID,
                        OrdenRetiro   = drr.OrdenRetiroID,
                        HRRManual     = drr.HRRManual,
                        HRRID         = Convert.ToInt32(drr.HojaRutaRepartidorID)
                    };
                    persons.Add(person);
                }

                return(persons);
            }
            catch (Exception ex) {
                throw new Exception(ex.Message);
            }
        }
        private string ExportarPDF()
        {
            if (hdnHRR.Value == "")
            {
                hdnHRR.Value = Session["HRRID"].ToString();
            }
            Logger.Info("Entra a exportar");
            IMovilCompletoDominio _movilDominio            = IoC.GetObjectDominio <IMovilCompletoDominio>();
            List <Dominio.Entidades.MovilCompleto> Moviles = new List <Dominio.Entidades.MovilCompleto>();
            //  string txtNroHojaRuta = Convert.ToInt32(hdnHRR.Value);//es el mismo numero
            IHojaRutaRepartidor hojaRutaRepartidor = HojaRutaRepartidorFactory.GetHojaRutaRepartidor();

            hojaRutaRepartidor.HojaRutaRepartidorID = Convert.ToInt32(hdnHRR.Value);
            DataSet                    GenDS = new DataSet();
            ReportDocument             oRD   = new ReportDocument();
            ExportOptions              oExO;
            DiskFileDestinationOptions oExDo = new DiskFileDestinationOptions();
            DsHojaRutaRepartidor       ds    = hojaRutaRepartidor.GetGuiasHojaRutaRepartidor();
            DsHojaRutaRepartidor       dsag  = new DsHojaRutaRepartidor();

            DsHojaRutaRepartidor dsOrd = new DsHojaRutaRepartidor();

            dsOrd = hojaRutaRepartidor.LlenarDsHROrdenes();

            int nroHojaRuta = Convert.ToInt32(hdnHRR.Value);     // Convert.ToInt32(this.txtNroHojaRuta.Text);

            try
            {
                Logger.Info("Ruta");
                Logger.Info(Server.MapPath("~") + "/ReportesPDF/" + "HojaRutaRepartidor_" + nroHojaRuta + "_" + AgenciaConectadaID + ".pdf");
                string sNombrePDF = Server.MapPath("~") + "/ReportesPDF/" + "HojaRutaRepartidor_" + nroHojaRuta + "_" + AgenciaConectadaID + ".pdf";
                if (System.IO.File.Exists(sNombrePDF))
                {
                    System.IO.File.Delete(sNombrePDF);
                }
                Logger.Info("pasa");
                string nombrePDf = "HojaRutaRepartidor_" + nroHojaRuta + "_" + AgenciaConectadaID + ".pdf";
                //Load report
                //   oRD.Load(Server.MapPath("~" + "/Reportes/HojaRutaRepartidor.rpt"));
                oRD.Load(Server.MapPath("." + "/Reportes/HojaRutaRepartidor.rpt"));
                Logger.Info(Server.MapPath("." + "/Reportes/HojaRutaRepartidor.rpt"));
                Logger.Info("pasa cb");


                DsHojaRutaRepartidor.GuiasRow[]   dv   = (DsHojaRutaRepartidor.GuiasRow[])ds.Guias.Select("", "LocalidadDescrip");
                DsHojaRutaRepartidor.OrdenesRow[] dror = (DsHojaRutaRepartidor.OrdenesRow[])dsOrd.Ordenes.Select("", "");

                DsHojaRutaRepartidor.UnidadesLogisticaRow[] du = (DsHojaRutaRepartidor.UnidadesLogisticaRow[])ds.UnidadesLogistica.Select("", "");
                Logger.Info("Carga datos");
                //Creo un nuevo registro Datos
                DsHojaRutaRepartidor.DatosRow db = (DsHojaRutaRepartidor.DatosRow)dsag.Datos.NewDatosRow();

                db.AgenciaID = Convert.ToInt32(AgenciaConectadaID);
                IAgencia ag = AgenciaFactory.GetAgencia();
                ag.AgenciaID = Convert.ToInt32(AgenciaConectadaID);
                ag.Consultar();
                db.EstadoHojaRutaRepartidorDescrip = "";
                db.FechaEmision = Convert.ToDateTime(DateTime.Now);
                db.EstadoHojaRutaRepartidorID = 0;
                db.HojaRutaRepartidorID       = Convert.ToInt32(hdnHRR.Value); // Convert.ToInt32(this.txtHojaRutaID.Text);
                db.NroHojaRutaRepartidor      = nroHojaRuta;
                Logger.Info("va cargar imagen");
                db.imagenCB        = CrearImagenCB(ag.SucursalDGI.ToString(), nroHojaRuta.ToString());
                db.NroSucursalGuia = "";

                Moviles = _movilDominio.GetMovilByHojaRutaReparto(Convert.ToInt32(hdnHRR.Value));

                if (Moviles.Count > 0)
                {
                    db.MovilDescripcion = Moviles[0].Patente;
                    //fijarme porque guardaba el chofer!!!! REVISAR
                    db.Repartidor = Moviles[0].Chofer;
                }

                foreach (DsHojaRutaRepartidor.GuiasRow drr in ds.Guias)
                {
                    Logger.Info("va cargar imagen guia");
                    drr.CB = CrearImagenCBGUIA(drr.TipoGuia, drr.NroSucursalGuia, Convert.ToString(drr.NroGuia));
                }

                dsag.Datos.AddDatosRow(db);

                foreach (DsHojaRutaRepartidor.GuiasRow dr in dv)
                {
                    dsag.Guias.ImportRow(dr);
                }

                foreach (DsHojaRutaRepartidor.OrdenesRow dr in dror)
                {
                    dsag.Ordenes.ImportRow(dr);
                }

                foreach (DsHojaRutaRepartidor.UnidadesLogisticaRow dr in du)
                {
                    dsag.UnidadesLogistica.ImportRow(dr);
                }

                oRD.SetDataSource(dsag);


                //Export to PDF
                oExDo.DiskFileName = sNombrePDF;
                oExO = oRD.ExportOptions;
                oExO.ExportDestinationType = ExportDestinationType.DiskFile;
                oExO.ExportFormatType      = ExportFormatType.PortableDocFormat;
                oExO.DestinationOptions    = oExDo;
                oRD.Export();
                oRD.Close();
                oRD.Dispose();

                return(nombrePDf);
            }
            catch (Exception ex)
            {
                Logger.Error(ex.Message);
                HttpContext.Current.Response.Write("Error al exportar a PDF: " + ex.Message);
                throw new Exception(ex.Message);
            }
            finally
            {
                oRD.Close();
                oRD.Dispose();
            }
        }