• User

    asp classico - query con function

    Ciao a tutti,
    ho una nuova domanda per voi esperti.

    Ho due tabelle di database:

    [IndiceCarrello]
    idUtente
    idCarrello
    stato
    data
    (qui c'è un record unico per ogni singolo carrello)

    [Carrello]
    idCarrello
    idUtente
    idOfferta
    quantita
    (qui possono esserci diversi record con identico idCarrello e idUtente)

    Ho la seguente funzione che ricava quanti articoli ci sono in ogni carrello chiuso (non ho riportato un'altra tabella, vCarrello, che fa il join tra IndiceCarrello, Carrello e Offerte):

    function totaliOfferte(IDcarrello)
    SQLtemp = "SELECT Count(*) FROM vCarrello WHERE IDcarrello = " & IDcarrello
    Set rsTmp = MyLogin.Execute(SQLtemp)
    totaliOfferte=rsTmp(0)
    set rsTmp = Nothing
    end function

    Ora, vorrei creare una ulteriore funzione che possa restituire direttamente il numero dei Carrelli Vuoti (cioè con numero di offerte pari a 0):
    Function contaCarrelliNulli
    SQLtemp = "SELECT Count(*) FROM IndiceCarrello WHERE** totaliOfferte**(IDcarrello)=0"
    Set rsTmp = MyLogin.Execute(SQLtemp)
    contaCarrelliNulli=rsTmp(0)
    set rsTmp = Nothing
    End Function

    Ho provato cioè a inserire la funzione totaliOfferte direttamente nella query, ma non funziona.
    Qualcuno mi sa dire cosa sbaglio?
    Forse non è possibile utilizzare una funzione in una query?

    Grazie
    Luca


  • User Attivo

    Le funzioni nelle query possono essere utilizzate, come dice questo post
    http://stackoverflow.com/questions/4413694/how-do-i-use-a-sql-function-inside-my-sql-query

    Che errore viene tornato?


  • User

    Questo è l'errore:
    Microsoft JET Database Engine (0x80040E14)
    Funzione 'totaliOfferte' non definita nell'espressione.