Access malefico

Gorgia

Utente Attivo
10
0
SELECT Appartamenti.IdAppartamento, Appartamenti.nomeRapido, Max(ContoEconomico.data) AS [Data Ultimo Canone], ContoEconomico.Importo, tipiContoEconomico.causali, Contratti.canone, Contratti.giornoRicevimentoCanone, Contratti.mensilitàRicevimentoCanone, DateSerial(Year([ContoEconomico]![data]),Month([ContoEconomico]![data])+[mensilitàRicevimentoCanone],[giornoRicevimentoCanone]) AS DataRicevimentoAtteso
FROM (Appartamenti INNER JOIN (tipiContoEconomico INNER JOIN ContoEconomico ON tipiContoEconomico.id = ContoEconomico.idCausale) ON Appartamenti.IdAppartamento = ContoEconomico.idAppartamento) INNER JOIN Contratti ON Appartamenti.IdAppartamento = Contratti.idAppartamento
GROUP BY Appartamenti.IdAppartamento, Appartamenti.nomeRapido, ContoEconomico.Importo, tipiContoEconomico.causali, Contratti.canone, Contratti.giornoRicevimentoCanone, Contratti.mensilitàRicevimentoCanone, DateSerial(Year([ContoEconomico]![data]),Month([ContoEconomico]![data])+[mensilitàRicevimentoCanone],[giornoRicevimentoCanone]), Contratti.dataInizioContratto, Contratti.dataFineContratto
HAVING (((Max(ContoEconomico.data))<Date()) AND ((tipiContoEconomico.causali)="Canone Affitto") AND ((DateSerial(Year([ContoEconomico]![data]),Month([ContoEconomico]![data])+[mensilitàRicevimentoCanone],[giornoRicevimentoCanone]))<Date()) AND ((Contratti.dataInizioContratto)<Date()) AND ((Contratti.dataFineContratto)>Date()));
Ciao a tutti.
Il mio problema è che non riesco a fare funzionare il dateserial nell'espressione HAVING in quanto mi dà errore "tipo non corrispondente".
Aggiungo che:
- Il valore generato dal dateserial è perfetto
- Dateserial ritorna un tipo Date, come la funzione Date()
- Senza il dateserial nell'having tutto funziona.

Avete qualche idea o suggerimento?
Grazie
 
D

DaronK

Ospite
non ho molta conoscenza di access ma ho abbastanza esperienza su sql.. posso chiederti a cosa serve ![data]
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!