Ir para conteúdo
Fórum Script Brasil
  • 0

Ideia para fazer cálculo


rogerio.2p

Pergunta

Boa tarde pessoal.

Estou há algumas semanas quebrando a cabeça para fazer um cálculo.
O cliente tem uma planilha em Excel e não sei como ele conseguiu fazer aquela referência.

Vou colocar o trecho do código:
 

$investimento_total = round($_SESSION['venda'], -1);

$sql_custo_instalacao_cs = mysqli_query($config, "SELECT vlr_2 FROM tb_erp_tipo_telhado WHERE id = '$r_sql_orcamento[3]'") or die(mysqli_error($config));
if(@mysqli_num_rows($sql_custo_instalacao_cs) <= 0){
$custo_instalacao_cs = 0;
}else{
while($r_sql_custo_instalacao_cs = mysqli_fetch_array($sql_custo_instalacao_cs)){
$custo_instalacao_cs = $r_sql_custo_instalacao_cs[0];
}
}

$sql_custo_homologacao_cs = mysqli_query($config, "SELECT percentual FROM tb_erp_custo_homologacao WHERE '$investimento_total' BETWEEN vlr_1 AND vlr_2") or die(mysqli_error($config));
if(@mysqli_num_rows($sql_custo_homologacao_cs) <= 0){
$custo_homologacao_cs = 0;
}else{
while($r_sql_custo_homologacao_cs = mysqli_fetch_array($sql_custo_homologacao_cs)){
$custo_homologacao_cs = $investimento_total * $r_sql_custo_homologacao_cs[0] / 100;
}
}

$comissao_venda_s_mo = $_SESSION['venda'] * $r_sql_orcamento[12] / 100;

$custo_kit_liquido = ($r_sql_orcamento[4] * (1 - ($r_sql_campos_orcamento[3] / 100)) * (1 - ($r_sql_campos_orcamento[4] / 100)) * (1 - ($r_sql_campos_orcamento[5] / 100)) * (1 - ($r_sql_campos_orcamento[6] / 100)));

$imposto_de_refaturamento = ($_SESSION['venda'] * $r_sql_campos_orcamento[16] / 100)-($custo_kit_liquido * $r_sql_campos_orcamento[16] / 100);

$custo_total = $custo_kit_liquido + $r_sql_orcamento[5] + $custo_instalacao_cs + ($custo_kit_liquido * 2 / 100) + ($r_sql_orcamento[6] * 6) + $custo_homologacao_cs + $comissao_venda_s_mo + $imposto_de_refaturamento;

$venda = $custo_total / (1 - $r_sql_orcamento[7] / 100);

$_SESSION['venda'] = $venda;



Vejam que a variável $venda é calcula por último, mas alguns cálculos no início do bloco usam ela.
Eu coloquei em uma $_SESSION, que inicia no fim, para que possa ficar disponível no início.

Dá certo, mas eu tenho que apertar o F5 umas cinco vezes para chegar ao resultado correto.

Como eu poderia melhor isso?

Obrigado.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Eu tentei testar o código por aqui, mas não consegui entender a linha 13

$sql_custo_homologacao_cs = mysqli_query($config, 
"SELECT percentual FROM tb_erp_custo_homologacao 
WHERE '$investimento_total' BETWEEN vlr_1 AND vlr_2")
or die(mysqli_error($config));

Geralmente, eu encontro código desse tipo:

select percentual from tb_homologacao where investimento between vr_1 and vr_2

Depois da cláusula Where sempre vem o nome do campo da tabela, mas nunca uma variável do tipo utilizado no PHP.

Eu preciso de todos os códigos para ver como esse programa funciona, principalmente todo o banco de dados com a estrutura e todos os dados. Tem jeito de arranjar para mim?

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...