Query

di il
7 risposte

Query

Buongiorno,
sto cercando di creare un database per gestire i clienti che mi permetta di calcolare automaticamente l'età inserendo solo la data di nascita. Dopo aver trovato la data di nascita utilizzando: Ins((Date()-[datanascita])/365,25 vorrei dire al programma, forse utilizzando un somma se(?), di incrementare di +1 un determinato campo (il campo sarebbe "Npersonemaggiorenni"), se l'età calcolata è (per esempio) maggiore di 18.

Come dovrei fare? Servono due Query separate?
Grazie in anticipo

7 Risposte

  • Re: Query

    Ti basta una query con 2 campi aggiuntivi di calcolo. In uno calcoli l'Età. Nel secondo...non è chiaro se vuoi filtrare i >18 oppure vuoi segnalare un semplice Sì/No.
    Per calcolare l'Età esiste questa espressione:
    Età: DateDiff("aaaa";[DataNascita];Date())+(Format(Date();"mmgg")<Format([DataNascita];"mmgg"))
  • Re: Query

    Ciao!
    Mi spiego meglio, vorrei una query che, a seconda dell'età
    calcolata nella query precendente, mi incrementi di +1 il campo Npersonemaggiorenni (e che quindi mi conti le persone maggiorenni)
    Grazie
  • Re: Query

    Ti serve solo sapere quanti sono i maggiorenni?
  • Re: Query

    Esattamente
  • Re: Query

    Direi che hai 2 soluzioni:
    A) più facile:
    1. Fai la query con il campo calcolato Età come ho detto
    2. A Criterio in corrispondenza di Età, scrivi >=18 (direi che anche i 18enni sono maggiorenni...)
    3. Salva con nome la query Maggiorenni (questa query mostrerà solo i maggiorenni)
    4. Per sapere quanti sono, usa la funzione DCount("*";"Maggiorenni")

    B) più complessa (da capire...ma eviti la query)
    DCount("[DataNascita]";"NomeTuaTabella";<espressioneX>)
    là dove per espressioneX devi trovare (neanche io lo so fare) una espressione che funge da filtro analogo a quello della query Maggiorenni.
  • Re: Query

    Grazie!
  • Re: Query

    alerain ha scritto:


    Ciao!
    Mi spiego meglio, vorrei una query che, a seconda dell'età
    calcolata nella query precendente, mi incrementi di +1 il campo Npersonemaggiorenni (e che quindi mi conti le persone maggiorenni)
    Grazie
    Non mi trova d'accordo questa impostazione atteso che il raggiungimento della maggiore età è dinamico:
    la query deve contenere:
    -l'anno corrente
    -un campo deputato al calcolo
    -Un campo con una iif formulata così:
    -NrMaggiorenni:iif([CampoCalcolo]>=18;1;0)
    -Il Totale dei maggiorenni(per l'anno di competenza) è ricavabile nel piede di una maschera, oppure utilizzando un dsum in funzione dell'utilizzo.
    Saluti
Devi accedere o registrarti per scrivere nel forum
7 risposte