1
resposta

[Sugestão] Outra Resolução

O professor passou 3 variáveis, fiz sem nenhum e fazendo o calculo de imposto por fora está batendo o resultado esperado...

CREATE OR REPLACE PROCEDURE CALCULA_IMPOSTO
(p_ID IN PRODUTO_VENDA_EXERCICIO.ID%TYPE, p_RESULTADO OUT PRODUTO_VENDA_EXERCICIO.VALOR_TOTAL%TYPE)
IS
BEGIN
    SELECT ((PRECO * VALOR_TOTAL) * (PERCENTUAL_IMPOSTO / 100)) INTO p_RESULTADO FROM PRODUTO_VENDA_EXERCICIO WHERE ID = p_ID;
END;



SET SERVEROUTPUT ON;

DECLARE
   v_ID PRODUTO_VENDA_EXERCICIO.ID%TYPE := 2;
   v_RESULTADO PRODUTO_VENDA_EXERCICIO.VALOR_TOTAL%TYPE;
BEGIN
   CALCULA_IMPOSTO(v_ID, v_RESULTADO);
   DBMS_OUTPUT.PUT_LINE('O imposto calculado é: ' || v_RESULTADO);
END;
1 resposta

Oi Henry, tudo certo?

Fico feliz que você tenha resolvido o exercício de outra forma e que o resultado esperado foi obtido! Em PL/SQL, assim como em várias outras linguagens, temos muitas formas possíveis de chegar a um mesmo resultado e ter contato com essa variedade é bastante importante para que quem está aprendendo possa expandir seu olhar. Obrigada por compartilhar com o fórum.

Continue praticando para aprimorar cada vez mais seus conhecimentos.

Abraços!