Newsgroup: it.comp.appl.access
Titolo: impaginazione report particolare

Ciao a tutti,
Access97
Ho una tabella con due campi:
ora_suppl      docente_suppl
1�                    FANCIULLO
3�                    TOMA
5�                    ZINNI
In un report vorrei avere questa struttura
disegnata con rettangoli dentro ai quali
ci sono i campi
 ora_suppl        docente_supplente
---------------- ----------------------------------
|  1�            |    FANCIULLO                              |
--------------------------------------------------
|   2�           |                                                        |
---------------------------------------------------
|   3�           |     TOMA                                        |
---------------------------------------------------
|    4�         |                                                         |
---------------------------------------------------
|   5�          |     ZINNI                                          |
---------------------------------------------------
|   6�          |                                                         |
---------------------------------------------------
di fatto mi serve una struttura fissa con le sei ore
poi dentro i record piazzati a seconda dell'ora.
Siccome nella tabella non � presente la seconda ora
di supplenza nel report dovrei avere uno spazio
vuoto nel campo docente supplente.
Non so proprio come iniziare. Mi serve
almeno una indicazione su come partire.
Grazie in anticipo

 almeno una indicazione su come partire.
Se capisco bene puoi crearti una tabella che chiami p.e.
"tbl_ora_suppl_possibile" con un solo campo "ora_suppl_possibile"
con un record per ogni ora che puo succede.
1�
2�
3�
4�
5�
6�
7�
...
Poi fai una query con tutte e due tabelle e collega le tabelle tramitte
le due campi [ora_suppl_possibile] e [ora_suppl]. Fai doppio click
sulla linea di collegamento e scegli la versione che ti mostra tutti
record della tabella tbl_ora_suppl_possibile e solo quelli della
tabella....
Scegli i campi che vuoi mostrare e usa la query come origine
dati del report.
-- 
Servus
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: 
http://www.donkarl.com
  +  Anmeldung und Info zur
Access-Entwickler-Konferenz (AEK12), Oktober 2009, N�rnberg 

 Grazie in anticipo
Ciao, è più facile farlo che dirlo. Guarda questa demo che ho fatto,
scaricalo da questi link
http://myfreefilehosting.com/f/acbf79b870_0.11MB
Ciao
Alberto

 ha scritto nel messaggio 
news:7j61rpF...@mid.individual.net...

Danke Schoen Karl,
ich denke das deine eine gute Idee ist. Ich probiere sofort.
Ich antworte dir kurz auf deutsch weil du so nett bist.

 Grazie in anticipo
Ciao, � pi� facile farlo che dirlo. Guarda questa demo che ho fatto,
scaricalo da questi link
http://myfreefilehosting.com/f/acbf79b870_0.11MB
Ciao
Alberto
Ciaoo grazie, � pazzesca come soluzione. Chi ci sarebbe mai arrivato????
Posso chiederti perch� se questo codice :
Private Sub Pi�DiPaginaReport_Print(Cancel As Integer, PrintCount As 
Integer)
o1 = ora1
o2 = ora2
o3 = ora3
o4 = ora4
o5 = ora5
o6 = ora6
End Sub
lo metto in :
Private Sub IntestazioneReport_Print(Cancel As Integer, PrintCount As 
Integer)
o1 = ora1
o2 = ora2
o3 = ora3
o4 = ora4
o5 = ora5
o6 = ora6
End Sub
non funziona?? Non mi spiego perch� funziona solo nel pi� di pagina report.
Forse che il pi� di pagina viene formattato per ultimo ??
Grazie se mi rispondi 

 Grazie se mi rispondi
Ciao,
le varie fasi intestazione xxx, corpo, piè di pagina, ecc.
identificano delle fasi di lettura della tabella/query origine dei
dati.
Il piè di pagina report è l'ultima fase.
In questo caso specifico è solo dopo aver letto tutti i records
(corpoo)
che avrò assegnato il valore a tutte le variabili.
Se non sono stato abbastanza chiaro fammelo sapere che cercherò di
esserlo.
Ciao
Alberto

 Grazie se mi rispondi
Segue risposta
lo metto in :
Private Sub IntestazioneReport_Print(Cancel As Integer, PrintCount As
Integer)
o1 = ora1
o2 = ora2
o3 = ora3
o4 = ora4
o5 = ora5
o6 = ora6
End Sub
non funziona?? Non mi spiego perché funziona solo nel piè di pagina
report.
perchè l'intestazione report è la prima fase. In quel momento i dati
non sono ancora stati letti.
Chiaro ?
Alberto

 Grazie se mi rispondi
