Queries

2.25 Come far riferimento ad una variabile globale in una query
  Alessandro Baraldi

In una query non è possibile far riferimento direttamente ad una variabile globale definita in un modulo standard del database.
E' però possibile richiamare da una query una funzione definita dall'utente e contenuta in un modulo standard del database.
Da quanto scritto sopra si desume che si può indirettamente far riferimento ad una variabile globale in una query richiamando nella query una funzione definita dall'utente la quale si autoassegna il valore della variabile globale.
Quindi, se in un modulo standard del database si genera il seguente codice VBA:
Option Compare Database
Option Explicit

Public m_nAcctYear As Integer

Public Function setAcctYear(nYear As Integer)
   m_nAcctYear = nYear
End Function

Public Function getAcctYear( ) As Integer
   getAcctYear = m_nAcctYear
End Function
una query che deve far riferimento alla variabile pubblica m_nAcctYear avrà un codice SQL simile a questo:
SELECT *
FROM Vendite
WHERE (Vendite.AcctYear = getAcctYear( ))

Ovviamente questa tecnica permette di usare variabili globali impostando il loro valore con la funzione setAcctYear(...) e facendo riferimento al loro valore tramite la funzione getAcctYear().


Se pensate di avere del materiale freeware interessante e volete pubblicarlo, allora leggete qui.