private void Quantidade_Leave(object sender, EventArgs e) { if (bsItensFat.Current != null) { if (Quantidade.Value.Equals(decimal.Zero)) { MessageBox.Show("Obrigatório informar quantidade.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Quantidade.Focus(); return; } (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Quantidade = Quantidade.Value; (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Vl_subtotal = Quantidade.Value * (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Vl_unitario; bsItensFat.ResetCurrentItem(); if ((bsItensFat.List as CamadaDados.Faturamento.Pedido.TList_RegLanPedido_Item).Sum(p => p.Vl_subtotal) > (bsItens.Current as CamadaDados.Faturamento.Orcamento.TRegistro_Orcamento_Item).Vl_faturar) { MessageBox.Show("Valor faturado maior que o saldo disponivel para faturar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Quantidade.Focus(); return; } if (!CD_Produto.Focused) { Vl_Unitario.Focus(); } bsItensFat_PositionChanged(this, new EventArgs()); } }
private void Vl_Unitario_Leave(object sender, EventArgs e) { if (bsItensFat.Current != null) { if (Vl_Unitario.Value.Equals(decimal.Zero)) { MessageBox.Show("Não é permitido vender item sem valor.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Vl_Unitario.Focus(); return; } //Buscar custo produto decimal vl_custo = decimal.Zero; CamadaNegocio.Estoque.TCN_LanEstoque.VlMedioEstoque((bsOrcamento.Current as CamadaDados.Faturamento.Orcamento.TRegistro_Orcamento).Cd_empresa, (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Cd_produto, ref vl_custo, null); if (Vl_Unitario.Value < vl_custo) { using (Proc_Commoditties.TFLanSessaoPDV fSessao = new Proc_Commoditties.TFLanSessaoPDV()) { fSessao.Mensagem = "PERMITIR VENDA ABAIXO CUSTO"; if (fSessao.ShowDialog() == DialogResult.OK) { //Verificar se o usuario tem permissao para venda abaixo custo if (CamadaNegocio.Diversos.TCN_Usuario_RegraEspecial.ValidaRegra(fSessao.Usuario, "PERMITIR VENDA ABAIXO CUSTO", null)) { (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Vl_unitario = Vl_Unitario.Value; (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Vl_subtotal = Quantidade.Value * Vl_Unitario.Value; bsItensFat.ResetCurrentItem(); if ((bsItensFat.List as CamadaDados.Faturamento.Pedido.TList_RegLanPedido_Item).Sum(p => p.Vl_subtotal) > (bsItens.Current as CamadaDados.Faturamento.Orcamento.TRegistro_Orcamento_Item).Vl_faturar) { MessageBox.Show("Valor faturado maior que o saldo disponivel para faturar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Vl_Unitario.Focus(); return; } ds_observacao.Focus(); bsItensFat_PositionChanged(this, new EventArgs()); } else { Vl_Unitario.Focus(); } } else { Vl_Unitario.Focus(); } } } else { (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Vl_unitario = Vl_Unitario.Value; (bsItensFat.Current as CamadaDados.Faturamento.Pedido.TRegistro_LanPedido_Item).Vl_subtotal = Quantidade.Value * Vl_Unitario.Value; bsItensFat.ResetCurrentItem(); if ((bsItensFat.List as CamadaDados.Faturamento.Pedido.TList_RegLanPedido_Item).Sum(p => p.Vl_subtotal) > (bsItens.Current as CamadaDados.Faturamento.Orcamento.TRegistro_Orcamento_Item).Vl_faturar) { MessageBox.Show("Valor faturado maior que o saldo disponivel para faturar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Vl_Unitario.Focus(); return; } bsItensFat_PositionChanged(this, new EventArgs()); ds_observacao.Focus(); } } }