Newsgroup: it.comp.appl.access
Titolo: report e verifica ControlSource (2)

provo a riproporre il problema più chiaramente:
apro il report collegato alla tabella "Anagrafica"
nel report è presente la casella di testo "Fornitori"
la casella di testo "Fornitori" ha la proprietà origine controllo
(ControlSource) impostata sul campo "Fornitori"
la tabella viene creata prima di aprire il report e può  non avere il campo
"Fornitori", in tale caso all'apertura del report mi viene chiesto il
parametro mancante
è possibile sull'evento Report_Open del report testare la validità della
casella di testo, qualcosa simile:
if IsError(Me.Fornitori.ControlSource = "terzo") then
Me.Fornitori.ControlSource = ""
in modo da evitare la richesta del parametro
vorrei evitare soluzione più complesse quale ado, dao etc.
ciao

Liones <Lio...@Tin.it> wrote in message
aes26i$7rp$1...@pluto.news.dsi.unimi.it...

Ma che funzione ha il campo fornitori? Funge da gruppo? o è solo la
visualizzazione del contenuto?... e poi il campo fornitori si trova nella
tab Anagrafica o no?
--
Maurizio75

 visualizzazione del contenuto?
la seconda
... e poi il campo fornitori si trova nella tab Anagrafica o no?
???
è questo il problema devo testare se il campo si trova o meno nel
ControlSource del report,
la tabella è il risultato di alcune query e per ultimo di una a campi
incrociati
il campo fornitori può esserci o meno, se è presente su evento Report_Open
associo la casella al campo altrimente lascio la casella vuota
una cosa del tipo
if IsError(Me.Fornitori.ControlSource = "terzo") then ...
se non è possibile associare il campo (perche non esiste allora non viene
associato)
devo testare l'esistenza del campo
ciao


Capito... scusa se banalizzo, ma se dici che il souce è il ris. di query,
perchè la stessa non la rendi di creazione facendo confluire il risultato in
una tab. d'appoggio ogni volta che ti pare (quindi aggiornata) contenente
tutti i campi possibili per poi associare il report a questa tabella invece
che alla query?
--
Maurizio75

 che alla query?
mi scuso, sono stato generico ed impreciso
il report si basa su una serie di query di selezione, 1 query a campi
incrociati e 1 (o 2) query di creazione tabella
alla fine ho una tabella (proveniente dalla query a campi incorciati) così
formata:
righe sono le settimane
colonne sono i Punti Vendita
i punti d'incrocio indicano la somma d'importi
problema i punti vendita (quindi le colonne della tabella) possono variare
in funzione delle settimane lasciando la tabella del report senza campo
o  in qualche modo forzo la creazione di tutti i Punti Vendita (ma non
vorrei mettere le mani nell'insieme delle query)
o in fase di apertura report con ado/dao mi testo la tabella e
attivo/disattivo i campi
o ????
ciao


È una soluzione un po' così...
A fronte dell'evento su apertura del report
If Not IsNull(DLookup("Fornitori", "Anagrafica", _
    "Len([Fornitori]) >0")) Then
        Me.Fornitori.ControlSource = "Fornitori"
End If
Non imposta il controlsource sia se il campo è assente sia se è presente ma
in nessun record è compilato. Non è molto professionale... ma senza il
DAO...
Ciao
--
Alberto

 ciao
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 Roberto
aggiudicato
ciao e grazie