Acces:Problema numerazione progressiva in report!

mercoledì 06 luglio 2005 - 17.43

bud Profilo | Newbie

Ciao di nuovo a tutti,

devo mettere a fianco ad ogni record stampato in un report un numero
progressivo che parte da 1 e non il contatore della tabella!!
L'ho gia' fatto un'altra volta senza problemi:

dim a as integer

Private Sub Corpo_Format(Cancel as integer, FormatCount as integer)
a=a+1
Testo25=a

End Sub

(dove Testo25 e' una textbox messa apposta nel corpo del report x
visualizzarmi il valore)

Ora il problema e' che questa volta il valore invece che partirmi da 1,
parte da un numero qualsiasi tipo 2404...senza un apparente
motivo!! Sapete spiegarmi...e meglio ancora come si inizializza il valore 0 inizialmente alla variabile "a" e in che posizione devo scriverlo??

Grazie saluti

Cteniza Profilo | Guru

Dove inizializzare un valore?
dipende dallo "scope" della variabile, per una variabile locale subito dopo il dim, per una variabile con scope maggiore sul primo evento (init, load) disponibile.


bud Profilo | Newbie

Scusa l'ignoranza...ma se metto l'inizializzazione (a=0) dopo la dichiarazione(dim) e quindi prima della funzione mi da errore di Run Time in fase di debug dicendomi che non posso assegnare un valore all'oggetto!!
Pero' logicamente dovrebbe andare li' o sbaglio?'Se la mettessi dentro la funzione avrei nel report sempre lo stesso numero per ogni record perche' ovviamente si reinizializza ogni volta!!

Dov'e' l'errore??

Grazie intanto

Cteniza Profilo | Guru

Se ti dà errore vuol dire che la variabile è dichiarata nel posto sbagliato oppure non hai messo l'inizializzazione al posto giusto.
Scrivere ad esempio:
Dim ...
campo = 0
può causare un errore perchè l'istruzione di assegnazione va posta in un punto che è eseguito una sola volta (usa un evento sul report_activate, report_open) esempio:

Private Sub Report_Activate()
'metti qui la tua inizializzazione
End Sub

Private Sub Report_Open(Cancel As Integer)
'metti qui la tua inizializzazione
End Sub

Cteniza Profilo | Guru

Naturalmente devi inserire l'inizializzazione solo su uno degli eventi, su entrambi non serve a niente!


bud Profilo | Newbie

Ho fatto come mi dicevi,inizializzato la variabile su uno dei due eventi del report che mi suggerivi...ma il problema e' che non si reinizializza,infatti continua a partirmi da un numero(1208,mi sembra,sempre lo stesso) che non so da dove esca fuori,ma ancora piu' grave non trovo il modo di riportarlo a 0!!!
Conosci una soluzione?
Sbaglio in qualche cosa?

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