Righe di dettaglio limitate per pagina

venerdì 18 settembre 2009 - 16.25

nihira Profilo | Newbie

Salve a tutti.

Volevo sapere se esiste un modo per dire a CR di limitarsi a stampare un numero di righe di dettaglio per ogni pagina, indipendentemente da quante ne siano.
Ho un'intestazione di gruppo di polizze (agenzia-numero polizza- data scadenza etc) all'interno della parte superiore di una cornice fatta con photoshop, con gli angoli arrotondati e sfumati;
Nel dettaglio ho il pezzo centrale del box con i corrispondenti valori dell'intestazione di gruppo;
Nel pié di pagina gruppo ho la parte del box che va a chiudere.
Il problema è che quando sforo le quattro righe il box viene tagliato per continuare nella pagina successiva... e io non voglio che ciò si verifichi.
Mi servirebbe un modo per dirgli: quando sei arrivato a 4 righe, chiudimi il box, (ossia usa il piè di pagina non solo quando hai finito di stampare tutte le righe ma per gruppi di 4) dopodiché continua alla pagina successiva (e qui riesco con l'opzione "ripeti intestazione per ogni pagina" per la parte superiore del box).
Spero di aver spiegato in modo chiaro e naturalmente grazie di cuore a chi avesse un'idea su come procedere.

freeteo Profilo | Guru

Ciao,
potresti provare a mettere nella sezione "dettagli" una condizione di salto pagina nel caso in cui superi il numero di record che vuoi:
tasto Dx sulla sezione dettagli -> esperto sezione -> new page after -> pulsante [X+2] e si apre l'editor delle formule e gli dici:
RecordNumber mod 4 = 0

così ogni 4 record lui salta da solo a pagina successiva.

Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo

nihira Profilo | Newbie

Grazie per la risposta innanzitutto.

Ho provato ad applicare il tuo suggerimento, ma la cosa purtroppo non funziona come vorrei per i motivi che ti elenco:

In realtà ho sbagliato io nel formulare la richiesta: diciamo che per come è strutturato il report c'è un logo e del testo nell'intestazione pagina che non voglio si ripeta per le pagine successive (e qui ho messo il controllo escludi intestazione pagina se "Pagenumber > 1" e flaggando "nuova pagina dopo" e "ricomincia numerazione dopo" nel pié di pagina dove c'è la parte inferiore che va a chiudere il box. In questo modo ricominciando la numerazione posso di nuovo sapere se sto all'inizio di un nuovo documento che mi serve appunto per il controllo di cui sopra.

Proprio perché il tuo suggerimento funziona (a parte la prima pagina dove stranamente stampa soltanto 3 record), il rovescio della medaglia, che non avevo previsto e chiedo scusa, è che anche per le pagine successive mi stampa solo 4 record (sempre senza chiusura del box) invece di svilupparmi l'intero spazio pagina.

In sostanza, quando crystal va a stampare la pagina successiva di uno stesso documento, dovrebbe chiudermi il box indipendentemente dai record che vengono stampati ma ho paura a questo punto che non sia una cosa fattibile. Che ne pensi?

freeteo Profilo | Guru

>In sostanza, quando crystal va a stampare la pagina successiva
>di uno stesso documento, dovrebbe chiudermi il box indipendentemente
>dai record che vengono stampati ma ho paura a questo punto che
>non sia una cosa fattibile. Che ne pensi?
credo proprio di no, il box è qualcosa che si chiude alla fine dei record, portesti provare a farti il box tu mettendo righe su tutti i 4 lati, e per il lato basso a mettere una sezione dettagli aggiuntiva con dentro solo una riga orizzontale e nasconderla quando sei dentro alla pagina (quindi i record < 4) o qualcosa di questo genere...

Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5