private void Quantidade_Leave(object sender, EventArgs e) { Sub_Total.Value = Quantidade.Value * Vl_Unitario.Value; VL_Desconto.Value = CalcularDescEspecial(); VL_Total.Value = Sub_Total.Value - VL_Desconto.Value + vl_acrescimo.Value; if (Sub_Total.Value > decimal.Zero) { Pc_DescontoItem.Value = Math.Round(decimal.Divide(decimal.Multiply(VL_Desconto.Value, 100), Sub_Total.Value), 5, MidpointRounding.AwayFromZero); pc_acrescimo.Value = Math.Round(decimal.Divide(decimal.Multiply(vl_acrescimo.Value, 100), Sub_Total.Value), 5, MidpointRounding.AwayFromZero); } if (St_consumoInterno) { //Buscar Almoxarifado object obj = new CamadaDados.Almoxarifado.TCD_CadAlmoxarifado().BuscarEscalar( new TpBusca[] { new TpBusca() { vNM_Campo = string.Empty, vOperador = "exists", vVL_Busca = "(select 1 from tb_amx_almox_x_empresa x " + "where x.id_almox = a.id_almox " + "and x.cd_empresa = '" + CD_Empresa.Trim() + "')" } }, "a.id_almox"); if (obj == null && string.IsNullOrEmpty(obj.ToString())) { throw new Exception("Não existe almoxarifado cadastrado para empresa " + CD_Empresa.Trim()); } //Buscar Saldo Almoxarifado decimal saldo = CamadaNegocio.Almoxarifado.TCN_SaldoAlmoxarifado.ConsultaSaldoAlmox(CD_Empresa, obj.ToString(), CD_Produto.Text, null); if (saldo < Quantidade.Value) { MessageBox.Show("Não existe saldo suficiente para gravar movimentação.\r\n" + "Item: " + CD_Produto.Text.Trim() + "\r\n" + "Saldo Atual: " + saldo.ToString("N3", new System.Globalization.CultureInfo("pt-BR")) + "\r\n" + "Qtde Requerida: " + Quantidade.Value.ToString("N3", new System.Globalization.CultureInfo("pt-BR")), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Quantidade.Value = saldo; Quantidade.Focus(); } } }