Eu tenho uma banda especial, criada para realizar a divisão dos dados em um relatório, serve para fazer a divisão dos dados de determinadas empresas. O nome da banda é “idUnidadeEmpresaHeader”, que a cada nova empresa no relatório esta banda é apresentada no início da página e os dados da empresa são impressos logo após ela.
A minha dúvida é a seguinte:
eu tenho uma banda page header, mas essa banda somente deverá aparecer quando a minha banda especial (idUnidadeEmpresaHeader) não estiver na página.
Já tentei de várias formas mas não consegui, como a seguinte:
no campo Print when expression coloquei:
“$F{unidadeEmpresa} == null”, sendo que o campo “unidadeEmpresa” é impresso na banda idUnidadeEmpresa.
Eu tenho uma banda especial, criada para realizar a divisão dos dados em um relatório, serve para fazer a divisão dos dados de determinadas empresas. O nome da banda é “idUnidadeEmpresaHeader”, que a cada nova empresa no relatório esta banda é apresentada no início da página e os dados da empresa são impressos logo após ela.
A minha dúvida é a seguinte:
eu tenho uma banda page header, mas essa banda somente deverá aparecer quando a minha banda especial (idUnidadeEmpresaHeader) não estiver na página.
Já tentei de várias formas mas não consegui, como a seguinte:
no campo Print when expression coloquei:
“$F{unidadeEmpresa} == null”, sendo que o campo “unidadeEmpresa” é impresso na banda idUnidadeEmpresa.
Alguém poderia me auxiliar na minha dúvida quanto ao IReport conforme relatada?
Aguardo.
Obrigado.
RenataFA
Olá!
Me diga uma coisa, essa sua “banda especial”, é um group? Pq me deu a impressão que sim já que disse que ela “aparece cada vez que muda a empresa”. É isso?
Se por acaso for, eu não vejo outra forma senão criar uma variável como flag e alterar seu conteúdo, usando ela na condição de impressão do PageHeader. Vc sempre só tem uma dessa “banda especial” a cada página (qdo tiver é claro)? Ou pode acontecer de ter duas por ex?
V
vinisoccol
Olá, sim, essa banda especial é um group.
Ela aparece cada vez que muda a empresa sim, no início da página.
Não acontece de ter duas bandas especiais dessa por página, é menos de uma por página.
Mas o page header somente vai aparecer quando esta banda especial não aparecer.
RenataFA
Bom, o group então aparece sempre que MUDA a empresa. Vc teria que programar de forma q o page header aparecesse quando NÃO MUDA a empresa.
Se fosse uma programação linear, faríamos dois loops, um dentro do outro, armazenaríamos o valor da empresa numa variável e sempre que a empresa do registro atual fosse igual a armazenada na variável a gente mostrava o page header, se mudasse, não mostrava (pq sabia que ía mostrar o group).
iReport não é programação linear, mas a ideia é a mesma! Vc terá que armazenar em uma variável o valor da empresa, e programar no PrintWhen do Page header pra imprimir só quando o valor da empresa atual for igual ao da variável armazenada.