Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ALTER TYPE tp_vendedor ADD MEMBER FUNCTION imprimir_vendas RETURN INTEGER CASCADE;
- CREATE OR REPLACE TYPE BODY tp_vendedor AS
- MEMBER FUNCTION getNomeGerente (SELF tp_vendedor) RETURN VARCHAR IS
- nome_supervisor VARCHAR (120);
- BEGIN
- SELECT v.supervisor.nome INTO nome_supervisor FROM tb_vendedor v WHERE v.cpf = SELF.cpf;
- RETURN nome_supervisor;
- END;
- MEMBER FUNCTION imprimir_vendas RETURN INTEGER AS
- vendedor_nome VARCHAR(40);
- cliente_nome VARCHAR(40);
- marca VARCHAR(20);
- descricao VARCHAR(20);
- data_atend DATE;
- numero_de_vendas INTEGER;
- CURSOR vendas IS SELECT t.vendedor.nome, VALUE(nt).marca, VALUE(nt).descricao, t.data_atendimento FROM tb_atendimento t, TABLE(t.lista) nt WHERE VALUE(nt).marca IS NOT NULL AND t.vendedor.cpf = SELF.cpf ORDER BY t.data_atendimento;
- BEGIN
- numero_de_vendas := 0;
- OPEN vendas;
- loop
- fetch vendas INTO vendedor_nome, cliente_nome, marca, descricao, data_atend;
- dbms_output.putline('Vendedor : ' || vendedor_nome || '; Cliente: ' || cliente_nome || '; Marca: ' || marca || '; Descricao: ' || descricao || '; Data Atendimento ' || data_atend);
- numero_de_vendas := numero_de_vendas + 1;
- exit WHEN vendas%notfound;
- END loop;
- close vendas;
- RETURN numero_de_vendas;
- END;
- END;
- /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement