Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    244

    parentesi chiusa in eccesso

    ho un problema su una parte di codice mi da il seguente errore
    Errore di run-time '3075'
    Parentesi chiusa in eccessonell'espressione della query
    '(((Scuola)=")AND((Sezione)=")AND((Classe)=)AND((A nno)=2003))'


    un aiutino?

    l'errore me lo da solo con il 2003 con il 2001 no :master:

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    244

    vi posto la riga dove da il debug

    codice:
    szCriteria = "SELECT [Tabella Piano Conti Annuale].* FROM [Tabella Piano Conti Annuale] " & _
    "WHERE (((Scuola)='" & rstStudents!Scuola & "') " & _
    "AND ((Sezione)='" & rstStudents!Sezione & "') " & _
    "AND ((Classe)=" & rstStudents!Classe & ") " & _
    "AND ((Anno)=" & [Form_Scheda Piano Conti Master].txtAnno & "));"

    mi potreste aiutare che non lho fatto io questo programma?


  3. #3
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449

    Re: vi posto la riga dove da il debug

    Originariamente inviato da BOYROMA1
    codice:
    szCriteria = "SELECT [Tabella Piano Conti Annuale].* FROM [Tabella Piano Conti Annuale] " & _
    "WHERE (((Scuola)='" & rstStudents!Scuola & "') " & _
    "AND ((Sezione)='" & rstStudents!Sezione & "') " & _
    "AND ((Classe)=" & rstStudents!Classe & ") " & _
    "AND ((Anno)=" & [Form_Scheda Piano Conti Master].txtAnno & "));"

    mi potreste aiutare che non lho fatto io questo programma?

    visto che le condizioni sono tutte in AND puoi eliminare un sacco di parentesi
    codice:
    szCriteria = "SELECT [Tabella Piano Conti Annuale].* FROM [Tabella Piano Conti Annuale] " & _
    "WHERE Scuola='" & rstStudents!Scuola & "' " & _
    "AND Sezione='" & rstStudents!Sezione & "' " & _
    "AND Classe=" & rstStudents!Classe & " " & _
    "AND Anno=" & [Form_Scheda Piano Conti Master].txtAnno & ";"
    S'i fosse foco, arderei 'l mondo

  4. #4
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    Parentesi chiusa in eccessonell'espressione della query
    '(((Scuola)=")AND((Sezione)=")AND((Classe)=)AND((A nno)=2003))'
    (Classe)=)? manca un valore dopo =
    S'i fosse foco, arderei 'l mondo

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    244

    vi posto il codice intero

    codice:
    
    Function LinkStudentsToNewYear() As Integer
        Dim dbs As Database, rstNewYear As Recordset, rstStudents As Recordset, rstBetween As Recordset
        Dim szCriteria As String
        
        'Restituisce il riferimento al database corrente.
        Set dbs = CurrentDb
        'Apro il recordset degli studenti
        Set rstStudents = dbs.OpenRecordset("SELECT [Tabella Alunni].* FROM [Tabella Alunni] WHERE ((([Tabella Alunni].ExAlunno)<>True))", dbOpenDynaset, dbReadOnly, dbReadOnly)
        'Apro il recordset dei conti degli alunni
        Set rstBetween = dbs.OpenRecordset("Tabella Conti Alunni", dbOpenDynaset, dbConsistent, dbPessimistic)
        'Ciclo degli studenti
        Do Until rstStudents.EOF
            'Criterio di query
            szCriteria = "SELECT [Tabella Piano Conti Annuale].* FROM [Tabella Piano Conti Annuale] " & _
     "WHERE (((Scuola)='" & rstStudents!Scuola & "') " & _
     "AND ((Sezione)='" & rstStudents!Sezione & "') " & _
     "AND ((Classe)=" & rstStudents!Classe & ") " & _
     "AND ((Anno)=" & [Form_Scheda Piano Conti Master].txtAnno & "));"
            'Apro la tabella del piano dei conti annuale
            Set rstNewYear = dbs.OpenRecordset(szCriteria, dbOpenDynaset, dbReadOnly, dbReadOnly)
            'Ciclo del nuovo anno
            Do Until rstNewYear.EOF
                'Aggiungo un record
                rstBetween.AddNew
                'Valori del record
                rstBetween!IDAlunno = rstStudents!IDAlunno
                rstBetween!IDPianoConti = rstNewYear!IDPianoConti
                rstBetween!Dovuto = rstNewYear!Dovuto
                rstBetween!DovutoEuro = rstNewYear!DovutoEuro
                'Memorizzo le modifiche
                rstBetween.Update
                'Prossimo record
                rstNewYear.MoveNext
            Loop
            'Chiudo la tabella del piano dei conti annuale
            rstNewYear.Close
            'Record successivo
            rstStudents.MoveNext
        Loop
        'Chiudo i recordset
        rstStudents.Close
        rstBetween.Close
        'Chiudo il riferimento al database
        Set dbs = Nothing
        'Tutto ok
        LinkStudentsToNewYear = True
    End Function

  6. #6
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    fai un'esecuzione passo passo e controlla se rstStudents!Classe ha un valore non nullo quando esegui la Select
    S'i fosse foco, arderei 'l mondo

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    244

    PULTROPPO

    pultroppo non uso vba devo correggere lerrore fatto da unaltro programmatore e non so nemmeno come funziona il programma


  8. #8
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    il debug c'è anche in vb.
    S'i fosse foco, arderei 'l mondo

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    244

    tutti 4 nulli

    mi da tutti e 4 null
    sia scuola sezione classe anno

  10. #10
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    metti
    codice:
     if not isnull(rstStudents!Scuola) and _
        not isnull(rstStudents!Sezione) and _
        not isnull(rstStudents!Classe) and _
        not isnull([Form_Scheda Piano Conti Master].txtAnno ) then 
         szCriteria =....
           .
           .
           .
    
         rstNewYear.Close
       endif 
       'Record successivo
       rstStudents.MoveNext
    così eviti di fare una select con condizioni che assumono valore nullo sempre che la select non sia fatta proprio per trovare i record con valori nulli.
    S'i fosse foco, arderei 'l mondo

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.