Discussione chiusa
Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Applyfilter con openform non funzionante

  1. #1
    eleuteros non è in linea Novello
    Post
    5

    Applyfilter con openform non funzionante

    Salve a tutti.
    Sono a chiedere il vostro gentile supporto per una problematica molto strana.
    Ho creato una form che all'apertura (grazie ad una Selection in vba inserita nell'evento open e ad un applyfilter nella medesimo evento open) va a filtrare i record di una tabella sulla base di una lunga serie di condizioni.
    Il punto è che se apro direttamente la form da access (in pratico faccio due click sul simbolo del form nell'elenco degli oggetti access) allora esso funziona perfettamente. Se invece apro la form da un altra form tramite un comando VBA openform allora ottengo un errore di Runtime.
    A seguire i dettagli:
    [
    Ecco il codice inserito nell'evento on Open della form con i record da filtrare:
    codice:
    Private Sub Form_Open(Cancel As Integer)
    
    Dim z As String, msg As String, risposta As String
    
    z = "SELECT ID_MANOVRA, DATA, LINEA, TIPOMANOVRA, CODICEPRODOTTO, TK, MANOVRAINVIATA, ORAINVIATA, MANOVRARICEVUTA,ORARICEZIONE, MANOVRAEFFETTUATA, ORAEFFETTUAZIONE FROM TblInputRunning WHERE ((((DATA) >= (dATE()-4)) AND RICHIEDENTE = 'FILLING' AND MANOVRAEFFETTUATA = FALSE AND MANOVRAINVIATA = TRUE) OR (DAY(DATA) = DAY(NOW()) AND (ORAEFFETTUAZIONE >= DateAdd('h',-2, Now())) AND RICHIEDENTE = 'FILLING' AND MANOVRAINVIATA = TRUE AND MANOVRAEFFETTUATA = TRUE)) ORDER BY DATA;"
    
    DoCmd.ApplyFilter z
    
    Exit Sub

    Questo invece il codice che richiama l'apertura della form:

    codice:
    Private Sub cmdManovre_Click()
    
    DoCmd.OpenForm "frmViewFilling_Inviate"
    
    Exit Sub

    Per ulteriore info, temendo un errore nella sintassi della SELECTION (soprattutto per le date) ho fatto un test con una condizione unica e senza date ( che riporto di seguito), ma nulla è cambiato avendo lo stesso comportamento (tutto funziona aprendolo manualmente con 2 click, non funziona se lo avvio dall'altra form.

    codice:
    z = "SELECT ID_MANOVRA, DATA, RICHIEDENTE, LINEA, TIPOMANOVRA, CODICEPRODOTTO, TK, MANOVRAINVIATA, ORAINVIATA, MANOVRARICEVUTA, ORARICEZIONE, MANOVRAEFFETTUATA, ORAEFFETTUAZIONE, MANOVRAANNULLATA, ORAANNULLAMENTO, STATUS FROM TblManovre WHERE MANOVRAINVIATA = TRUE;"
    Infine, il messaggio di errore che ottengo è:

    Runtime 2046 - The command or action "applyfilter"is not availbale now

    Ho usato già in altri database questo schema, senza avere mai problemi prima.

    Qualcuno sarebbe così gentile da darmi qualche idea?

    Grazie mille
    Ciao

  2. #2
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    15,808
    CROSSPOST.
    Leggi il regolamento qui non è tollerato.
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

Discussione chiusa

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi