void webPagina_Navigating(object sender, WebBrowserNavigatingEventArgs e) { const string sUrlVacio = "about:blank"; if (e.Url.ToString() == sUrlVacio) { string sXmls = this.webPagina.Document.GetElementById("preXmls").InnerText; var aXmls = sXmls.Split('\n'); UtilLocal.MensajeInformacion(sXmls); } }
private void LlenarVentasProc() { // Se muestra la ventana de "Cargando.." Cargando.Mostrar(); int iVendedorID = Util.Entero(this.cmbVendedor.SelectedValue); this.oComisiones.ctlDetalle.LimpiarDetalle(); //this.dgvGerentesComisiones.Visible = false; this.pnlUtVendedores.Visible = false; //this.lblUtilSuc.Visible = false; // Se muestra u oculta la columna de Utilidad this.dgvVentas.Columns["Utilidad"].Visible = this.bVerAdicional; this.dgvTotales.Columns["TotalesUtilidad"].Visible = this.bVerAdicional; // Se obtienen los datos del vendedor this.oMetaVendedor = Datos.GetEntity <MetaVendedor>(c => c.VendedorID == iVendedorID); if (this.oMetaVendedor == null) { Cargando.Cerrar(); UtilLocal.MensajeInformacion("No se ha especificado una meta al vendedor."); return; } this.oMetaSucursal = Datos.GetEntity <MetaSucursal>(c => c.SucursalID == this.oMetaVendedor.SucursalID); this.mMetaSucursal = this.oMetaSucursal.UtilSucursal; this.mMetaVendedor = (this.oMetaVendedor.EsGerente ? this.oMetaSucursal.UtilGerente : this.oMetaSucursal.UtilVendedor); // Quitar variables globales de metavendedor y metasucursa, sólo deberían usarse las locales. Revisar // Se manda llamar el procedimiento para obtener los datos var oParams = new Dictionary <string, object>(); oParams.Add("ModoID", 1); oParams.Add("VendedorID", iVendedorID); oParams.Add("Desde", this.dtpDe.Value.Date); oParams.Add("Hasta", this.dtpA.Value.Date); oParams.Add("SucursalID", Theos.SucursalID); //var oDatos = Datos.ExecuteProcedure<pauComisiones_Result>("pauComisiones", oParams); var oDatos = Datos.ExecuteProcedure <pauComisiones2_Result>("pauComisiones2test", oParams).OrderBy(c => c.Caracteristica == "D"); //var oDatos = Datos.ExecuteProcedure<pauComisiones2_Result>("pauComisiones", oParams); //var oDatos = Datos.ExecuteProcedure<pauComisiones2_Result>("pauComisiones3test5", oParams); #region LLenarGrid // Se llena el grid this.dgvVentas.Rows.Clear(); foreach (var oReg in oDatos) { //int iFila = this.dgvVentas.Rows.Add(oReg.VentaID, oReg.Caracteristica, oReg.Fecha, oReg.Cliente, oReg.Folio, oReg.Importe, oReg.Cobranza // , oReg.Utilidad, oReg.Comision, (oReg.Caracteristica.EndsWith("9500") ? "SÍ" : "")); int iFila = this.dgvVentas.Rows.Add(oReg.VentaID, oReg.Caracteristica, oReg.Fecha, oReg.Cliente, oReg.Folio, oReg.Importe, oReg.Cobranza , oReg.Utilidad, oReg.Comision, oReg.ComisionFija, (oReg.Es9500.Valor() ? "SÍ" : "")); // Se marcan los colores switch (oReg.Caracteristica) { case "VD9500": case "VD": this.dgvVentas.Rows[iFila].DefaultCellStyle.ForeColor = Color.Gray; break; case "D9500": case "D": this.dgvVentas.Rows[iFila].DefaultCellStyle.ForeColor = Color.Red; break; } } #endregion // Se llena la línea de totales, del grid decimal mTotalImporte = 0, mTotalCobranza = 0; decimal mComision = 0, mUtilidad = 0; decimal mComisionVariable = 0, mComisionNegativa = 0; decimal mComision9500 = 0, mUtilidad9500 = 0, mComNeg9500 = 0, mUtilNeg9500 = 0; decimal mComisionFija = 0; decimal mComisionFijaDev = 0; decimal mComision9500Dev = 0; #region CalculaComisiones foreach (DataGridViewRow Fila in this.dgvVentas.Rows) { mTotalImporte += Util.Decimal(Fila.Cells["Importe"].Value); mTotalCobranza += Util.Decimal(Fila.Cells["Cobranza"].Value); mUtilidad += Util.Decimal(Fila.Cells["Utilidad"].Value); mComision = Util.Decimal(Fila.Cells["Comision"].Value); // bool b9500 = Util.Cadena(Fila.Cells["Caracteristica"].Value).Contains("9500"); bool b9500 = (Util.Cadena(Fila.Cells["Detalle_9500"].Value) == "SÍ"); //si es 9500 y es devolución se suman la cantidad if (b9500) { if (Util.Cadena(Fila.Cells["Caracteristica"].Value).Substring(0, 1) == "D") { mComision9500Dev += Util.Decimal(Fila.Cells["Comision"].Value); } } if (Util.Cadena(Fila.Cells["Caracteristica"].Value).Substring(0, 1) == "V") { mComisionVariable += mComision; mComision9500 += (b9500 ? mComision : 0); mUtilidad9500 += (b9500 ? mUtilidad : 0); mComisionFija += Util.Decimal(Fila.Cells["ComisionFija"].Value); } else { //mComisionNegativa += mComision; if (!b9500) { mComisionNegativa += Util.Decimal(Fila.Cells["Comision"].Value); } mComNeg9500 += (b9500 ? mComision : 0); mUtilNeg9500 += (b9500 ? mUtilidad : 0); mComisionFijaDev += Util.Decimal(Fila.Cells["ComisionFija"].Value); } // Para sumar la comisión de las ventas 9500 /* if (Util.ConvertirCadena(Fila.Cells["Caracteristica"].Value) == "V9500") * { * mComision9500 += mComision; * mUtilidad9500 += mUtilidad; * } */ } #endregion this.dgvTotales["TotalesImporte", 0].Value = mTotalImporte; this.dgvTotales["TotalesCobranza", 0].Value = mTotalCobranza; this.dgvTotales["TotalesUtilidad", 0].Value = mUtilidad; this.dgvTotales["TotalesComision", 0].Value = (mComisionVariable + mComisionNegativa + mComNeg9500); //se cambio a resta, original suma this.dgvTotales["TotalFija", 0].Value = mComisionFija; // Se obtienen los totales de tienda this.LlenarUtilidadSuc(); #region LlenarEtiquetas // Se llenan los totales del vendedor decimal mFijo = this.oMetaVendedor.SueldoFijo; decimal mUtilidadSuc = this.mUtilidadSuc; // (this.mUtilidadSuc - this.mGastoSuc); // Se calcula el total decimal mUtilMinimo = (this.oMetaVendedor.EsGerente ? this.oMetaSucursal.UtilGerente : this.oMetaSucursal.UtilVendedor); decimal mComisionGerente = 0; if (mUtilidadSuc >= this.oMetaSucursal.UtilSucursalMinimo && mUtilidad >= mUtilMinimo) { if (this.oMetaVendedor.EsGerente) { /* * decimal mExcedente = (mUtilidadSuc - this.mMetaSucursal); * int iMultiplicador = (int)(mExcedente / this.oMetaVendedor.IncrementoUtil.Valor()); * decimal mComisionGerente = (this.oMetaVendedor.IncrementoFijo.Valor() * iMultiplicador); */ mComisionGerente = VentasProc.CalcularComisionGerente(this.oMetaSucursal.UtilSucursalMinimo, mUtilidadSuc, this.oMetaVendedor.IncrementoUtil.Valor() , this.oMetaVendedor.IncrementoFijo.Valor()); this.lblVariable.Text = mComisionGerente.ToString(GlobalClass.FormatoMoneda); this.lblTotal.Text = (this.oMetaVendedor.SueldoFijo + mComisionGerente + mComision9500 + (mComNeg9500)).ToString(GlobalClass.FormatoMoneda); } } else { //if (this.oMetaVendedor.EsGerente) // this.lblVariable.Text = 0.ToString(GlobalClass.FormatoMoneda); //this.lblTotal.Text = "--"; } if (!this.oMetaVendedor.MetaConsiderar9500) { mUtilidad -= mUtilidad9500; } //this.lblUtilSuc.Text = mUtilidadSuc.ToString(GlobalClass.FormatoMoneda); //subtotal comisiones y fijo this.lblFijo.Text = mFijo.ToString(GlobalClass.FormatoMoneda); //subtotal variable if (this.oMetaVendedor.EsGerente) { this.lblVariable.Text = mComisionGerente.ToString(GlobalClass.FormatoMoneda); this.lblDevoluciones.Text = 0.ToString(GlobalClass.FormatoMoneda); this.lblSubVariable.Text = mComisionGerente.ToString(GlobalClass.FormatoMoneda); } else { this.lblVariable.Text = (mComisionVariable - mComision9500).ToString(GlobalClass.FormatoMoneda); this.lblDevoluciones.Text = (mComisionNegativa).ToString(GlobalClass.FormatoMoneda); this.lblSubVariable.Text = ((mComisionVariable - mComision9500) - Math.Abs(mComisionNegativa)).ToString(GlobalClass.FormatoMoneda); } //Subtotal 9500 this.lbl9500.Text = (mComision9500).ToString(GlobalClass.FormatoMoneda); this.lblDev9500.Text = (mComision9500Dev).ToString(GlobalClass.FormatoMoneda); this.lblSub9500.Text = (mComision9500 - Math.Abs(mComision9500Dev)).ToString(GlobalClass.FormatoMoneda); //subtotal comision fija //this.lblTotal.Text = (mFijo + mComisionVariable + (mComisionNegativa)).ToString(GlobalClass.FormatoMoneda); this.lblComisionFija.Text = (mComisionFija).ToString(GlobalClass.FormatoMoneda); this.lblDevFija.Text = (mComisionFijaDev).ToString(GlobalClass.FormatoMoneda); this.lblSubFija.Text = (mComisionFija + mComisionFijaDev).ToString(GlobalClass.FormatoMoneda); decimal Total = 0; //total y meta if (this.oMetaVendedor.EsGerente) { Total = (mFijo + (mComisionGerente) + mComision9500 + mComisionFija + mComision9500Dev); } else { Total = (mFijo + (mComisionVariable - mComision9500) + mComision9500 + mComisionFija + mComisionFijaDev + mComisionNegativa + mComision9500Dev); } this.lblTotal.Text = (Total).ToString(GlobalClass.FormatoMoneda); if (this.oMetaVendedor.SueldoMeta - Total < 0) { this.lblMetaRes.Text = (0).ToString(GlobalClass.FormatoMoneda); } else { this.lblMetaRes.Text = (this.oMetaVendedor.SueldoMeta - Total).ToString(GlobalClass.FormatoMoneda); } #endregion if (this.oMetaVendedor.EsGerente) { decimal meta = this.oMetaSucursal.UtilSucursalMinimo; ComisionesVendedorPorSucursal(mUtilidadSuc, this.oMetaSucursal.UtilSucursalMinimo, mComisionGerente); } // Se cierra la ventana de "Cargando.." Cargando.Cerrar(); this.ComisionesAct = true; }