Segue risposta
lo metto in :
Private Sub IntestazioneReport_Print(Cancel As Integer, PrintCount As
Integer)
o1 = ora1
o2 = ora2
o3 = ora3
o4 = ora4
o5 = ora5
o6 = ora6
End Sub
non funziona?? Non mi spiego perch� funziona solo nel pi� di pagina
report.
perch� l'intestazione report � la prima fase. In quel momento i dati
non sono ancora stati letti.
Chiaro ?
Alberto
Grazie ho capito...........ciao 

 Grazie se mi rispondi
Segue risposta
lo metto in :
Private Sub IntestazioneReport_Print(Cancel As Integer, PrintCount As
Integer)
o1 = ora1
o2 = ora2
o3 = ora3
o4 = ora4
o5 = ora5
o6 = ora6
End Sub
non funziona?? Non mi spiego perch� funziona solo nel pi� di pagina
report.
perch� l'intestazione report � la prima fase. In quel momento i dati
non sono ancora stati letti.
Chiaro ?
Alberto
Ciao Alberto,
spero leggerai questa risposta.
Ho un problema, passo ad un nuovo record le caselle
nella pi� di pagina riportano il valore del record precedente.
Come posso fare ad azzerarle???
grazie 

 grazie
Scusa il ritardo, ti leggo solo ora, mi era sfuggito di mettere:
ora1= null
.
.
ora6=null
nell'intestazione del gruppo.
Il senso è: prima di iniziare un nuovo gruppo (data ?) devi azzerare
le variabili che sono state utlizzate per il gruppo precedente.
Ciao
Alberto


ciao Alberto,
niente da fare dovunque metta il codice di azzeramento
delle variabili queste non vengono azzerate.
Nel mio report non c'� una intestazione gruppo
in quanto � un sotto reporto quindi prende
l'ID del report padre.
Ma io ora provo ad allegarti il codice, speriamo che sia
leggibile. Tu potrai vedere dove ho inserito il codice
di azzeramento
Option Compare Database
Option Explicit
Dim CLASSE1 As String
Dim CLASSE2 As String
Dim CLASSE3 As String
Dim CLASSE4 As String
Dim CLASSE5 As String
Dim CLASSE6 As String
Dim CLASSE7 As String
Dim CLASSE8 As String
Dim CLASSE9 As String
Dim CLASSE10 As String
Dim SUP1 As String 'docente supplente
Dim SUP2 As String
Dim SUP3 As String
Dim SUP4 As String
Dim SUP5 As String
Dim SUP6 As String
Dim SUP7 As String
Dim SUP8 As String
Dim SUP9 As String
Dim SUP10 As String
Dim NOTE1 As String
Dim NOTE2 As String
Dim NOTE3 As String
Dim NOTE4 As String
Dim NOTE5 As String
Dim NOTE6 As String
Dim NOTE7 As String
Dim NOTE8 As String
Dim NOTE9 As String
Dim NOTE10 As String
Private Sub Corpo_Format(Cancel As Integer, FormatCount As Integer)
Select Case (Me.ORA)
Case Is = "1�"
 CLASSE1 = Me.CLASSE
 SUP1 = Me.DOCENTE_SUP
 NOTE1 = Me.NOTE
 Case Is = "2�"
 CLASSE2 = Me.CLASSE
 SUP2 = Me.DOCENTE_SUP
 NOTE2 = Me.NOTE
 Case Is = "3�"
 CLASSE3 = Me.CLASSE
 SUP3 = Me.DOCENTE_SUP
 NOTE3 = Me.NOTE
 Case Is = "4�"
 CLASSE4 = Me.CLASSE
 SUP4 = Me.DOCENTE_SUP
 NOTE4 = Me.NOTE
 Case Is = "5�"
 CLASSE5 = Me.CLASSE
 SUP5 = Me.DOCENTE_SUP
 NOTE5 = Me.NOTE
 Case Is = "6�"
 CLASSE6 = Me.CLASSE
 SUP6 = Me.DOCENTE_SUP
 NOTE6 = Me.NOTE
 Case Is = "7�"
 CLASSE7 = Me.CLASSE
 SUP7 = Me.DOCENTE_SUP
 NOTE7 = Me.NOTE
 Case Is = "8�"
 CLASSE8 = Me.CLASSE
 SUP8 = Me.DOCENTE_SUP
 NOTE8 = Me.NOTE
 Case Is = "9�"
 CLASSE9 = Me.CLASSE
 SUP9 = Me.DOCENTE_SUP
 NOTE9 = Me.NOTE
 Case Is = "10�"
 CLASSE10 = Me.CLASSE
 SUP10 = Me.DOCENTE_SUP
 NOTE10 = Me.NOTE
