QUERY VUOTA

di Anonimizzato15772 il
11 risposte
Ciao a tutti,
ho creato una maschera con tre sottomaschere (Materiali, Manodopera e Altro).
Ogni sottomaschera deriva da una query ed ha nel piè maschera la somma della colonna Imponibile.
Nella maschera principale vengono richiamati tutti e tre i campi somma imponibile chiamati TOT1, TOT2 e TOT3
Tutto bene fino a quando le query sono popolate, ma se la query è vuota nel relativo campo TOT1/TOT2/TOT3 appare #Errore.
Quindi esiste una formula per dire che in caso di #Errore riporta 0?

Ho provato con
IIf(([Form]![Totale Altro]Is Null );0;([Form]![Totale Altro]))
Ma così ottengo #Tipo

11 Risposte

  • Forse mi sfugge qualcosa, ma prova così:
    IIf(DCount("*";"Nome query")=0;0;[Forms]![Nome maschera]![Totale Altro])
  • In questo mondo quando apro la maschere il sistema resta a "pensare" diversi minuti e alla fine ottengo ugualmente #errore
  • Io non ho capito dove sono situati i controlli...perchè non va la sintassi del 3° argomento IIf. Però penso certamente che si può sfruttare DCount. Prova anche ad anteporre = all'inizio dell'espressione IIf.
  • Quali controlli devo dirti dove sono?
  • caterebo ha scritto:


    Ogni sottomaschera deriva da una query ed ha nel piè maschera la somma della colonna Imponibile.
    Nella maschera principale vengono richiamati tutti e tre i campi somma imponibile chiamati TOT1, TOT2 e TOT3
    "Piè maschera" intendi in ogni sottomaschera oppure il piè pagina maschera principale?
  • Intendo in ogni sottomaschera
  • Se eseguo DCount nella sottomaschera non ottengo nessun valore...
  • Ti dico solo una serie di cose base da sapere, poi devi destreggiarti tu.
    Per fare riferimento al valore di un controllo che sta in una maschera si scrive
    [Form]![Nome maschera]![Nome controllo].Value

    Per fare riferimento al valore di un controllo che sta in una sottomaschera si scrive
    [Form]![Nome maschera]![Nome sottomaschera].Form![Nome controllo].Value

    (.Value è facoltativo)

    DCount conta i record di una tabella/query. La DCount che ti ho suggerito unita a IIf va interpretata così:
    Se il numero di record nella "Nome query" è 0 (ossia la query vuota), scrivi 0, altrimenti una di quelle sintassi che ho scritto prima [Forms]! che dovrebbe restituirti il valore reale.
  • Io uso il generatore di espressioni e non dovrebbe sbagliare riferimento.
    l'espressione IIF che hai scritto l'ho capita ma non capisco perché non funziona...
  • Aspetta...forse mi assale un grande dubbio. Ma prima di scriverci la IIf, "lì dentro" cosa ci avevi scritto?
  • Prima avevo messo il riferimento diretto alla somma colonna imponibile nel piè sottoreport.
Devi accedere o registrarti per scrivere nel forum
11 risposte