void FCadItensLoad(object sender, EventArgs e) { cControleAcesso acesso = new cControleAcesso(); acessoProdutos = Globais.bAdministrador || acesso.PermissaoPrograma(Globais.sUsuario, Globais.sFilial, 2, "fCadProdutos"); orcamento = new cOrcamentos(); per_frete = orcamento.Frete(fornecedor, data, cod_orcamento); orcamento.CarregaItens(dgvCadastro, fornecedor, data, cod_orcamento, formula, tabela); Colore(); if (pedido) { foreach (DataGridViewRow row in dgvCadastro.Rows) { DataGridViewCell cell; cell = row.Cells["Especial"]; if (cell.Value.ToString().Equals("S")) { cell = row.Cells["Preço Unitário"]; float preco = Globais.StrToFloat(cell.Value.ToString()); // desfaz formula Globais.DesfazFormula(ref preco, formula, ipi, per_frete, 0); /* * float fator=0; * for (int i=formula_orcamento.Trim().Length-4; i>=0; i-=4) * { * if (formula_orcamento[i] == 'x') * { * fator = (Globais.StrToFloat(formula_orcamento.Substring(i+1, 3)) - 1) * 100; * } * if (formula_orcamento.Substring(i, 4).CompareTo("+IPI") == 0) * { * fator = ipi; * } * else * { * fator = Globais.StrToFloat(formula_orcamento.Substring(i, 4)); * } * preco = (preco * 100) / (100 + fator); * } */ // refaz parte do pedido Globais.CalculaFormula(ref preco, formula, ipi, per_frete, 0); /* * for (int i=0; i<formula.Trim().Length; i+=4) * { * if (formula[i] == 'x') * { * fator = Globais.StrToFloat(formula.Substring(i+1, 3)); * preco *= fator; * continue; * } * if (formula.Substring(i, 4).CompareTo("+IPI") == 0) * { * fator = ipi; * preco += (preco * fator / (float)100); * } * else * { * fator = Globais.StrToFloat(formula.Substring(i, 4)); * preco += (preco * fator / (float)100); * } * } */ cell.Value = preco; cell = row.Cells["Preço"]; cell.Value = preco; } } } if (dgvCadastro.Rows.Count > 0) { AtualizaDadosLocal(0); } lblOrcamento.Text = "Orçamento: " + fornecedor.Trim() + " - " + data.ToString("d/M/yyyy") + " - " + cod_orcamento + " Cliente: " + cliente; tabelas = new cTabelas(); DesabilitaEdicao(); SetaEdicaoLocal(false); ultimo_produto = ""; ultimo_subcodigo = ""; col_sorted = ""; ord_sorted = SortOrder.Ascending; }