End Select
End Sub
Private Sub IntestazioneReport_Format(Cancel As Integer, FormatCount As 
Integer)
Me.C1 = Null 'CLASSE
Me.C2 = Null
Me.C3 = Null
Me.C4 = Null
Me.C5 = Null
Me.C6 = Null
Me.C7 = Null
Me.C8 = Null
Me.C9 = Null
Me.C10 = Null
Me.D1 = "" ' docente supplente
Me.D2 = ""
Me.D3 = ""
Me.D3 = ""
Me.D4 = ""
Me.D5 = ""
Me.D6 = ""
Me.D7 = ""
Me.D8 = ""
Me.D9 = ""
Me.N1 = "" 'note
Me.N2 = ""
Me.N3 = ""
Me.n4 = ""
Me.N5 = ""
Me.N6 = ""
Me.N7 = ""
Me.N8 = ""
Me.N9 = ""
Me.N10 = ""
End Sub
Private Sub Pi�DiPaginaReport_Format(Cancel As Integer, FormatCount As 
Integer)
Me.C1 = Null 'CLASSE
Me.C2 = Null
Me.C3 = Null
Me.C4 = Null
Me.C5 = Null
Me.C6 = Null
Me.C7 = Null
Me.C8 = Null
Me.C9 = Null
Me.C10 = Null
Me.D1 = "" ' docente supplente
Me.D2 = ""
Me.D3 = ""
Me.D3 = ""
Me.D4 = ""
Me.D5 = ""
Me.D6 = ""
Me.D7 = ""
Me.D8 = ""
Me.D9 = ""
Me.N1 = "" 'note
Me.N2 = ""
Me.N3 = ""
Me.n4 = ""
Me.N5 = ""
Me.N6 = ""
Me.N7 = ""
Me.N8 = ""
Me.N9 = ""
Me.N10 = ""
End Sub
Private Sub Pi�DiPaginaReport_Print(Cancel As Integer, PrintCount As 
Integer)
Me.C1 = Null 'CLASSE
Me.C2 = Null
Me.C3 = Null
Me.C4 = Null
Me.C5 = Null
Me.C6 = Null
Me.C7 = Null
Me.C8 = Null
Me.C9 = Null
Me.C10 = Null
Me.D1 = "" ' docente supplente
Me.D2 = ""
Me.D3 = ""
Me.D3 = ""
Me.D4 = ""
Me.D5 = ""
Me.D6 = ""
Me.D7 = ""
Me.D8 = ""
Me.D9 = ""
Me.N1 = ""
Me.N2 = ""
Me.N3 = ""
Me.n4 = ""
Me.N5 = ""
Me.N6 = ""
Me.N7 = ""
Me.N8 = ""
Me.N9 = ""
Me.N10 = ""
Me.C1 = CLASSE1
Me.C2 = CLASSE2
Me.C3 = CLASSE3
Me.C4 = CLASSE4
Me.C5 = CLASSE5
Me.C6 = CLASSE6
Me.C7 = CLASSE7
Me.C8 = CLASSE8
Me.C9 = CLASSE9
Me.C10 = CLASSE10
Me.D1 = SUP1 ' docente supplente
Me.D2 = SUP2
Me.D3 = SUP3
Me.D3 = SUP3
Me.D4 = SUP4
Me.D5 = SUP1
Me.D6 = SUP1
Me.D7 = SUP1
Me.D8 = SUP1
Me.D9 = SUP1
Me.N1 = NOTE1
Me.N2 = NOTE2
Me.N3 = NOTE3
Me.n4 = NOTE4
Me.N5 = NOTE5
Me.N6 = NOTE6
Me.N7 = NOTE7
Me.N8 = NOTE8
Me.N9 = NOTE9
Me.N10 = NOTE10
End Sub

Ciao, scusami sono stato assente per vari giorni.
Se non hai ancora risolto prova così (con riferimento alla mia demo)
Private Sub PièDiPaginaReport_Print(Cancel As Integer, PrintCount As
Integer)
o1 = ora1
o2 = ora2
o3 = ora3
o4 = ora4
o5 = ora5
o6 = ora6
ora1=""
.
.
ora6=""
End Sub
Se vuoi, puoi postare l'applicazione e gli do un'occhiata
Ciao
Alberto