Scopo
Ritorna la coordinata Y della sezione relativa alla box in cui la sezione deve essere mostrata.
Sintassi
float y = 0 // Posizione Y della sezione
//
y := Sezione.YPos()
//
y := Sezione.YPos()
Argomenti
Questa funzione non ha argomenti.Valore di ritorno
Ritorna un numero decimale che indica la coordinata Y della sezione relativa alla box in cui viene stampata la sezione ed è misurata in millimetri.
Esempio di codice
// ************************************
// Fired when the section is formatting
// ************************************
event CategorieBook1.BookCategorie.ReportCategorie.Detail.BeforeFormatting()
{
// Tooltip nome categoria
if NOT(IsNull(BookCategorie.DescrizioneCategorie))
...
//
// Se devo mostrare la griglia... vado fino a fine pagina
if Parametri.MostraGriglia = True
{
// Se devo, nascondo le celle che devono risultare vuote
if Parametri.NascondiCelleVuote = True
...
//
// Se sono arrivato sull'ultimo record devo cominciare forzare la ristampa
// delle sezioni
if BookCategorie.ReportCategorie.Detail.RecordNumber() = BookCategorie.
ReportCategorie.RecordsCount()
{
boolean flDone = 0 // Vale TRUE se ho finito di ristampare
//
// Ho finito se sono arrivato alla fine della pagina e se ho stampato un
// numero totale di sezioni multiplo del numero di colonne
flDone := BookCategorie.ReportCategorie.Detail.YPos() + BookCategorie.
ReportCategorie.Detail.Height + BookCategorie.ReportCategorie.Detail.
Height = BookCategorie.PageBody.Height AND Parametri.
NumeroCelleStampate % Parametri.NumeroColonne = Parametri.
NumeroColonne - ONE
//
// Se non ho finito
if NOT(flDone)
{
// Forzo la ristampa della sezione
BookCategorie.ReportCategorie.Detail.SetReprint(True)
//
// Se è la prima volta, attivo questo semaforo che mi permette di
// nascondere i dati contenuti nelle sezioni "forzate"
if NOT(Parametri.NascondiCelleVuote)
...
}
}
//
// Conto quante sezioni ho stampato in totale
Parametri.NumeroCelleStampate := Parametri.NumeroCelleStampate + ONE
}
}
// Fired when the section is formatting
// ************************************
event CategorieBook1.BookCategorie.ReportCategorie.Detail.BeforeFormatting()
{
// Tooltip nome categoria
if NOT(IsNull(BookCategorie.DescrizioneCategorie))
...
//
// Se devo mostrare la griglia... vado fino a fine pagina
if Parametri.MostraGriglia = True
{
// Se devo, nascondo le celle che devono risultare vuote
if Parametri.NascondiCelleVuote = True
...
//
// Se sono arrivato sull'ultimo record devo cominciare forzare la ristampa
// delle sezioni
if BookCategorie.ReportCategorie.Detail.RecordNumber() = BookCategorie.
ReportCategorie.RecordsCount()
{
boolean flDone = 0 // Vale TRUE se ho finito di ristampare
//
// Ho finito se sono arrivato alla fine della pagina e se ho stampato un
// numero totale di sezioni multiplo del numero di colonne
flDone := BookCategorie.ReportCategorie.Detail.YPos() + BookCategorie.
ReportCategorie.Detail.Height + BookCategorie.ReportCategorie.Detail.
Height = BookCategorie.PageBody.Height AND Parametri.
NumeroCelleStampate % Parametri.NumeroColonne = Parametri.
NumeroColonne - ONE
//
// Se non ho finito
if NOT(flDone)
{
// Forzo la ristampa della sezione
BookCategorie.ReportCategorie.Detail.SetReprint(True)
//
// Se è la prima volta, attivo questo semaforo che mi permette di
// nascondere i dati contenuti nelle sezioni "forzate"
if NOT(Parametri.NascondiCelleVuote)
...
}
}
//
// Conto quante sezioni ho stampato in totale
Parametri.NumeroCelleStampate := Parametri.NumeroCelleStampate + ONE
}
}
- Normalmente la funzione YPos viene letta all'interno degli eventi di formattazione della sezione (BeforeFormatting o AfterFormatting) per conoscere la posizione in cui è stata posizionata la sezione.
Ultima modifica: 06/10/2021 / Validità: da 6.7.2900