Exemplo n.º 1
0
 private void Calcular()
 {
     CamadaDados.Estoque.Cadastros.TList_FichaTecProduto lFicha =
         CamadaNegocio.Estoque.Cadastros.TCN_FichaTecProduto.Buscar(Cd_produto,
                                                                    string.Empty,
                                                                    null);
     CamadaNegocio.Estoque.Cadastros.TCN_FichaTecProduto.MontarFichaTec(CD_Empresa.Text, cd_tabelapreco.Text, lFicha, null);
     bsFichaTec.DataSource = lFicha;
     vl_custototal.Value   = lFicha.Sum(p => p.Vl_subtotalservico);
     tot_precovenda.Value  = lFicha.Sum(p => p.Vl_precovendatotal);
     if (tot_precovenda.Value > decimal.Zero)
     {
         pc_lucro.Value = vl_custototal.Value * 100 / tot_precovenda.Value;
     }
     else
     {
         pc_lucro.Value = pc_lucro.Minimum;
     }
 }
Exemplo n.º 2
0
        private void bb_custoprod_Click(object sender, EventArgs e)
        {
            if (bsItens.Current != null && cbEmpresa.SelectedItem != null && cbTabPreco.SelectedItem != null)
            {
                if (new CamadaDados.Estoque.Cadastros.TCD_CadTpProduto().BuscarEscalar(
                        new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = string.Empty,
                        vOperador = string.Empty,
                        vVL_Busca = "(isnull(a.st_semente, 'N') = 'S') or (isnull(a.st_industrializado, 'N') = 'S')"
                    },
                    new TpBusca()
                    {
                        vNM_Campo = string.Empty,
                        vOperador = "exists",
                        vVL_Busca = "(select 1 from tb_est_produto x " +
                                    "where x.tp_produto = a.tp_produto " +
                                    "and x.cd_produto = '" + (bsItens.Current as CamadaDados.Estoque.TRegistro_ProdutoPreco).Cd_produto.Trim() + "')"
                    }
                }, "1") != null)
                {
                    //Buscar lista de formulas
                    CamadaDados.Producao.Producao.TList_FormulaApontamento lFormula =
                        CamadaNegocio.Producao.Producao.TCN_FormulaApontamento.Buscar(cbEmpresa.SelectedValue.ToString(),
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      string.Empty,
                                                                                      (bsItens.Current as CamadaDados.Estoque.TRegistro_ProdutoPreco).Cd_produto,
                                                                                      string.Empty,
                                                                                      0,
                                                                                      string.Empty,
                                                                                      null);
                    if (lFormula.Count > 0)
                    {
                        if (lFormula.Count.Equals(1))
                        {
                            vl_custoprod.Value = CamadaNegocio.Producao.Producao.TCN_FormulaApontamento.CalcularCustoProducao(lFormula[0]);
                        }
                        else
                        {
                            using (Proc_Commoditties.TFDisponibilidadeMPrima fDisponibilidade = new Proc_Commoditties.TFDisponibilidadeMPrima())
                            {
                                fDisponibilidade.pCd_empresa = cbEmpresa.SelectedValue.ToString();
                                fDisponibilidade.pCd_produto = (bsItens.Current as CamadaDados.Estoque.TRegistro_ProdutoPreco).Cd_produto;

                                fDisponibilidade.ShowDialog();

                                vl_custoprod.Value = fDisponibilidade.Vl_custoProducao;
                            }
                        }
                    }
                }
                else if (new CamadaDados.Estoque.Cadastros.TCD_CadTpProduto().BuscarEscalar(
                             new TpBusca[]
                {
                    new TpBusca()
                    {
                        vNM_Campo = "isnull(a.st_composto, 'N')",
                        vOperador = "=",
                        vVL_Busca = "'S'"
                    },
                    new TpBusca()
                    {
                        vNM_Campo = string.Empty,
                        vOperador = "exists",
                        vVL_Busca = "(select 1 from tb_est_produto x " +
                                    "where x.tp_produto = a.tp_produto " +
                                    "and x.cd_produto = '" + (bsItens.Current as CamadaDados.Estoque.TRegistro_ProdutoPreco).Cd_produto.Trim() + "')"
                    }
                }, "1") != null)
                {
                    //Calcular custo produto
                    CamadaDados.Estoque.Cadastros.TList_FichaTecProduto lFicha =
                        CamadaNegocio.Estoque.Cadastros.TCN_FichaTecProduto.Buscar((bsItens.Current as CamadaDados.Estoque.TRegistro_ProdutoPreco).Cd_produto,
                                                                                   string.Empty,
                                                                                   null);
                    CamadaNegocio.Estoque.Cadastros.TCN_FichaTecProduto.MontarFichaTec(cbEmpresa.SelectedValue.ToString(), cbTabPreco.SelectedValue.ToString(), lFicha, null);
                    vl_custoprod.Value = lFicha.Sum(p => p.Vl_subtotalservico);
                }
            }
        }