public DsCarteraVendedor GetCarteraVendedorDetalleUVenta(int unidadVentaID, int categoriaUVentaID)
        {
            DsCarteraVendedor ds = new DsCarteraVendedor();

            SqlParameter pFechaDesde    = new SqlParameter("@FechaDesde", Utiles.BaseDatos.FechaToSql(this.FechaDesde));
            SqlParameter pFechaHasta    = new SqlParameter("@FechaHasta", Utiles.BaseDatos.FechaToSql(this.FechaHasta));
            SqlParameter pVendedorID    = new SqlParameter("@VendedorID", Utiles.BaseDatos.IntToSql(this.VendedorID));
            SqlParameter pUnidadVentaID = new SqlParameter("@UnidadVentaID", Utiles.BaseDatos.IntToSql(unidadVentaID));
            SqlParameter pCategoriaID   = new SqlParameter("@CategoriaUVentaID", Utiles.BaseDatos.IntToSql(categoriaUVentaID));

            Config.Conexion.LlenarTypeDataSet(ds.Datos, System.Data.CommandType.StoredProcedure, "CarteraPorVendedorPorMes", pVendedorID, pFechaDesde, pFechaHasta, pUnidadVentaID, pCategoriaID);
            return(ds);
        }
Exemple #2
0
        private void Page_Load(object sender, System.EventArgs e)
        {
            mesesAmostrar = (bool[])Session["MesesAmostrar"];
            meses         = (Hashtable)Session["Meses"];
            ICarteraVendedor cartera = CarteraVendedorFactory.GetCarteraVendedor();

            cartera.FechaDesde = (DateTime)Session["FechaDesde"];
            cartera.FechaHasta = (DateTime)Session["FechaHasta"];
            categoriaID        = (int)Session["CategoriaID"];
            cartera.VendedorID = (int)Session["VendedorID"];

            if (Session["DsCarteraVendedorDetalle"] == null)
            {
                dsCarteraVendedor = cartera.GetCarteraVendedorDetalle(categoriaID);
                Session["DsCarteraVendedorDetalle"] = dsCarteraVendedor;
            }
            else
            {
                dsCarteraVendedor = (DsCarteraVendedor)Session["DsCarteraVendedorDetalle"];
            }

            dsCarteraVendedorPorMes = (DsCarteraVendedor)Session["DsCarteraVendedorDetalleUVenta"];
        }
        private void BindGrid()
        {
            hashMeses = (Hashtable)Session["Meses"];

            ICarteraVendedor vendedorCartera = CarteraVendedorFactory.GetCarteraVendedor();

            vendedorCartera.FechaDesde = this.txtFechaDesde.Text == "" ? Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900") : Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaDesde.Text);
            vendedorCartera.FechaHasta = this.txtFechaHasta.Text == "" ? Utiles.Fechas.FormatFechaDDMMYYYY("01/12/2050") : Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaHasta.Text);

            Session["FechaDesde"]  = vendedorCartera.FechaDesde;
            Session["FechaHasta"]  = vendedorCartera.FechaHasta;
            Session["CategoriaID"] = Utiles.Validaciones.obtieneEntero(ddlCategoria.SelectedValue);

            int  mesDesde  = 0;
            int  mesHasta  = 0;
            bool banderita = false;
            int  cantMeses = 0;            //cantidad de meses a mostrar
            int  resto     = (int)Session["Resto"];

            // se piden meses del mismo año
            if (vendedorCartera.FechaDesde.Year == 1900 || vendedorCartera.FechaHasta.Year == 2050)
            {
                mesDesde = vendedorCartera.FechaDesde.Month <= vendedorCartera.FechaHasta.Month ? vendedorCartera.FechaDesde.Month : vendedorCartera.FechaHasta.Month;
                mesHasta = vendedorCartera.FechaDesde.Month <= vendedorCartera.FechaHasta.Month ? vendedorCartera.FechaHasta.Month : vendedorCartera.FechaDesde.Month;
            }
            else if (vendedorCartera.FechaDesde.Year == vendedorCartera.FechaHasta.Year)
            {
                mesDesde = vendedorCartera.FechaDesde.Month <= vendedorCartera.FechaHasta.Month ? vendedorCartera.FechaDesde.Month : vendedorCartera.FechaHasta.Month;
                mesHasta = vendedorCartera.FechaDesde.Month <= vendedorCartera.FechaHasta.Month ? vendedorCartera.FechaHasta.Month : vendedorCartera.FechaDesde.Month;
            }
            else             // se piden meses de años distintos
            {
                if (vendedorCartera.FechaDesde.Year > vendedorCartera.FechaHasta.Year)
                {
                    throw new Exception("Error!");                     //si el año inicial es menor que el final, error
                }
                else
                {
                    // si el mes inicial es menor o igual que el final, mostrar todos los meses
                    // o si la diferencias de años es mayor que 1
                    if (vendedorCartera.FechaDesde.Month <= vendedorCartera.FechaHasta.Month || vendedorCartera.FechaHasta.Year - vendedorCartera.FechaDesde.Year > 1)
                    {
                        banderita = true;
                        for (int m = 1; m <= 12; m++)
                        {
                            meses[m] = true;
                        }
                        cantMeses = 12;
                    }
                    else                     // si el mes final es mayor que el final....
                    {
                        banderita = true;

                        for (int m = 1; m <= 12; m++)
                        {
                            if (m >= vendedorCartera.FechaDesde.Month && m <= 12)
                            {
                                meses[m] = true;
                                cantMeses++;
                            }
                            else if (m <= vendedorCartera.FechaHasta.Month)
                            {
                                meses[m] = true;
                                cantMeses++;
                            }
                            else
                            {
                                meses[m] = false;
                            }
                        }
                    }
                }
            }

            // esto es para cuando los años ingresados son iguales
            if (!banderita)
            {
                for (int m = 1; m <= 12; m++)
                {
                    if (m >= vendedorCartera.FechaDesde.Month && m <= vendedorCartera.FechaHasta.Month)
                    {
                        meses[m] = true;
                        cantMeses++;
                    }
                    else
                    {
                        meses[m] = false;
                    }
                }
            }

            string orden = "";
            int    ordenar;

            if (this.rbtOrdenAlfabetico.Checked)
            {
                if (this.ddlOrdenAlfabetico.SelectedIndex == 0)
                {
                    ordenar = 1;
                }
                else
                {
                    ordenar = 2;
                }
            }
            else
            {
                if (this.ddlOrdenFacturacion.SelectedIndex == 0)
                {
                    ordenar = 3;
                }
                else
                {
                    ordenar = 4;
                }
            }

            Session["MesesAmostrar"]                  = meses;
            vendedorCartera.VendedorID                = this.busqVendedor.VendedorID == "" ? 0 : Convert.ToInt32(this.busqVendedor.VendedorID);
            vendedorCartera.UnidadVentaID             = Utiles.Validaciones.obtieneEntero(this.ddlUnidadVenta.SelectedValue);
            Session["DsCarteraVendedorDetalleUVenta"] = vendedorCartera.GetCarteraVendedorDetalleUVenta(Utiles.Validaciones.obtieneEntero(this.ddlUnidadVenta.SelectedValue), Utiles.Validaciones.obtieneEntero(ddlCategoria.SelectedValue));
            Session["VendedorID"] = vendedorCartera.VendedorID;
            DataSet ds = new DataSet();

            SisPackController.AdministrarGrillas.Configurar(this.hgVendedoresCartera, "VendedorID", this.CantidadOpciones);

            this.hgVendedoresCartera.AllowPaging = false;

            //Vendedores
            IVendedor    vendedor     = VendedorFactory.GetVendedor();
            DsVendedores dsVendedores = null;

            dsVendedores = vendedor.GetVendedoresDataSet(vendedorCartera.FechaDesde, vendedorCartera.FechaHasta, vendedorCartera.UnidadVentaID, vendedorCartera.VendedorID, ordenar);

            ds.Tables.Add(dsVendedores.Datos.Clone());
            ds.Tables[0].TableName = "Vendedores";

            foreach (System.Data.DataRow row in dsVendedores.Datos.Rows)
            {
                ds.Tables["Vendedores"].ImportRow(row);
            }

            //Cuentas
            //ICarteraVendedor vendedorCartera = VendedorCarteraFactory.GetVendedorCartera();
            DsCarteraVendedor dsVendedoresCartera = vendedorCartera.GetCarteraVendedorDetalle(Utiles.Validaciones.obtieneEntero(ddlCategoria.SelectedValue));

            Session["DsCarteraVendedorDetalle"] = dsVendedoresCartera;
            ds.Tables.Add(dsVendedoresCartera.Datos.Clone());
            ds.Tables[1].TableName = "CarteraVendedorDetalle";

            foreach (System.Data.DataRow row in dsVendedoresCartera.Datos.Rows)
            {
                ds.Tables["CarteraVendedorDetalle"].ImportRow(row);
            }

            //Relacion Agencias => GuiasTDE
            DataColumn dc1 = ds.Tables[0].Columns["VendedorID"];

            DataColumn dc2 = ds.Tables[1].Columns["VendedorID"];

            DataRelation dr = new DataRelation("Vendedor_VendedorCartera", dc1, dc2, false);

            ds.Relations.Add(dr);

            this.hgVendedoresCartera.DataSource  = ds;
            this.hgVendedoresCartera.DataMember  = "Vendedores";
            this.hgVendedoresCartera.AllowPaging = false;
            this.hgVendedoresCartera.DataBind();
        }