Array
(
)

Pl/Sql duvidas?

Diego Nascimento
   - 23 nov 2010

Boa tarde,

Estou apanhando neste ex de PL/ Sql usando cursores explicitos?

Criar um bloco PL-SQL para inserir titulos na tabela titulo, com base na leitura da tabela fornecedores:

Para cada fornecedor lido inserir um titulo na tabela titulo com as informações:

Codigo = numero do fornecedor.
numero do titulo= sequencial a partir de 200
valor do titulo = valor das vendas do fornecedor,
valor dos juros = 0,

valor dos descontos = devera ser 15% do valor do titulo se o valor do titulo for ate 1000,20% do valor do titulo se o valor for de 1001 a 2000, caso contrario devera ser de 30%

Valor pago = 0, data de emissão = data corrente, data vencto = nulos data de pagamentos = nulos.

eu fiz deu td errad
DECLARE
Cursor c_titulos is
Select codigo,vendas, valor, juros.fornecedor inserir from titulos status='A';
v_codigo titulos.codigo%type;
v_vendas titulos.vendas%type;
v_valor titulos.valor%type;
v_juros titulos.juros%type;
v_fornecedor titulos.fornecedor inserir%type;
v_vencto titulo.data_vencto%type;
v_vendas titulos.vendas%type;
v_titulo titulo.num_titulo%type;
begin
open c_titulos;
fetch c_titulos into v_codigo,
v_vendas, v_valor_juros, v_fornecedor;
while c_titulos%found loop
c_vendas:=2000;
v_titulo:=v_valor_juros/v_codigo;
V_desc:= v_desc 15%;
insert into titulo
values(v_codigo, sequencia_titulo.
nextval, v_titulo,0,0,0,v_emissao,v_vencto,null);
c_vendas:=c_vendas+1;
end loop;
fetch c_titulos into v_codigo, v_vendas, v_valor_juros, v_fornecedor;
end loop;
close c_titulos;
end;

valeu pela atenção.

Emerson
   - 24 nov 2010

você precisa manipular ao menos 3 tabelas:

fornecedores e vendas(?) para obter o valor do título que será criado, além da própria tabela de títulos.

então você precisá juntar a tabela de fornecedores com a de vendas, somar todas as vendas e só depois criar o título, observando o enunciado do problema.