Visualizzazione Query se non vuota

di il
4 risposte

Visualizzazione Query se non vuota

Buongiorno a tutti,

Ho creato una sorta di alert in una maschera che mi indica se ci sono delle scadenze nella giornata odierna, il tutto funziona così:

Su una maschera, chiamata "proroghe", si inserisce una data di scadenza, se la data di scadenza corrisponde con la data odierna, verrà visualizzato all'apertura del database un messaggio di alert e verrà aperta una query in cui verranno indicati dei dati utili per quella scadenza (nome azienda etc.). Ora, il problema è uno, avendo molte date diverse da gestire (proprio come tipologie, posso avere data di prima scadenza, di seconda etc.) , vorrei fare in modo che la query venga aperta solo se non è vuota. Che codice dovrei usare? Il codice generale che sto utilizzando è questo:

Private Sub Form_Open(Cancel As Integer)
Dim x,etc etc As Integer

a = DCount("[Scadenza_prima]", "[QueryScadenza]", "[Scadenza_prima]=Date()")

If x > 0 Or y > 0 etc etc  Then

If MsgBox("Attenzione ci sono " & x + y + z + a + b + c + d + e + f & " scadenze. Vuoi visualizzarle?", vbYesNo, "AVVISO") = vbYes Then
DoCmd.OpenQuery "QScadenze", acViewNormal
End if
End if
End sub
Il codice funziona, ho tolto molte parti per non allungarlo, ma cosa devo inserire per far in modo di aprire una query solo se ci sono effettivamente dei dati all'interno? Grazie in anticipo

4 Risposte

  • Re: Visualizzazione Query se non vuota

    Intanto non si aprono le Query... MAI... l'interfaccia alla Query(o Vista) è uno strumento di Amministrazione e NON SI USA per l'interfaccia utente.
    Devi usare maschere magari in modalità Continua/FoglioDati in questo caso, ed in quel modo su OPEN potrai verificare se la Maschera ha Records leggendo il RecordCount del Recordset e, nel caso non ci siano Records, quindi RecordCount=0 forzi il parametro CANCEL dell'evento OPEN al valore True, gestendo poi l'errore lato codice chiamante per l'annullamento dell'apertura Form.

    Questo è il modo tecnicamente giusto di fare le cose.

    P.S.
    
    Dim x,etc etc As Integer
    Scritta così la dichiarazione delle variabili è ERRATA... [x] in quel modo è Variant.
  • Re: Visualizzazione Query se non vuota

    Io non ho capito come si chiama la query da controllare se vuota o non vuota. La chiamerò TuaQuery.
    If DCount("*", "TuaQuery") > 0 Then
    ---fai le operazioni che devi fare---
    End If
  • Re: Visualizzazione Query se non vuota

    OsvaldoLaviosa ha scritto:


    Io non ho capito come si chiama la query da controllare se vuota o non vuota. La chiamerò TuaQuery.
    If DCount("*", "TuaQuery") > 0 Then
    ---fai le operazioni che devi fare---
    End If
    Grazie mille!!! funziona!!
  • Re: Visualizzazione Query se non vuota

    Ilpreparatori ha scritto:


    OsvaldoLaviosa ha scritto:


    Io non ho capito come si chiama la query da controllare se vuota o non vuota. La chiamerò TuaQuery.
    If DCount("*", "TuaQuery") > 0 Then
    ---fai le operazioni che devi fare---
    End If
    Grazie mille!!! funziona!!
    Speriamo nessuno prenda spunto...
Devi accedere o registrarti per scrivere nel forum
4 risposte