1
resposta

Compartilhando minha resolução

Criando a procedure calcula_imposto()

create or replace procedure calculo_imposto (
    p_ID IN PRODUTO_VENDA_EXERCICIO.ID%type,
    p_RESULTADO_IMPOSTO OUT FLOAT
)
IS
    v_PRECO        PRODUTO_VENDA_EXERCICIO.PRECO%type;
    v_QUANTIDADE   PRODUTO_VENDA_EXERCICIO.QUANTIDADE%type;
    v_IMPOSTO_PERC PRODUTO_VENDA_EXERCICIO.PERCENTUAL_IMPOSTO%type;
begin
    SELECT preco, quantidade, percentual_imposto
    INTO v_PRECO, v_QUANTIDADE, v_IMPOSTO_PERC
    FROM produto_venda_exercicio
    WHERE ID = p_ID;

    p_RESULTADO_IMPOSTO := (v_PRECO * v_QUANTIDADE) * (v_IMPOSTO_PERC / 100);
end;
/

Bloco anônimo para testar a procedure calcula_imposto()

set serveroutput on;
declare
        v_ID PRODUTO_VENDA_EXERCICIO.ID%type := 2;
        v_SAIDA float;
begin
    CALCULO_IMPOSTO(v_ID, v_SAIDA);
    DBMS_OUTPUT.PUT_LINE('O cálculo do imposto do produto de identificador:' || v_ID || ' é ' || v_SAIDA);
end;
/

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Ei! Tudo bem?

Parabéns pela resolução da atividade! É exatamente isso. Ele segue a lógica esperada para calcular o imposto de um produto específico com base no seu ID, preço, quantidade e percentual de imposto.

Continue se dedicando aos estudos e qualquer dúvida, compartilhe.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!