Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di nelsonblu
    Registrato dal
    Feb 2007
    Messaggi
    2,234

    [access] Query di selezione campo vuoto date

    Sto impazzendo!!!!
    HELP HELP HELP

    Allora......
    - Maschera con campo (formato data) non associato [Maschere]![INDICE]![dal] valore predefinito Null
    -Query RECORD con vari campi tra cui il campo [Data]

    Voglio che quando il campo [Maschere]![INDICE]![dal] è Null mi debba far vedere tutti i record della query RECORD altrimenti fa un'altra cosa...

    E' incredibile!! Mi interessa il caso VERO.
    IIf(IsNull([Forms]![indice]![dal]);Like #22/04/2009#;....) ---->SI FUNZIONA! Quindi l'iif sul null della maschera funziona.
    Ma sei io metto
    IIf(IsNull([Forms]![indice]![dal]);Like "*";....) ---->NON FUNZIONA, nessun record selezionato
    ovviamente solo Like "*" funziona perfettamente

    IIf(IsNull([Forms]![indice]![dal]);Between #01/01/1900# And #01/01/2100#;....) ---> NON funziona
    ovviamente Between #01/01/1900# And #01/01/2100# da solo funziona

    Il VERO dell Iif funziona solo con una data precisa, con gli intervalli non funziona!!
    Dove sbaglio????

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Ciao. Ti rispondo al volo perchè sta per iniziare il secondo tempo della juve.
    Non potresti fare un semplice controllo sul valore del campo e in base a quello generare la stringa SQL?

    se il campo è null
    strSQL = "select * from tabella "
    altrimenti
    strSQL = "select * from tabella where..."
    fine if
    eccetera

    edit. Visto che siamo sotto di due reti torno al forum.

    Sicuramente lo sai già ma fai attenzione a passare la data nel formato corretto.
    Una cosa tipo questa


    data > #" & Format(txtData, "mm/dd/yyyy") & "#"


  3. #3
    Utente di HTML.it L'avatar di nelsonblu
    Registrato dal
    Feb 2007
    Messaggi
    2,234
    niente nico... non ci riesco!
    esempio
    (free user per il donwload)

    Questo è un esempio del problema. Premendo il pulsante, con il campo giallo Null, la query mi deve dare tutti i record.

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Ma una cosa del genere non va bene?

    codice:
    Private Sub Comando5_Click()
    Dim strSQL As String
    If IsNull(Testo1) Then
        strSQL = "select * from tabella1"
    Else
        strSQL = "select * from tabella1 where data > #" & Format(Testo1, "mm/dd/yyyy") & "#"""
    End If
    MsgBox (strSQL)
    End Sub

  5. #5
    Utente di HTML.it L'avatar di nelsonblu
    Registrato dal
    Feb 2007
    Messaggi
    2,234
    Grazie Nico, come al solito mi dai sempre l'imbeccata giusta!
    Anche se la soluzione al problema mi interessava a livello di query dipendendo da questa in pratica tutto il database, il tuo suggerimento sul formato della data mi ha fatto fare bingo!

    Inserisco la soluzione nel caso servisse a qualcun altro.
    Il problema nella sua interezza è questo.

    Ho una maschera INDICE con due campi non associati [DAL] e [AL] in formato "Data in cifre"
    Ho un elenco di record nella tabella ELENCO che hanno un campo [DATA]
    Con una query voglio selezionare solo i record della tabella ELENCO che hanno il campo [DATA] compreso nei valori di [DAL] e [AL] della maschera INDICE ma, E SOPRATUTTO, mi debba selezionare TUTTI i record nela caso i valori di [DAL] e [AL] siano Null.
    La soluzione:

    codice:
    SELECT Elenco.Data, Elenco.nome 
    FROM Elenco WHERE (((Elenco.Data) Like IIf(IsNull([Maschere]![indice]![dal]),"*") Or (Elenco.Data) Like IIf(IsNull([Maschere]![indice]![al]),"*"))) 
    OR (((Elenco.Data)>=[Forms]![indice]![dal] And (Elenco.Data)<=[Forms]![indice]![al]));

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Mi fa piacere che abbia risolto. Ciao e buona giornata.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.