Quadro de Repetição

Dicas e truques sobre Oracle Reports Builder - modo gráfico ou modo caractere, ascii, arquivo .PRT, etc
Responder
marlonpasquali
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 248
Registrado em: Sex, 06 Fev 2009 3:02 pm
Localização: ERECHIM - RS

Bom dia,
tenho 2 quadros de repetição, um dentro do outro. Um para cabeçalho e o interno para os detalhes.
quero poder controlar a impressão do cabeçalho mediante alguma condiçao.
Pensei em fazer uma formula para retornar um valor para controle e coloquei no gatilho de formato o seguinte;

Selecionar tudo

function R_G_OrdemFormatTrigger return boolean is
begin
	
  IF :RETORNA_LINHAS > 0 THEN
     return (TRUE);
  ELSE
  	 return (FALSE);
  END IF; 	 
end;

Minha necessidade é de que NÃO imprima o layout se o valor retornar maior que 0. Mas não está funcionando. alguém pode me ajudar por favor ?
spernega
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Ter, 19 Jun 2007 2:12 pm
Localização: São Paulo - SP

Boa tarde marlonpasquali,

A ideia é essa mesma.

o "retorna_linhas" está na query de cabeçalho, né?
marlonpasquali
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 248
Registrado em: Sex, 06 Fev 2009 3:02 pm
Localização: ERECHIM - RS

Não coloquei na query. Esta formula então eu preciso colocar dentro do Select do cabeçalho ?
spernega
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Ter, 19 Jun 2007 2:12 pm
Localização: São Paulo - SP

Normalmente eu crio um campo de contagem ou somatória no grupo do cabeçalho.
Não na query,
marlonpasquali
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 248
Registrado em: Sex, 06 Fev 2009 3:02 pm
Localização: ERECHIM - RS

Sim, foi o que eu fiz.
Uma formula dentro do grupo de cabeçalho que conta quantas linhas detalhes vai ter. Se retornar zero, então eu não imprimo o cabeçalho.
Ocorre que quando vou compilar está dando o seguinte erro:

Selecionar tudo

REP-0730: A variável de ligaçao a seguir não está definida:  RETORNA_LINHAS 
Fiz assim:

Selecionar tudo

function R_G_OrdemFormatTrigger return boolean is
begin
	
  IF :RETORNA_LINHAS > 0 THEN
     return (TRUE);
  ELSE
  	 return (FALSE);
  END IF; 	 
end;
spernega
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Ter, 19 Jun 2007 2:12 pm
Localização: São Paulo - SP

Pelo que eu entendi, quando não existir o item você não quer imprimir nem o cabeçalho, correto?

A Trigger (função) tem que estar no frame do cabeçalho e não do item.

É lá que você criou?
spernega
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Ter, 19 Jun 2007 2:12 pm
Localização: São Paulo - SP

Boa tarde marlonpasquali,

deu certo?
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 12 visitantes