Condividi tramite

Messaggio di avviso "tot giorni prima" della scadenza all'apertura di un Report.

Anonimo
2022-09-06T06:43:30+00:00

Buongiorno a tutti.

Ho creato un Report su questa query:

SELECT TblAnagrafica.Matricola, TblAnagrafica.Grado, TblAnagrafica.Cognome, TblAnagrafica.Nome, TblFamiliari.Tipo_Parentela, TblFamiliari.Cognome, TblFamiliari.Nome, TblFamiliari.DecAffido, TblFamiliari.FineAffido, TblArrivo_Partenza.Gruppo_Assegnazione, TblSezioni_Nucleo.Sezioni_Nucleo, DateDiff("d",[FineAffido],Date()) AS ScadenzaAffido

FROM (TblAnagrafica INNER JOIN TblFamiliari ON TblAnagrafica.ID_Anagrafica = TblFamiliari.ID_Anagrafica) INNER JOIN (TblSezioni_Nucleo INNER JOIN TblArrivo_Partenza ON TblSezioni_Nucleo.ID_Sezioni = TblArrivo_Partenza.Articolazione_Assegnazione) ON TblAnagrafica.ID_Anagrafica = TblArrivo_Partenza.ID_Anagrafica

WHERE (((TblFamiliari.DecAffido) Is Not Null) AND ((TblAnagrafica.In_Forza)=True));

La query contiene questo campo su cui basare, all'apertura del Report, un messaggio di avviso ( almeno 30 gg. prima della scadenza reale) che mi dica per esempio:

Mancano 30 gg alla scadenza della Fine dell'Affido e cosi via fino alla data indicata come scadenza affido.

Ho provato, seguendo una simile discussione sul forum, basandomi sul codice di Mimmo Laurenza, ad ottenere il risultato sperato con il codice seguente, ma qualcosa non va.

Non ottengo il risultato sperato ed il codice va in errore in questa riga in rosso:

Chiedo il vostro aiuto per poter ottenere quanto richiesto.

Ringrazio chi mi aiuta in questo.

Ciao, Nicola.

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

2 risposte

Ordina per: Più utili
  1. Anonimo
    2022-09-06T14:44:37+00:00

    Grazie sig. Karl per il suo cortese riscontro e per la sua preziosissima presenza sul forum.

    Dopo tante prove, sono riuscito a far funzionare il tutto nel modo seguente:

    Private Sub cmdaffido_Click()

    On Error GoTo Err_cmdaffido_Click

    Dim x As Integer

    x = DCount("[FineAffido]", "[QueryFigliMinoriAffido]", "[FineAffido]<=Date()+25")

    If x > 0 Then

        If MsgBox("Attenzione ci sono " & x & "  scadenze. Vuoi visualizzarle?", vbYesNo, "AVVISO") = vbYes Then 
    
           DoCmd.OpenReport "ReportFigliMinoriAffido", acViewPreview 
    
        End If 
    

    ElseIf x = 0 Then

    If MsgBox("Non ci sono scadenze imminenti per Figli minori in Affido." & vbCrLf & \_ 
    
             "Vuoi Aprire lo stesso il Report per verificare le date di scadenza?.", vbInformation + vbDefaultButton2 + vbYesNo) = vbNo Then 
    
    Exit Sub 
    
         Else 
    
    DoCmd.OpenReport "ReportFigliMinoriAffido", acViewPreview 
    
    End If 
    

    End If

    Exit_cmdaffido_Click:

    Exit Sub 
    

    Err_cmdaffido_Click:

    MsgBox Err.Description 
    
    Resume Exit\_cmdaffido\_Click 
    

    End Sub

    Ciao, Nicola

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2022-09-06T14:24:46+00:00

    Salve,

    Non sono sicuro di cosa vuoi ottenere, ma se capisco bene la riga rossa, puoi provare:

    x = DCount("*", "TblFamiliari", "ScadenzaAffido<=Date()+30")

    Servus

    Karl

    La risposta è stata utile?

    0 commenti Nessun commento