Data progressiva

di il
3 risposte

Data progressiva

In un database ho una tabella con sole date.
Partono dal 10/01/2016. Nelle proprietà di campo in corrispondenza di "valido se" ho messo >= #10/01/2016# e questo serve per dire che le date partono dal 10 gennaio 2016, però ho bisogno che non sia possibile inserire nei records successivi una data precedente al 11/01/2016.
Cioè la sequenza deve andare sempre avanti, semmai con le date uguali.
Esempio di sequenza esatta:
10/01/2016
11/01/2016
12/01/2016
13/01/2016

Esempio di sequenza errata:
10/01/2016
11/01/2016
12/01/2016
11/01/2016 (errore)

Come si può fare ?

3 Risposte

  • Re: Data progressiva

    Intanto se anche hai messo il Limite minimo, serve a poco in termini di Validazione, l'utente riceve l'errore STANDARD di Acecss... dovresti realizare nella Form una gestione errori..., intercettare l'errore in questione e, generare il Messaggio idoneo a seconda del caso specifico.

    Passiamo oltre...
    Ora hai cambiato lo scenario aggiungendo che la data, oltre ad essere>DataMIN deve essere >UltimaData

    Conseguenza il criterio di Validazione INIZIALE non serve più a nulla.

    Di conseguenza, io fossi in te, farei una VALIDAZIONE DATI su inserimento... andando a rileggere il DMAX(....) del campo Data...
    Dovrai testare il Before(Update/Insert...) in modo da forzare il Parametro CANCEL in caso non sia soddisfatto il criterio.
  • Re: Data progressiva

    @Alex ha scritto:


    Di conseguenza, io fossi in te, farei una VALIDAZIONE DATI su inserimento... andando a rileggere il DMAX(....) del campo Data...
    Dovrai testare il Before(Update/Insert...) in modo da forzare il Parametro CANCEL in caso non sia soddisfatto il criterio.
    Nella maschera dove ho il campo data, devo inserire la funzione DMax ?
    Questa data progressiva la posso gestire con una macro o il VBA ?
  • Re: Data progressiva

    ProgrammD ha scritto:


    @Alex ha scritto:


    Di conseguenza, io fossi in te, farei una VALIDAZIONE DATI su inserimento... andando a rileggere il DMAX(....) del campo Data...
    Dovrai testare il Before(Update/Insert...) in modo da forzare il Parametro CANCEL in caso non sia soddisfatto il criterio.
    Nella maschera dove ho il campo data, devo inserire la funzione DMax ?
    Questa data progressiva la posso gestire con una macro o il VBA ?
    Puoi generare un DefaultValue sulla Data Progressiva usando DMAX... oppure su BeforeUpdate controllare la validità dell'inserimento e, nel caso non sia coerente forzi CANCEL=TRUE ed annulli l'evento di Update...
Devi accedere o registrarti per scrivere nel forum
3 risposte