Eu preciso ao sair do campo quantidade eu preciso abrir um formulario e capturar 3 medidas (medida1, medida2 e medida3) para eu realizar um calculo com a quantidade que usurio informou e depois retonar com o resultado no campo quantidade.
Esta é a parte da minha tela do sistema onde quero realizar esta ação
Eu tentei fazer assim coloquei este codigo na saida do campo Quantidade, no evento ajax Quantidade_onBlur
$quant_informada = "{QUANTIDADE}";
$medida1 = "{MEDIDA1}";
$medida2 = "{MEDIDA2}";
$medida3 = "{MEDIDA3}";
$SQL = '';
$SQL .= 'SELECT ';
$SQL .= ' ESTOQUE_SERV.UNID, ';
$SQL .= ' ESTOQUE_SERV.MEDIDA1, ';
$SQL .= ' ESTOQUE_SERV.MEDIDA2, ';
$SQL .= ' ESTOQUE_SERV.MEDIDA3 ';
$SQL .= 'FROM ESTOQUE_SERV ';
$SQL .= 'WHERE ESTOQUE_SERV.IDESTSERV = '.{IDESTSERV};
sc_lookup(ds_codfabrica, $SQL);
{unid} = {ds_codfabrica[0][0]};
$medida1_Cad = {ds_codfabrica[0][1]};
$medida2_Cad = {ds_codfabrica[0][2]};
$medida3_Cad = {ds_codfabrica[0][3]};
$url = 'blank_calcula_metros.php?quant_informada=' . urlencode($quant_informada);
$url .= "&medida1=" . urlencode($medida1_Cad);
$url .= "&medida2=" . urlencode($medida2_Cad);
$url .= "&medida3=" . urlencode($medida3_Cad);
sc_redir($url, '_parent');
Passei via parametros os valores que eu quero e pedi para redirecionar, ate aqui tudo certo ele fez isto.
Abriu o form blank_calcula_metros com os inputs box preecnhidos ok
meu codigo da pagina blank_calcula_metros no evento onExecute
$quant_informada = isset($_GET["quant_informada"]) ? $_GET["quant_informada"] : 1;
$valor_divisor_calculo = isset($_GET["valor_divisor_calculo"]) ? $_GET["valor_divisor_calculo"] : 0;
$medida1 = isset($_GET["medida1"]) ? $_GET["medida1"] : 0;
$medida2 = isset($_GET["medida2"]) ? $_GET["medida2"] : 0;
$medida3 = isset($_GET["medida3"]) ? $_GET["medida3"] : 0;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$medida1 = isset($_POST["medida1"]) ? $_POST["medida1"] : 0;
$medida2 = isset($_POST["medida2"]) ? $_POST["medida2"] : 0;
$medida3 = isset($_POST["medida3"]) ? $_POST["medida3"] : 0;
$valor_divisor_calculo = isset($_POST["valor_divisor_calculo"]) ? $_POST["valor_divisor_calculo"] : 0;
if (($medida3 <= 0) && ($medida2 > 0) && ($medida1 > 0)) {
$valor_calculo = $medida1 * $medida2;
}else if (($medida1 > 0) && ($medida2 <= 0) && ($medida3 <= 0)) {
$valor_calculo = $medida1;
}else{
$valor_calculo = ($medida1 * $medida2 * $medida3);
}
if (($medida1 == 0) && ($medida2 == 0) && ($medida3 == 0) && ($valor_divisor_calculo == 0)) {
$valor_calculo = 1;
}
if ($valor_divisor_calculo > 0){
$valor_calculo = ($valor_calculo * $quant_informada) / $valor_divisor_calculo;
}else{
$valor_calculo = ($valor_calculo * $quant_informada);
}
echo "<p>Quantidade Total: " . number_format($valor_calculo, 2) . "</p>";
}
?>
<!doctype html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<title>Calcular Medidas</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="../bootstrap/css/bootstrap.min.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>
<body>
<form action="blank_calcula_metros.php" method="post">
<label for="medida1">Medida 1:</label>
<input type="number" step="any" name="medida1" id="medida1" value="<?= $medida1?>">
<label for="medida2">Medida 2:</label>
<input type="number" step="any" name="medida2" id="medida2" value="<?= $medida2?>">
<label for="medida3">Medida 3:</label>
<input type="number" step="any" name="medida3" id="medida3" value="<?= $medida3?>">
<br>
<label for="divisor">Divisor:</label>
<input type="number" step="any" name="valor_divisor_calculo" value="<?= $valor_divisor_calculo?>">
<button type="submit">Calcular</button>
</form>
</body>
</html>
<?php
Ele abre no assim
Eu nao estou conseguindo fechar esta pagina blank_calcula_metros e voltar com o valor calculado no campo quantidade do produto que vou inserir no pedido.
Alguem pode me dar um ideia de como fazer isto.
Grato.